summaryrefslogtreecommitdiffstats
path: root/infra/translate-api/src/main/java/io/fd/honeycomb/translate/write/Writer.java
diff options
context:
space:
mode:
Diffstat (limited to 'infra/translate-api/src/main/java/io/fd/honeycomb/translate/write/Writer.java')
-rw-r--r--infra/translate-api/src/main/java/io/fd/honeycomb/translate/write/Writer.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/infra/translate-api/src/main/java/io/fd/honeycomb/translate/write/Writer.java b/infra/translate-api/src/main/java/io/fd/honeycomb/translate/write/Writer.java
index 18573e58a..f3265a39b 100644
--- a/infra/translate-api/src/main/java/io/fd/honeycomb/translate/write/Writer.java
+++ b/infra/translate-api/src/main/java/io/fd/honeycomb/translate/write/Writer.java
@@ -33,6 +33,20 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
public interface Writer<D extends DataObject> extends SubtreeManager<D> {
/**
+ * Validates data modification.
+ *
+ * @param id Identifier of data being validated
+ * @param dataBefore Old data
+ * @param dataAfter New, updated data
+ * @param ctx Write context enabling writer to get information about candidate data as well as current data
+ */
+ default void validate(@Nonnull final InstanceIdentifier<? extends DataObject> id,
+ @Nullable final DataObject dataBefore,
+ @Nullable final DataObject dataAfter,
+ @Nonnull final WriteContext ctx) throws DataValidationFailedException {
+ }
+
+ /**
* Process modifications and translate them as create/update/delete operations to lower level
*
* @param id Identifier of data being written