import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.PathArgument;
import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeContainerBuilder;
+import com.google.common.base.Optional;
+import com.google.common.primitives.UnsignedLong;
+
/**
*
* Helper builder
private final NormalizedNodeContainerBuilder data;
-
private StoreNodeCompositeBuilder(final NormalizedNodeContainerBuilder nodeBuilder) {
this.metadata = StoreMetadataNode.builder();
this.data = nodeBuilder;
return this;
}
+ @SuppressWarnings("unchecked")
+ public StoreNodeCompositeBuilder addIfPresent(final Optional<StoreMetadataNode> potential) {
+ if (potential.isPresent()) {
+ StoreMetadataNode node = potential.get();
+ metadata.add(node);
+ data.addChild(node.getData());
+ }
+ return this;
+ }
public StoreMetadataNode build() {
return metadata.setData(data.build()).build();
}
-
public static StoreNodeCompositeBuilder from(final NormalizedNodeContainerBuilder nodeBuilder) {
return new StoreNodeCompositeBuilder(nodeBuilder);
}
- public static StoreNodeCompositeBuilder from(final StoreMetadataNode previous, final NormalizedNodeContainerBuilder nodeBuilder) {
+ @SuppressWarnings("unchecked")
+ public StoreNodeCompositeBuilder setIdentifier(final PathArgument identifier) {
+ data.withNodeIdentifier(identifier);
+ return this;
+ }
- return new StoreNodeCompositeBuilder(nodeBuilder);
+ public StoreNodeCompositeBuilder setNodeVersion(final UnsignedLong nodeVersion) {
+ metadata.setNodeVersion(nodeVersion);
+ return this;
}
- public StoreNodeCompositeBuilder setIdentifier(final PathArgument identifier) {
- data.withNodeIdentifier(identifier);
+ public StoreNodeCompositeBuilder setSubtreeVersion(final UnsignedLong updatedSubtreeVersion) {
+ metadata.setSubtreeVersion(updatedSubtreeVersion);
return this;
}