Class PrefixListBuilder
- java.lang.Object
-
- org.opendaylight.yang.gen.v1.urn.opendaylight.genius.ipv6.nd.packet.rev160620.router.advertisement.packet.PrefixListBuilder
-
- All Implemented Interfaces:
org.opendaylight.yangtools.concepts.Builder<PrefixList>
,org.opendaylight.yangtools.concepts.CheckedBuilder<PrefixList,java.lang.IllegalArgumentException>
,org.opendaylight.yangtools.concepts.Mutable
,org.opendaylight.yangtools.concepts.MutationBehaviour<org.opendaylight.yangtools.concepts.Mutable>
public class PrefixListBuilder extends java.lang.Object implements org.opendaylight.yangtools.concepts.Builder<PrefixList>
Class that buildsPrefixListBuilder
instances. Overall design of the class is that of a fluent interface, where method chaining is used.In general, this class is supposed to be used like this template:
PrefixListBuilder createTarget(int fooXyzzy, int barBaz) { return new PrefixListBuilderBuilder() .setFoo(new FooBuilder().setXyzzy(fooXyzzy).build()) .setBar(new BarBuilder().setBaz(barBaz).build()) .build(); }
This pattern is supported by the immutable nature of PrefixListBuilder, as instances can be freely passed around without worrying about synchronization issues.
As a side note: method chaining results in:
- very efficient Java bytecode, as the method invocation result, in this case the Builder reference, is
on the stack, so further method invocations just need to fill method arguments for the next method
invocation, which is terminated by
build()
, which is then returned from the method - better understanding by humans, as the scope of mutable state (the builder) is kept to a minimum and is very localized
- better optimization oportunities, as the object scope is minimized in terms of invocation (rather than method) stack, making escape analysis a lot easier. Given enough compiler (JIT/AOT) prowess, the cost of th builder object can be completely eliminated
- See Also:
PrefixListBuilder
,Builder
-
-
Constructor Summary
Constructors Constructor Description PrefixListBuilder()
PrefixListBuilder(PrefixList base)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description PrefixListBuilder
addAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList>> augmentationType, org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList> augmentationValue)
<E$$ extends org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList>>
E$$augmentation(java.lang.Class<E$$> augmentationType)
PrefixList
build()
org.opendaylight.yangtools.yang.common.Uint8
getFlags()
org.opendaylight.yangtools.yang.common.Uint8
getOptionLength()
org.opendaylight.yangtools.yang.common.Uint8
getOptionType()
org.opendaylight.yangtools.yang.common.Uint32
getPreferredLifetime()
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Prefix
getPrefix()
org.opendaylight.yangtools.yang.common.Uint8
getPrefixLength()
org.opendaylight.yangtools.yang.common.Uint32
getReserved()
org.opendaylight.yangtools.yang.common.Uint32
getValidLifetime()
PrefixListKey
key()
PrefixListBuilder
removeAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList>> augmentationType)
PrefixListBuilder
setFlags(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setFlags(Uint8)} instead.PrefixListBuilder
setFlags(org.opendaylight.yangtools.yang.common.Uint8 value)
PrefixListBuilder
setOptionLength(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setOptionLength(Uint8)} instead.PrefixListBuilder
setOptionLength(org.opendaylight.yangtools.yang.common.Uint8 value)
PrefixListBuilder
setOptionType(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setOptionType(Uint8)} instead.PrefixListBuilder
setOptionType(org.opendaylight.yangtools.yang.common.Uint8 value)
PrefixListBuilder
setPreferredLifetime(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setPreferredLifetime(Uint32)} instead.PrefixListBuilder
setPreferredLifetime(org.opendaylight.yangtools.yang.common.Uint32 value)
PrefixListBuilder
setPrefix(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Prefix value)
PrefixListBuilder
setPrefixLength(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setPrefixLength(Uint8)} instead.PrefixListBuilder
setPrefixLength(org.opendaylight.yangtools.yang.common.Uint8 value)
PrefixListBuilder
setReserved(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setReserved(Uint32)} instead.PrefixListBuilder
setReserved(org.opendaylight.yangtools.yang.common.Uint32 value)
PrefixListBuilder
setValidLifetime(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setValidLifetime(Uint32)} instead.PrefixListBuilder
setValidLifetime(org.opendaylight.yangtools.yang.common.Uint32 value)
PrefixListBuilder
withKey(PrefixListKey key)
-
-
-
Constructor Detail
-
PrefixListBuilder
public PrefixListBuilder()
-
PrefixListBuilder
public PrefixListBuilder(PrefixList base)
-
-
Method Detail
-
key
public PrefixListKey key()
-
getFlags
public org.opendaylight.yangtools.yang.common.Uint8 getFlags()
-
getOptionLength
public org.opendaylight.yangtools.yang.common.Uint8 getOptionLength()
-
getOptionType
public org.opendaylight.yangtools.yang.common.Uint8 getOptionType()
-
getPreferredLifetime
public org.opendaylight.yangtools.yang.common.Uint32 getPreferredLifetime()
-
getPrefix
public org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Prefix getPrefix()
-
getPrefixLength
public org.opendaylight.yangtools.yang.common.Uint8 getPrefixLength()
-
getReserved
public org.opendaylight.yangtools.yang.common.Uint32 getReserved()
-
getValidLifetime
public org.opendaylight.yangtools.yang.common.Uint32 getValidLifetime()
-
augmentation
public <E$$ extends org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList>> E$$ augmentation(java.lang.Class<E$$> augmentationType)
-
withKey
public PrefixListBuilder withKey(PrefixListKey key)
-
setFlags
public PrefixListBuilder setFlags(org.opendaylight.yangtools.yang.common.Uint8 value)
-
setFlags
@Deprecated(forRemoval=true) public PrefixListBuilder setFlags(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setFlags(Uint8)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setOptionLength
public PrefixListBuilder setOptionLength(org.opendaylight.yangtools.yang.common.Uint8 value)
-
setOptionLength
@Deprecated(forRemoval=true) public PrefixListBuilder setOptionLength(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setOptionLength(Uint8)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setOptionType
public PrefixListBuilder setOptionType(org.opendaylight.yangtools.yang.common.Uint8 value)
-
setOptionType
@Deprecated(forRemoval=true) public PrefixListBuilder setOptionType(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setOptionType(Uint8)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setPreferredLifetime
public PrefixListBuilder setPreferredLifetime(org.opendaylight.yangtools.yang.common.Uint32 value)
-
setPreferredLifetime
@Deprecated(forRemoval=true) public PrefixListBuilder setPreferredLifetime(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setPreferredLifetime(Uint32)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setPrefix
public PrefixListBuilder setPrefix(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Prefix value)
-
setPrefixLength
public PrefixListBuilder setPrefixLength(org.opendaylight.yangtools.yang.common.Uint8 value)
-
setPrefixLength
@Deprecated(forRemoval=true) public PrefixListBuilder setPrefixLength(java.lang.Short value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setPrefixLength(Uint8)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setReserved
public PrefixListBuilder setReserved(org.opendaylight.yangtools.yang.common.Uint32 value)
-
setReserved
@Deprecated(forRemoval=true) public PrefixListBuilder setReserved(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setReserved(Uint32)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setValidLifetime
public PrefixListBuilder setValidLifetime(org.opendaylight.yangtools.yang.common.Uint32 value)
-
setValidLifetime
@Deprecated(forRemoval=true) public PrefixListBuilder setValidLifetime(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setValidLifetime(Uint32)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
addAugmentation
public PrefixListBuilder addAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList>> augmentationType, org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList> augmentationValue)
-
removeAugmentation
public PrefixListBuilder removeAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<PrefixList>> augmentationType)
-
build
public PrefixList build()
- Specified by:
build
in interfaceorg.opendaylight.yangtools.concepts.Builder<PrefixList>
- Specified by:
build
in interfaceorg.opendaylight.yangtools.concepts.CheckedBuilder<PrefixList,java.lang.IllegalArgumentException>
-
-