summaryrefslogtreecommitdiffstats
path: root/v3po/translate-impl/src/main/java/io/fd/honeycomb/v3po/translate/impl/read/CompositeRootReader.java
diff options
context:
space:
mode:
Diffstat (limited to 'v3po/translate-impl/src/main/java/io/fd/honeycomb/v3po/translate/impl/read/CompositeRootReader.java')
-rw-r--r--v3po/translate-impl/src/main/java/io/fd/honeycomb/v3po/translate/impl/read/CompositeRootReader.java21
1 files changed, 20 insertions, 1 deletions
diff --git a/v3po/translate-impl/src/main/java/io/fd/honeycomb/v3po/translate/impl/read/CompositeRootReader.java b/v3po/translate-impl/src/main/java/io/fd/honeycomb/v3po/translate/impl/read/CompositeRootReader.java
index f297abb76..0abae70be 100644
--- a/v3po/translate-impl/src/main/java/io/fd/honeycomb/v3po/translate/impl/read/CompositeRootReader.java
+++ b/v3po/translate-impl/src/main/java/io/fd/honeycomb/v3po/translate/impl/read/CompositeRootReader.java
@@ -17,6 +17,7 @@
package io.fd.honeycomb.v3po.translate.impl.read;
import com.google.common.annotations.Beta;
+import io.fd.honeycomb.v3po.translate.impl.TraversalType;
import io.fd.honeycomb.v3po.translate.read.ReadFailedException;
import io.fd.honeycomb.v3po.translate.util.RWUtils;
import io.fd.honeycomb.v3po.translate.read.ChildReader;
@@ -55,7 +56,25 @@ public final class CompositeRootReader<C extends DataObject, B extends Builder<C
@Nonnull final List<ChildReader<? extends ChildOf<C>>> childReaders,
@Nonnull final List<ChildReader<? extends Augmentation<C>>> augReaders,
@Nonnull final RootReaderCustomizer<C, B> customizer) {
- super(managedDataObjectType, childReaders, augReaders);
+ this(managedDataObjectType, childReaders, augReaders, customizer, TraversalType.PREORDER);
+ }
+
+ /**
+ * Create new {@link CompositeRootReader}
+ *
+ * @param managedDataObjectType Class object for managed data type
+ * @param childReaders Child nodes(container, list) readers
+ * @param augReaders Child augmentations readers
+ * @param customizer Customizer instance to customize this generic reader
+ * @param traversalType Type of traversal to use in the tree of readers
+ *
+ */
+ public CompositeRootReader(@Nonnull final Class<C> managedDataObjectType,
+ @Nonnull final List<ChildReader<? extends ChildOf<C>>> childReaders,
+ @Nonnull final List<ChildReader<? extends Augmentation<C>>> augReaders,
+ @Nonnull final RootReaderCustomizer<C, B> customizer,
+ @Nonnull final TraversalType traversalType) {
+ super(managedDataObjectType, childReaders, augReaders, traversalType);
this.customizer = customizer;
}