package org.opendaylight.controller.cluster.datastore.persisted;
import com.google.common.annotations.Beta;
-import java.io.ByteArrayInputStream;
-import java.io.DataInputStream;
import java.io.IOException;
-import java.io.InputStream;
import java.io.ObjectInput;
import java.io.ObjectOutput;
import java.util.Optional;
+import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
/**
* Abstract base class for snapshots of the ShardDataTree.
*/
@Beta
public abstract class ShardDataTreeSnapshot {
- private static final Logger LOG = LoggerFactory.getLogger(ShardDataTreeSnapshot.class);
-
ShardDataTreeSnapshot() {
// Hidden to prevent subclassing from outside of this package
}
- @Deprecated
- public static ShardDataTreeSnapshot deserializePreCarbon(final byte[] bytes) throws IOException {
- try (InputStream is = new ByteArrayInputStream(bytes)) {
- try (DataInputStream dis = new DataInputStream(is)) {
- final ShardDataTreeSnapshot ret = AbstractVersionedShardDataTreeSnapshot.deserializePreCarbon(dis);
-
- // Make sure we consume all bytes, otherwise something went very wrong
- final int bytesLeft = dis.available();
- if (bytesLeft != 0) {
- throw new IOException("Deserialization left " + bytesLeft + " in the buffer");
- }
-
-
- return ret;
- }
- }
- }
-
- public static ShardDataTreeSnapshot deserialize(final ObjectInput in) throws IOException {
- final ShardDataTreeSnapshot ret = AbstractVersionedShardDataTreeSnapshot.versionedDeserialize(in);
+ public static @NonNull ShardSnapshotState deserialize(final ObjectInput in) throws IOException {
+ final ShardSnapshotState ret = AbstractVersionedShardDataTreeSnapshot.versionedDeserialize(in);
// Make sure we consume all bytes, otherwise something went very wrong
final int bytesLeft = in.available();
throw new IOException("Deserialization left " + bytesLeft + " in the buffer");
}
-
return ret;
}
*
* @return An optional root node.
*/
- public abstract Optional<NormalizedNode<?, ?>> getRootNode();
+ public abstract Optional<NormalizedNode> getRootNode();
public abstract void serialize(ObjectOutput out) throws IOException;
}