Class ElanConfigBuilder
- java.lang.Object
-
- org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.elan.config.rev150710.ElanConfigBuilder
-
- All Implemented Interfaces:
org.opendaylight.yangtools.concepts.Builder<ElanConfig>
,org.opendaylight.yangtools.concepts.CheckedBuilder<ElanConfig,java.lang.IllegalArgumentException>
,org.opendaylight.yangtools.concepts.Mutable
,org.opendaylight.yangtools.concepts.MutationBehaviour<org.opendaylight.yangtools.concepts.Mutable>
public class ElanConfigBuilder extends java.lang.Object implements org.opendaylight.yangtools.concepts.Builder<ElanConfig>
Class that buildsElanConfigBuilder
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:
ElanConfigBuilder createTarget(int fooXyzzy, int barBaz) { return new ElanConfigBuilderBuilder() .setFoo(new FooBuilder().setXyzzy(fooXyzzy).build()) .setBar(new BarBuilder().setBaz(barBaz).build()) .build(); }
This pattern is supported by the immutable nature of ElanConfigBuilder, 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:
ElanConfigBuilder
,Builder
-
-
Constructor Summary
Constructors Constructor Description ElanConfigBuilder()
ElanConfigBuilder(ElanConfig base)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description ElanConfigBuilder
addAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig>> augmentationType, org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig> augmentationValue)
<E$$ extends org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig>>
E$$augmentation(java.lang.Class<E$$> augmentationType)
ElanConfig
build()
org.opendaylight.yangtools.yang.common.Uint32
getArpPuntTimeout()
org.opendaylight.yangtools.yang.common.Uint32
getControllerInactivityProbe()
org.opendaylight.yangtools.yang.common.Uint32
getControllerMaxBackoff()
org.opendaylight.yangtools.yang.common.Uint16
getL2gwLogicalSwitchDelaySecs()
org.opendaylight.yangtools.yang.common.Uint16
getL2gwStaleVlanCleanupDelaySecs()
org.opendaylight.yangtools.yang.common.Uint16
getTempSmacLearnTimeout()
java.lang.Boolean
isAutoConfigTransportZones()
java.lang.Boolean
isAutoCreateBridge()
java.lang.Boolean
isIntBridgeGenMac()
java.lang.Boolean
isOpenstackVniSemanticsEnforced()
java.lang.Boolean
isPuntLldpToController()
java.lang.Boolean
isUseOfTunnels()
ElanConfigBuilder
removeAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig>> augmentationType)
ElanConfigBuilder
setArpPuntTimeout(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setArpPuntTimeout(Uint32)} instead.ElanConfigBuilder
setArpPuntTimeout(org.opendaylight.yangtools.yang.common.Uint32 value)
ElanConfigBuilder
setAutoConfigTransportZones(java.lang.Boolean value)
ElanConfigBuilder
setAutoCreateBridge(java.lang.Boolean value)
ElanConfigBuilder
setControllerInactivityProbe(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setControllerInactivityProbe(Uint32)} instead.ElanConfigBuilder
setControllerInactivityProbe(org.opendaylight.yangtools.yang.common.Uint32 value)
ElanConfigBuilder
setControllerMaxBackoff(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setControllerMaxBackoff(Uint32)} instead.ElanConfigBuilder
setControllerMaxBackoff(org.opendaylight.yangtools.yang.common.Uint32 value)
ElanConfigBuilder
setIntBridgeGenMac(java.lang.Boolean value)
ElanConfigBuilder
setL2gwLogicalSwitchDelaySecs(java.lang.Integer value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setL2gwLogicalSwitchDelaySecs(Uint16)} instead.ElanConfigBuilder
setL2gwLogicalSwitchDelaySecs(org.opendaylight.yangtools.yang.common.Uint16 value)
ElanConfigBuilder
setL2gwStaleVlanCleanupDelaySecs(java.lang.Integer value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setL2gwStaleVlanCleanupDelaySecs(Uint16)} instead.ElanConfigBuilder
setL2gwStaleVlanCleanupDelaySecs(org.opendaylight.yangtools.yang.common.Uint16 value)
ElanConfigBuilder
setOpenstackVniSemanticsEnforced(java.lang.Boolean value)
ElanConfigBuilder
setPuntLldpToController(java.lang.Boolean value)
ElanConfigBuilder
setTempSmacLearnTimeout(java.lang.Integer value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setTempSmacLearnTimeout(Uint16)} instead.ElanConfigBuilder
setTempSmacLearnTimeout(org.opendaylight.yangtools.yang.common.Uint16 value)
ElanConfigBuilder
setUseOfTunnels(java.lang.Boolean value)
-
-
-
Constructor Detail
-
ElanConfigBuilder
public ElanConfigBuilder()
-
ElanConfigBuilder
public ElanConfigBuilder(ElanConfig base)
-
-
Method Detail
-
getArpPuntTimeout
public org.opendaylight.yangtools.yang.common.Uint32 getArpPuntTimeout()
-
getControllerInactivityProbe
public org.opendaylight.yangtools.yang.common.Uint32 getControllerInactivityProbe()
-
getControllerMaxBackoff
public org.opendaylight.yangtools.yang.common.Uint32 getControllerMaxBackoff()
-
getL2gwLogicalSwitchDelaySecs
public org.opendaylight.yangtools.yang.common.Uint16 getL2gwLogicalSwitchDelaySecs()
-
getL2gwStaleVlanCleanupDelaySecs
public org.opendaylight.yangtools.yang.common.Uint16 getL2gwStaleVlanCleanupDelaySecs()
-
getTempSmacLearnTimeout
public org.opendaylight.yangtools.yang.common.Uint16 getTempSmacLearnTimeout()
-
isAutoConfigTransportZones
public java.lang.Boolean isAutoConfigTransportZones()
-
isAutoCreateBridge
public java.lang.Boolean isAutoCreateBridge()
-
isIntBridgeGenMac
public java.lang.Boolean isIntBridgeGenMac()
-
isOpenstackVniSemanticsEnforced
public java.lang.Boolean isOpenstackVniSemanticsEnforced()
-
isPuntLldpToController
public java.lang.Boolean isPuntLldpToController()
-
isUseOfTunnels
public java.lang.Boolean isUseOfTunnels()
-
augmentation
public <E$$ extends org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig>> E$$ augmentation(java.lang.Class<E$$> augmentationType)
-
setArpPuntTimeout
public ElanConfigBuilder setArpPuntTimeout(org.opendaylight.yangtools.yang.common.Uint32 value)
-
setArpPuntTimeout
@Deprecated(forRemoval=true) public ElanConfigBuilder setArpPuntTimeout(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setArpPuntTimeout(Uint32)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setControllerInactivityProbe
public ElanConfigBuilder setControllerInactivityProbe(org.opendaylight.yangtools.yang.common.Uint32 value)
-
setControllerInactivityProbe
@Deprecated(forRemoval=true) public ElanConfigBuilder setControllerInactivityProbe(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setControllerInactivityProbe(Uint32)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setControllerMaxBackoff
public ElanConfigBuilder setControllerMaxBackoff(org.opendaylight.yangtools.yang.common.Uint32 value)
-
setControllerMaxBackoff
@Deprecated(forRemoval=true) public ElanConfigBuilder setControllerMaxBackoff(java.lang.Long value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setControllerMaxBackoff(Uint32)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setL2gwLogicalSwitchDelaySecs
public ElanConfigBuilder setL2gwLogicalSwitchDelaySecs(org.opendaylight.yangtools.yang.common.Uint16 value)
-
setL2gwLogicalSwitchDelaySecs
@Deprecated(forRemoval=true) public ElanConfigBuilder setL2gwLogicalSwitchDelaySecs(java.lang.Integer value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setL2gwLogicalSwitchDelaySecs(Uint16)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setL2gwStaleVlanCleanupDelaySecs
public ElanConfigBuilder setL2gwStaleVlanCleanupDelaySecs(org.opendaylight.yangtools.yang.common.Uint16 value)
-
setL2gwStaleVlanCleanupDelaySecs
@Deprecated(forRemoval=true) public ElanConfigBuilder setL2gwStaleVlanCleanupDelaySecs(java.lang.Integer value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setL2gwStaleVlanCleanupDelaySecs(Uint16)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setTempSmacLearnTimeout
public ElanConfigBuilder setTempSmacLearnTimeout(org.opendaylight.yangtools.yang.common.Uint16 value)
-
setTempSmacLearnTimeout
@Deprecated(forRemoval=true) public ElanConfigBuilder setTempSmacLearnTimeout(java.lang.Integer value)
Deprecated, for removal: This API element is subject to removal in a future version.Use {#link setTempSmacLearnTimeout(Uint16)} instead.Utility migration setter.- Parameters:
value
- field value in legacy type- Returns:
- this builder
-
setAutoConfigTransportZones
public ElanConfigBuilder setAutoConfigTransportZones(java.lang.Boolean value)
-
setAutoCreateBridge
public ElanConfigBuilder setAutoCreateBridge(java.lang.Boolean value)
-
setIntBridgeGenMac
public ElanConfigBuilder setIntBridgeGenMac(java.lang.Boolean value)
-
setOpenstackVniSemanticsEnforced
public ElanConfigBuilder setOpenstackVniSemanticsEnforced(java.lang.Boolean value)
-
setPuntLldpToController
public ElanConfigBuilder setPuntLldpToController(java.lang.Boolean value)
-
setUseOfTunnels
public ElanConfigBuilder setUseOfTunnels(java.lang.Boolean value)
-
addAugmentation
public ElanConfigBuilder addAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig>> augmentationType, org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig> augmentationValue)
-
removeAugmentation
public ElanConfigBuilder removeAugmentation(java.lang.Class<? extends org.opendaylight.yangtools.yang.binding.Augmentation<ElanConfig>> augmentationType)
-
build
public ElanConfig build()
- Specified by:
build
in interfaceorg.opendaylight.yangtools.concepts.Builder<ElanConfig>
- Specified by:
build
in interfaceorg.opendaylight.yangtools.concepts.CheckedBuilder<ElanConfig,java.lang.IllegalArgumentException>
-
-