summaryrefslogtreecommitdiffstats
path: root/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write
diff options
context:
space:
mode:
Diffstat (limited to 'v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write')
-rw-r--r--v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ChildWriterCustomizer.java42
-rw-r--r--v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ListWriterCustomizer.java18
-rw-r--r--v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/WriterCustomizer.java (renamed from v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/RootWriterCustomizer.java)7
3 files changed, 6 insertions, 61 deletions
diff --git a/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ChildWriterCustomizer.java b/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ChildWriterCustomizer.java
deleted file mode 100644
index e8f248495..000000000
--- a/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ChildWriterCustomizer.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 2016 Cisco and/or its affiliates.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.fd.honeycomb.v3po.translate.spi.write;
-
-import com.google.common.annotations.Beta;
-import com.google.common.base.Optional;
-import javax.annotation.Nonnull;
-import org.opendaylight.yangtools.yang.binding.DataObject;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-
-/**
- * CompositeChildWriter SPI to customize its behavior
- *
- * @param <D> Specific DataObject derived type (Identifiable), that is handled by this customizer
- */
-@Beta
-public interface ChildWriterCustomizer<D extends DataObject> extends RootWriterCustomizer<D> {
-
- /**
- * Get child of parentData identified by currentId
- *
- * @param currentId Identifier(from root) of data being extracted
- * @param parentData Parent data object from which managed data object must be extracted
- */
- @Nonnull
- Optional<D> extract(@Nonnull final InstanceIdentifier<D> currentId, @Nonnull final DataObject parentData);
-
-}
diff --git a/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ListWriterCustomizer.java b/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ListWriterCustomizer.java
index ecc591191..41cdb94b6 100644
--- a/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ListWriterCustomizer.java
+++ b/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/ListWriterCustomizer.java
@@ -17,32 +17,18 @@
package io.fd.honeycomb.v3po.translate.spi.write;
import com.google.common.annotations.Beta;
-import com.google.common.base.Optional;
-import java.util.List;
-import javax.annotation.Nonnull;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.Identifiable;
import org.opendaylight.yangtools.yang.binding.Identifier;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
/**
- * CompositeListWriter SPI to customize its behavior
+ * CompositeListWriter SPI to customize its behavior.
*
* @param <C> Specific DataObject derived type (Identifiable), that is handled by this customizer
* @param <K> Specific Identifier for handled type (C)
*/
@Beta
public interface ListWriterCustomizer<C extends DataObject & Identifiable<K>, K extends Identifier<C>> extends
- RootWriterCustomizer<C> {
-
- /**
- * Get children of parentData identified by currentId
- *
- * @param currentId Identifier(from root) of data being extracted
- * @param parentData Parent data object from which managed data object must be extracted
- */
- @Nonnull
- Optional<List<C>> extract(@Nonnull final InstanceIdentifier<C> currentId, @Nonnull final DataObject parentData);
- // TODO consider removing Optional and make extract return @Nullable (applies also to ChildWriterCustomizer)
+ WriterCustomizer<C> {
} \ No newline at end of file
diff --git a/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/RootWriterCustomizer.java b/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/WriterCustomizer.java
index 0ada8e9e5..06ce3f814 100644
--- a/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/RootWriterCustomizer.java
+++ b/v3po/translate-spi/src/main/java/io/fd/honeycomb/v3po/translate/spi/write/WriterCustomizer.java
@@ -24,12 +24,12 @@ import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
/**
- * CompositeRootReader SPI to customize its behavior
+ * CompositeChildWriter SPI to customize its behavior.
*
- * @param <D> Specific DataObject derived type, that is handled by this customizer
+ * @param <D> Specific DataObject derived type (Identifiable), that is handled by this customizer
*/
@Beta
-public interface RootWriterCustomizer<D extends DataObject> {
+public interface WriterCustomizer<D extends DataObject> {
/**
* Handle write operation. C from CRUD.
@@ -71,4 +71,5 @@ public interface RootWriterCustomizer<D extends DataObject> {
void deleteCurrentAttributes(@Nonnull final InstanceIdentifier<D> id,
@Nonnull final D dataBefore,
@Nonnull final WriteContext writeContext) throws WriteFailedException;
+
}