summaryrefslogtreecommitdiffstats
path: root/v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java
diff options
context:
space:
mode:
authorMaros Marsalek <mmarsale@cisco.com>2016-04-12 10:12:46 +0200
committerMaros Marsalek <mmarsale@cisco.com>2016-04-12 10:12:46 +0200
commitcc86c2244707ea980f63ad859ee4eb33d861a511 (patch)
tree4f2647191fb61d1e2f982c8f33d9965c9efd082f /v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java
parent355c2205a7088bc7b3ccabc278c477b838975c65 (diff)
HONEYCOMB-9: Simplify writer APIs, remove list of DataObjects
Change-Id: I139a883da167f9ab388b41b3ede50e48adc22d0b Signed-off-by: Maros Marsalek <mmarsale@cisco.com> Signed-off-by: Marek Gradzki <mgradzki@cisco.com> Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Diffstat (limited to 'v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java')
-rw-r--r--v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java32
1 files changed, 29 insertions, 3 deletions
diff --git a/v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java b/v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java
index 49759f20f..3aaf83250 100644
--- a/v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java
+++ b/v3po/impl/src/main/java/io/fd/honeycomb/v3po/impl/trans/w/WriteContext.java
@@ -16,16 +16,42 @@
package io.fd.honeycomb.v3po.impl.trans.w;
+import com.google.common.annotations.Beta;
+import com.google.common.base.Optional;
import io.fd.honeycomb.v3po.impl.trans.util.Context;
-import java.util.List;
+import javax.annotation.Nonnull;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+/**
+ * Context providing information about current state of DataTree to writers
+ */
+@Beta
public interface WriteContext {
- List<? extends DataObject> readBefore(InstanceIdentifier<? extends DataObject> currentId);
+ /**
+ * Read any data object before current modification was applied
+ *
+ * @param currentId Id of an object to read
+ *
+ * @return Data before the modification was applied
+ */
+ Optional<DataObject> readBefore(@Nonnull final InstanceIdentifier<? extends DataObject> currentId);
- List<? extends DataObject> readAfter(InstanceIdentifier<? extends DataObject> currentId);
+ /**
+ * Read any data object from current modification
+ *
+ * @param currentId Id of an object to read
+ *
+ * @return Data from the modification
+ */
+ Optional<DataObject> readAfter(@Nonnull final InstanceIdentifier<? extends DataObject> currentId);
+ /**
+ * Get key value storage for customizers
+ *
+ * @return Context for customizers
+ */
+ @Nonnull
Context getContext();
}