X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fconfig-netconf-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fconfignetconfconnector%2Fmapping%2Fattributes%2Ffromxml%2FAttributeConfigElement.java;h=fac1b358ce52365850bd05c861a8c751bc9c6503;hp=598935a0bc4f15ddcc61039723e313d55c0d9860;hb=f783b9873b0efedd5f757ed7300f4671c0e77bdd;hpb=16f2dc509f9f9429447bf9dc59c6c56cd09a7fc3 diff --git a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/mapping/attributes/fromxml/AttributeConfigElement.java b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/mapping/attributes/fromxml/AttributeConfigElement.java index 598935a0bc..fac1b358ce 100644 --- a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/mapping/attributes/fromxml/AttributeConfigElement.java +++ b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/mapping/attributes/fromxml/AttributeConfigElement.java @@ -9,26 +9,28 @@ package org.opendaylight.controller.netconf.confignetconfconnector.mapping.attributes.fromxml; import com.google.common.base.Optional; -import org.opendaylight.controller.config.yangjmxgenerator.attribute.AttributeIfc; -import org.opendaylight.controller.netconf.confignetconfconnector.mapping.attributes.resolving.AttributeResolvingStrategy; - import javax.management.openmbean.OpenType; +import org.opendaylight.controller.netconf.api.NetconfDocumentedException; +import org.opendaylight.controller.netconf.confignetconfconnector.mapping.attributes.resolving.AttributeResolvingStrategy; +import org.opendaylight.controller.netconf.confignetconfconnector.operations.editconfig.EditStrategyType; /** * Parsed xml element containing configuration for one attribute of an instance * of some module. Contains default value extracted from yang file. */ public class AttributeConfigElement { - private final Object dafaultValue; + private final Object defaultValue; private final Object value; + private final Optional editStrategy; private Optional resolvedValue; private Object resolvedDefaultValue; private String jmxName; - public AttributeConfigElement(Object dafaultValue, Object value) { - this.dafaultValue = dafaultValue; + public AttributeConfigElement(Object defaultValue, Object value, final EditStrategyType editStrategyType) { + this.defaultValue = defaultValue; this.value = value; + this.editStrategy = Optional.fromNullable(editStrategyType); } public void setJmxName(String jmxName) { @@ -40,35 +42,36 @@ public class AttributeConfigElement { } public void resolveValue(AttributeResolvingStrategy> attributeResolvingStrategy, - String attrName) { + String attrName) throws NetconfDocumentedException { resolvedValue = attributeResolvingStrategy.parseAttribute(attrName, value); - Optional resolvedDefault = attributeResolvingStrategy.parseAttribute(attrName, dafaultValue); + Optional resolvedDefault = attributeResolvingStrategy.parseAttribute(attrName, defaultValue); resolvedDefaultValue = resolvedDefault.isPresent() ? resolvedDefault.get() : null; - } - public static AttributeConfigElement create(AttributeIfc attributeIfc, Object value) { - String nullableDefault = attributeIfc.getNullableDefault(); - return create(nullableDefault, value); + public Optional getEditStrategy() { + return editStrategy; } - public static AttributeConfigElement create(String nullableDefault, Object value) { - return new AttributeConfigElement(nullableDefault, value); + public static AttributeConfigElement create(Object nullableDefault, Object value) { + return new AttributeConfigElement(nullableDefault, value, null); } - public static AttributeConfigElement createNullValue(AttributeIfc attributeIfc) { - return new AttributeConfigElement(attributeIfc.getNullableDefault(), null); + public static AttributeConfigElement createNullValue(Object nullableDefault) { + return new AttributeConfigElement(nullableDefault, null, null); } - public static AttributeConfigElement createNullValue(String nullableDefault) { - return new AttributeConfigElement(nullableDefault, null); + public static AttributeConfigElement create(final String nullableDefault, final Object value, final EditStrategyType editStrategyType) { + return new AttributeConfigElement(nullableDefault, value, editStrategyType); } - public Object getValue() { return value; } + public Object getDefaultValue() { + return defaultValue; + } + public Optional getResolvedValue() { return resolvedValue; } @@ -79,7 +82,7 @@ public class AttributeConfigElement { @Override public String toString() { - return "AttributeConfigElement [dafaultValue=" + dafaultValue + ", value=" + value + "]"; + return "AttributeConfigElement [defaultValue=" + defaultValue + ", value=" + value + "]"; } }