Use StorageNamespaces for serialization in Atomix tests
Change-Id: Ia7a8b83cc3f7cf7de9251bafbc1c60f48e7ec964
diff --git a/core/store/primitives/src/test/java/org/onosproject/store/primitives/resources/impl/AtomixTestBase.java b/core/store/primitives/src/test/java/org/onosproject/store/primitives/resources/impl/AtomixTestBase.java
index 1ade931..4098af1 100644
--- a/core/store/primitives/src/test/java/org/onosproject/store/primitives/resources/impl/AtomixTestBase.java
+++ b/core/store/primitives/src/test/java/org/onosproject/store/primitives/resources/impl/AtomixTestBase.java
@@ -25,9 +25,6 @@
import java.nio.file.attribute.BasicFileAttributes;
import java.time.Instant;
import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.LinkedList;
import java.util.List;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CountDownLatch;
@@ -37,71 +34,21 @@
import com.google.common.collect.Lists;
import io.atomix.protocols.raft.RaftClient;
-import io.atomix.protocols.raft.RaftError;
import io.atomix.protocols.raft.RaftServer;
import io.atomix.protocols.raft.ReadConsistency;
import io.atomix.protocols.raft.cluster.MemberId;
import io.atomix.protocols.raft.cluster.RaftMember;
-import io.atomix.protocols.raft.cluster.impl.DefaultRaftMember;
-import io.atomix.protocols.raft.event.RaftEvent;
-import io.atomix.protocols.raft.event.impl.DefaultEventType;
-import io.atomix.protocols.raft.operation.OperationType;
-import io.atomix.protocols.raft.operation.RaftOperation;
-import io.atomix.protocols.raft.operation.impl.DefaultOperationId;
-import io.atomix.protocols.raft.protocol.AppendRequest;
-import io.atomix.protocols.raft.protocol.AppendResponse;
-import io.atomix.protocols.raft.protocol.CloseSessionRequest;
-import io.atomix.protocols.raft.protocol.CloseSessionResponse;
-import io.atomix.protocols.raft.protocol.CommandRequest;
-import io.atomix.protocols.raft.protocol.CommandResponse;
-import io.atomix.protocols.raft.protocol.ConfigureRequest;
-import io.atomix.protocols.raft.protocol.ConfigureResponse;
-import io.atomix.protocols.raft.protocol.HeartbeatRequest;
-import io.atomix.protocols.raft.protocol.HeartbeatResponse;
-import io.atomix.protocols.raft.protocol.InstallRequest;
-import io.atomix.protocols.raft.protocol.InstallResponse;
-import io.atomix.protocols.raft.protocol.JoinRequest;
-import io.atomix.protocols.raft.protocol.JoinResponse;
-import io.atomix.protocols.raft.protocol.KeepAliveRequest;
-import io.atomix.protocols.raft.protocol.KeepAliveResponse;
-import io.atomix.protocols.raft.protocol.LeaveRequest;
-import io.atomix.protocols.raft.protocol.LeaveResponse;
-import io.atomix.protocols.raft.protocol.MetadataRequest;
-import io.atomix.protocols.raft.protocol.MetadataResponse;
-import io.atomix.protocols.raft.protocol.OpenSessionRequest;
-import io.atomix.protocols.raft.protocol.OpenSessionResponse;
-import io.atomix.protocols.raft.protocol.PollRequest;
-import io.atomix.protocols.raft.protocol.PollResponse;
-import io.atomix.protocols.raft.protocol.PublishRequest;
-import io.atomix.protocols.raft.protocol.QueryRequest;
-import io.atomix.protocols.raft.protocol.QueryResponse;
-import io.atomix.protocols.raft.protocol.RaftResponse;
-import io.atomix.protocols.raft.protocol.ReconfigureRequest;
-import io.atomix.protocols.raft.protocol.ReconfigureResponse;
-import io.atomix.protocols.raft.protocol.ResetRequest;
-import io.atomix.protocols.raft.protocol.VoteRequest;
-import io.atomix.protocols.raft.protocol.VoteResponse;
import io.atomix.protocols.raft.proxy.CommunicationStrategy;
import io.atomix.protocols.raft.proxy.RaftProxy;
import io.atomix.protocols.raft.service.RaftService;
-import io.atomix.protocols.raft.session.SessionId;
import io.atomix.protocols.raft.storage.RaftStorage;
-import io.atomix.protocols.raft.storage.log.entry.CloseSessionEntry;
-import io.atomix.protocols.raft.storage.log.entry.CommandEntry;
-import io.atomix.protocols.raft.storage.log.entry.ConfigurationEntry;
-import io.atomix.protocols.raft.storage.log.entry.InitializeEntry;
-import io.atomix.protocols.raft.storage.log.entry.KeepAliveEntry;
-import io.atomix.protocols.raft.storage.log.entry.MetadataEntry;
-import io.atomix.protocols.raft.storage.log.entry.OpenSessionEntry;
-import io.atomix.protocols.raft.storage.log.entry.QueryEntry;
-import io.atomix.protocols.raft.storage.system.Configuration;
import io.atomix.storage.StorageLevel;
import org.junit.After;
import org.junit.Before;
-import org.onlab.util.KryoNamespace;
import org.onosproject.cluster.NodeId;
import org.onosproject.store.primitives.impl.RaftClientCommunicator;
import org.onosproject.store.primitives.impl.RaftServerCommunicator;
+import org.onosproject.store.primitives.impl.StorageNamespaces;
import org.onosproject.store.service.Serializer;
/**
@@ -111,114 +58,6 @@
*/
public abstract class AtomixTestBase<T extends AbstractRaftPrimitive> {
- private static final Serializer PROTOCOL_SERIALIZER = Serializer.using(KryoNamespace.newBuilder()
- .register(OpenSessionRequest.class)
- .register(OpenSessionResponse.class)
- .register(CloseSessionRequest.class)
- .register(CloseSessionResponse.class)
- .register(KeepAliveRequest.class)
- .register(KeepAliveResponse.class)
- .register(HeartbeatRequest.class)
- .register(HeartbeatResponse.class)
- .register(QueryRequest.class)
- .register(QueryResponse.class)
- .register(CommandRequest.class)
- .register(CommandResponse.class)
- .register(MetadataRequest.class)
- .register(MetadataResponse.class)
- .register(JoinRequest.class)
- .register(JoinResponse.class)
- .register(LeaveRequest.class)
- .register(LeaveResponse.class)
- .register(ConfigureRequest.class)
- .register(ConfigureResponse.class)
- .register(ReconfigureRequest.class)
- .register(ReconfigureResponse.class)
- .register(InstallRequest.class)
- .register(InstallResponse.class)
- .register(PollRequest.class)
- .register(PollResponse.class)
- .register(VoteRequest.class)
- .register(VoteResponse.class)
- .register(AppendRequest.class)
- .register(AppendResponse.class)
- .register(PublishRequest.class)
- .register(ResetRequest.class)
- .register(RaftResponse.Status.class)
- .register(RaftError.class)
- .register(RaftError.Type.class)
- .register(ReadConsistency.class)
- .register(byte[].class)
- .register(long[].class)
- .register(CloseSessionEntry.class)
- .register(CommandEntry.class)
- .register(ConfigurationEntry.class)
- .register(InitializeEntry.class)
- .register(KeepAliveEntry.class)
- .register(MetadataEntry.class)
- .register(OpenSessionEntry.class)
- .register(QueryEntry.class)
- .register(RaftOperation.class)
- .register(RaftEvent.class)
- .register(DefaultEventType.class)
- .register(DefaultOperationId.class)
- .register(OperationType.class)
- .register(ReadConsistency.class)
- .register(ArrayList.class)
- .register(LinkedList.class)
- .register(Collections.emptyList().getClass())
- .register(HashSet.class)
- .register(DefaultRaftMember.class)
- .register(MemberId.class)
- .register(SessionId.class)
- .register(RaftMember.Type.class)
- .register(Instant.class)
- .register(Configuration.class)
- .register(AtomixAtomicCounterMapOperations.class)
- .register(AtomixConsistentMapEvents.class)
- .register(AtomixConsistentMapOperations.class)
- .register(AtomixConsistentSetMultimapOperations.class)
- .register(AtomixConsistentSetMultimapEvents.class)
- .register(AtomixConsistentTreeMapOperations.class)
- .register(AtomixCounterOperations.class)
- .register(AtomixDocumentTreeEvents.class)
- .register(AtomixDocumentTreeOperations.class)
- .register(AtomixLeaderElectorEvents.class)
- .register(AtomixLeaderElectorOperations.class)
- .register(AtomixWorkQueueEvents.class)
- .register(AtomixWorkQueueOperations.class)
- .build());
-
- private static final Serializer STORAGE_SERIALIZER = Serializer.using(KryoNamespace.newBuilder()
- .register(CloseSessionEntry.class)
- .register(CommandEntry.class)
- .register(ConfigurationEntry.class)
- .register(InitializeEntry.class)
- .register(KeepAliveEntry.class)
- .register(MetadataEntry.class)
- .register(OpenSessionEntry.class)
- .register(QueryEntry.class)
- .register(RaftOperation.class)
- .register(ReadConsistency.class)
- .register(AtomixAtomicCounterMapOperations.class)
- .register(AtomixConsistentMapOperations.class)
- .register(AtomixConsistentSetMultimapOperations.class)
- .register(AtomixConsistentTreeMapOperations.class)
- .register(AtomixCounterOperations.class)
- .register(AtomixDocumentTreeOperations.class)
- .register(AtomixLeaderElectorOperations.class)
- .register(AtomixWorkQueueOperations.class)
- .register(ArrayList.class)
- .register(HashSet.class)
- .register(DefaultRaftMember.class)
- .register(MemberId.class)
- .register(RaftMember.Type.class)
- .register(Instant.class)
- .register(Configuration.class)
- .register(byte[].class)
- .register(long[].class)
- .build());
-
protected TestClusterCommunicationServiceFactory communicationServiceFactory;
protected List<RaftMember> members = Lists.newCopyOnWriteArrayList();
protected List<RaftClient> clients = Lists.newCopyOnWriteArrayList();
@@ -386,12 +225,12 @@
.withType(member.getType())
.withProtocol(new RaftServerCommunicator(
"partition-1",
- PROTOCOL_SERIALIZER,
+ Serializer.using(StorageNamespaces.RAFT_PROTOCOL),
communicationServiceFactory.newCommunicationService(NodeId.nodeId(member.memberId().id()))))
.withStorage(RaftStorage.newBuilder()
.withStorageLevel(StorageLevel.MEMORY)
.withDirectory(new File(String.format("target/primitives/%s", member.memberId())))
- .withSerializer(new AtomixSerializerAdapter(STORAGE_SERIALIZER))
+ .withSerializer(new AtomixSerializerAdapter(Serializer.using(StorageNamespaces.RAFT_STORAGE)))
.withMaxSegmentSize(1024 * 1024)
.build())
.addService("test", this::createService);
@@ -410,7 +249,7 @@
.withMemberId(memberId)
.withProtocol(new RaftClientCommunicator(
"partition-1",
- PROTOCOL_SERIALIZER,
+ Serializer.using(StorageNamespaces.RAFT_PROTOCOL),
communicationServiceFactory.newCommunicationService(NodeId.nodeId(memberId.id()))))
.build();