Class AbstractDataObjectReferenceBuilder<T extends DataObject>
java.lang.Object
org.opendaylight.yangtools.binding.impl.AbstractDataObjectReferenceBuilder<T>
- All Implemented Interfaces:
DataObjectReference.Builder<T>
- Direct Known Subclasses:
AbstractDataObjectIdentifierBuilder
,DataObjectReferenceBuilder
,DataObjectReferenceBuilderWithKey
,InstanceIdentifier.Builder
public abstract sealed class AbstractDataObjectReferenceBuilder<T extends DataObject>
extends Object
implements DataObjectReference.Builder<T>
permits AbstractDataObjectIdentifierBuilder<T>, DataObjectReferenceBuilder<T>, DataObjectReferenceBuilderWithKey<T,K>, InstanceIdentifier.Builder<T>
Base implementation of
DataObjectReference.Builder
.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.opendaylight.yangtools.binding.DataObjectReference.Builder
DataObjectReference.Builder.WithKey<T extends EntryObject<T,
K>, K extends Key<T>> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
protected
protected
protected
-
Method Summary
Modifier and TypeMethodDescriptionprotected abstract <X extends DataObject>
@NonNull DataObjectReference.Builder<X> append
(@NonNull DataObjectStep<X> step) protected abstract <X extends EntryObject<X,
Y>, Y extends Key<X>>
@NonNull DataObjectReference.Builder.WithKey<X, Y> protected final void
appendItem
(@NonNull ExactDataObjectStep<?> item) protected void
appendItem
(@NonNull InexactDataObjectStep<?> item) protected final void
appendItem
(DataObjectStep<?> item) <A extends Augmentation<? super T>>
DataObjectReference.Builder<A> augmentation
(Class<A> augmentation) Update this builder to build a reference to a specific augmentation of the data object this builder currently points to.abstract DataObjectReference
<T> build()
Build the data object reference.protected final @NonNull Iterable
<? extends @NonNull DataObjectStep<?>> <C extends ChoiceIn<? super T> & DataObject,
N extends ChildOf<? super C>>
DataObjectReference.Builder<N> Append the specified container as a child of the data object this build currently references.<C extends ChoiceIn<? super T> & DataObject,
K extends Key<N>, N extends EntryObject<N, K> & ChildOf<? super C>>
DataObjectReference.Builder.WithKey<N, K> Append the specified listItem as a child of the data object this build currently references.<N extends ChildOf<? super T>>
DataObjectReference.Builder<N> Append the specified container as a child of the data object this build currently references.<N extends EntryObject<N,
K> & ChildOf<? super T>, K extends Key<N>>
DataObjectReference.Builder.WithKey<N, K> Append the specified listItem as a child of the data object this build currently references.protected final boolean
wildcard()
-
Constructor Details
-
AbstractDataObjectReferenceBuilder
-
AbstractDataObjectReferenceBuilder
-
AbstractDataObjectReferenceBuilder
-
AbstractDataObjectReferenceBuilder
-
-
Method Details
-
augmentation
public <A extends Augmentation<? super T>> DataObjectReference.Builder<A> augmentation(Class<A> augmentation) Description copied from interface:DataObjectReference.Builder
Update this builder to build a reference to a specific augmentation of the data object this builder currently points to.- Specified by:
augmentation
in interfaceDataObjectReference.Builder<T extends DataObject>
- Type Parameters:
A
- augmentation type- Parameters:
augmentation
- augmentation class- Returns:
- this builder
-
child
Description copied from interface:DataObjectReference.Builder
Append the specified container as a child of the data object this build currently references. This method should be used when you want to build an instance identifier by appending top-level elements.- Specified by:
child
in interfaceDataObjectReference.Builder<T extends DataObject>
- Type Parameters:
N
- Container type- Parameters:
container
- Container to append- Returns:
- this builder
-
child
public <C extends ChoiceIn<? super T> & DataObject,N extends ChildOf<? super C>> DataObjectReference.Builder<N> child(Class<C> caze, Class<N> container) Description copied from interface:DataObjectReference.Builder
Append the specified container as a child of the data object this build currently references. This method should be used when you want to build an reference by appending a container node to the identifier and thecontainer
is defined in agrouping
used in acase
statement.- Specified by:
child
in interfaceDataObjectReference.Builder<T extends DataObject>
- Type Parameters:
C
- Case typeN
- Container type- Parameters:
caze
- Choice case classcontainer
- Container to append- Returns:
- this builder
-
child
public <N extends EntryObject<N,K> & ChildOf<? super T>, DataObjectReference.Builder.WithKey<N,K extends Key<N>> K> child(Class<N> listItem, K listKey) Description copied from interface:DataObjectReference.Builder
Append the specified listItem as a child of the data object this build currently references. This method should be used when you want to build a reference by appending a specific list element to the identifier.- Specified by:
child
in interfaceDataObjectReference.Builder<T extends DataObject>
- Type Parameters:
N
- List typeK
- Key type- Parameters:
listItem
- List to appendlistKey
- List key- Returns:
- this builder
-
child
public <C extends ChoiceIn<? super T> & DataObject,K extends Key<N>, DataObjectReference.Builder.WithKey<N,N extends EntryObject<N, K> & ChildOf<? super C>> K> child(Class<C> caze, Class<N> listItem, K listKey) Description copied from interface:DataObjectReference.Builder
Append the specified listItem as a child of the data object this build currently references. This method should be used when you want to build a reference by appending a specific list element to the identifier and thelist
is defined in agrouping
used in acase
statement.- Specified by:
child
in interfaceDataObjectReference.Builder<T extends DataObject>
- Type Parameters:
C
- Case typeK
- Key typeN
- List type- Parameters:
caze
- Choice case classlistItem
- List to appendlistKey
- List key- Returns:
- this builder
-
build
Description copied from interface:DataObjectReference.Builder
Build the data object reference.- Specified by:
build
in interfaceDataObjectReference.Builder<T extends DataObject>
- Returns:
- resulting
DataObjectReference
.
-
append
protected abstract <X extends DataObject> @NonNull DataObjectReference.Builder<X> append(@NonNull DataObjectStep<X> step) -
append
protected abstract <X extends EntryObject<X,Y>, @NonNull DataObjectReference.Builder.WithKey<X,Y extends Key<X>> Y> append(@NonNull KeyStep<Y, X> step) -
wildcard
protected final boolean wildcard() -
appendItem
-
appendItem
-
appendItem
-
buildSteps
-