import akka.actor.ActorRef;
import akka.serialization.JavaSerializer;
import akka.serialization.Serialization;
-import com.google.common.annotations.Beta;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import javax.annotation.Nonnull;
+import java.io.Serial;
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.yangtools.concepts.WritableIdentifier;
/**
* Abstract Externalizable proxy for use with {@link Request} subclasses.
*
- * @author Robert Varga
- *
* @param <T> Target identifier type
*/
-@Beta
public abstract class AbstractRequestProxy<T extends WritableIdentifier, C extends Request<T, C>>
extends AbstractMessageProxy<T, C> {
+ @Serial
private static final long serialVersionUID = 1L;
+
private ActorRef replyTo;
protected AbstractRequestProxy() {
// For Externalizable
}
- protected AbstractRequestProxy(@Nonnull final C request) {
+ protected AbstractRequestProxy(final @NonNull C request) {
super(request);
this.replyTo = request.getReplyTo();
}
}
@Override
- @Nonnull
- final C createMessage(@Nonnull final T target, final long sequence) {
+ final C createMessage(final T target, final long sequence) {
return createRequest(target, sequence, replyTo);
}
- @Nonnull
- protected abstract C createRequest(@Nonnull T target, long sequence, @Nonnull ActorRef replyToActor);
+ protected abstract @NonNull C createRequest(@NonNull T target, long sequence, @NonNull ActorRef replyToActor);
}