List of usage examples for org.apache.commons.lang SerializationUtils clone
public static Object clone(Serializable object)
Deep clone an Object
using serialization.
This is many times slower than writing clone methods by hand on all objects in your object graph.
From source file:org.opendaylight.controller.cluster.datastore.messages.AbortTransactionTest.java
@Test public void testSerialization() { AbortTransaction expected = new AbortTransaction( MockIdentifiers.transactionIdentifier(AbortTransactionTest.class, "mock"), DataStoreVersions.CURRENT_VERSION); Object serialized = expected.toSerializable(); assertEquals("Serialized type", AbortTransaction.class, serialized.getClass()); AbortTransaction actual = AbortTransaction .fromSerializable(SerializationUtils.clone((Serializable) serialized)); assertEquals("getTransactionID", expected.getTransactionID(), actual.getTransactionID()); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.BatchedModificationsTest.java
@Test public void testSerialization() { YangInstanceIdentifier writePath = TestModel.TEST_PATH; NormalizedNode<?, ?> writeData = ImmutableContainerNodeBuilder.create() .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME)) .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build(); YangInstanceIdentifier mergePath = TestModel.OUTER_LIST_PATH; NormalizedNode<?, ?> mergeData = ImmutableContainerNodeBuilder.create() .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.OUTER_LIST_QNAME)).build(); YangInstanceIdentifier deletePath = TestModel.TEST_PATH; final TransactionIdentifier tx1 = nextTransactionId(); BatchedModifications batched = new BatchedModifications(tx1, DataStoreVersions.CURRENT_VERSION); batched.addModification(new WriteModification(writePath, writeData)); batched.addModification(new MergeModification(mergePath, mergeData)); batched.addModification(new DeleteModification(deletePath)); batched.setReady(true);/*w w w .ja v a2s . co m*/ batched.setTotalMessagesSent(5); BatchedModifications clone = (BatchedModifications) SerializationUtils .clone((Serializable) batched.toSerializable()); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, clone.getVersion()); assertEquals("getTransactionID", tx1, clone.getTransactionID()); assertEquals("isReady", true, clone.isReady()); assertEquals("getTotalMessagesSent", 5, clone.getTotalMessagesSent()); assertEquals("getModifications size", 3, clone.getModifications().size()); WriteModification write = (WriteModification) clone.getModifications().get(0); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, write.getVersion()); assertEquals("getPath", writePath, write.getPath()); assertEquals("getData", writeData, write.getData()); MergeModification merge = (MergeModification) clone.getModifications().get(1); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, merge.getVersion()); assertEquals("getPath", mergePath, merge.getPath()); assertEquals("getData", mergeData, merge.getData()); DeleteModification delete = (DeleteModification) clone.getModifications().get(2); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, delete.getVersion()); assertEquals("getPath", deletePath, delete.getPath()); // Test with different params. final TransactionIdentifier tx2 = nextTransactionId(); batched = new BatchedModifications(tx2, (short) 10000); clone = (BatchedModifications) SerializationUtils.clone((Serializable) batched.toSerializable()); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, clone.getVersion()); assertEquals("getTransactionID", tx2, clone.getTransactionID()); assertEquals("isReady", false, clone.isReady()); assertEquals("getModifications size", 0, clone.getModifications().size()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.BatchedModificationsTest.java
@Test public void testBatchedModificationsReplySerialization() { BatchedModificationsReply clone = (BatchedModificationsReply) SerializationUtils .clone((Serializable) new BatchedModificationsReply(100).toSerializable()); assertEquals("getNumBatched", 100, clone.getNumBatched()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.CanCommitTransactionReplyTest.java
private static void testSerialization(CanCommitTransactionReply expected, Class<?> expSerialized) { Object serialized = expected.toSerializable(); assertEquals("Serialized type", expSerialized, serialized.getClass()); CanCommitTransactionReply actual = CanCommitTransactionReply .fromSerializable(SerializationUtils.clone((Serializable) serialized)); assertEquals("getCanCommit", expected.getCanCommit(), actual.getCanCommit()); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.CanCommitTransactionTest.java
@Test public void testSerialization() { CanCommitTransaction expected = new CanCommitTransaction(nextTransactionId(), DataStoreVersions.CURRENT_VERSION); Object serialized = expected.toSerializable(); assertEquals("Serialized type", CanCommitTransaction.class, serialized.getClass()); CanCommitTransaction actual = CanCommitTransaction .fromSerializable(SerializationUtils.clone((Serializable) serialized)); assertEquals("getTransactionID", expected.getTransactionID(), actual.getTransactionID()); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.CloseTransactionChainTest.java
@Test public void testSerialization() { CloseTransactionChain expected = new CloseTransactionChain(nextHistoryId(), DataStoreVersions.CURRENT_VERSION); Object serialized = expected.toSerializable(); assertEquals("Serialized type", CloseTransactionChain.class, serialized.getClass()); CloseTransactionChain actual = CloseTransactionChain .fromSerializable(SerializationUtils.clone((Serializable) serialized)); assertEquals("getIdentifier", expected.getIdentifier(), actual.getIdentifier()); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.CloseTransactionTest.java
@Test public void testCloseTransactionSerialization() { CloseTransaction expected = new CloseTransaction(DataStoreVersions.CURRENT_VERSION); Object serialized = expected.toSerializable(); assertEquals("Serialized type", CloseTransaction.class, serialized.getClass()); CloseTransaction actual = (CloseTransaction) SerializationUtils.clone((Serializable) serialized); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.CloseTransactionTest.java
@Test public void testCloseTransactionReplySerialization() { CloseTransactionReply expected = new CloseTransactionReply(); Object serialized = expected.toSerializable(); assertEquals("Serialized type", CloseTransactionReply.class, serialized.getClass()); CloseTransactionReply actual = (CloseTransactionReply) SerializationUtils.clone((Serializable) serialized); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.CommitTransactionReplyTest.java
@Test public void testSerialization() { CommitTransactionReply expected = CommitTransactionReply.instance(DataStoreVersions.CURRENT_VERSION); Object serialized = expected.toSerializable(); assertEquals("Serialized type", CommitTransactionReply.class, serialized.getClass()); CommitTransactionReply actual = (CommitTransactionReply) SerializationUtils .clone((Serializable) serialized); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }
From source file:org.opendaylight.controller.cluster.datastore.messages.CommitTransactionTest.java
@Test public void testSerialization() { CommitTransaction expected = new CommitTransaction(nextTransactionId(), DataStoreVersions.CURRENT_VERSION); Object serialized = expected.toSerializable(); assertEquals("Serialized type", CommitTransaction.class, serialized.getClass()); CommitTransaction actual = CommitTransaction .fromSerializable(SerializationUtils.clone((Serializable) serialized)); assertEquals("getTransactionID", expected.getTransactionID(), actual.getTransactionID()); assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion()); }