X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fconfig%2Fconfig-manager-facade-xml%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Ffacade%2Fxml%2Fmapping%2Fattributes%2Fresolving%2FEnumAttributeResolvingStrategy.java;fp=opendaylight%2Fconfig%2Fconfig-manager-facade-xml%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Ffacade%2Fxml%2Fmapping%2Fattributes%2Fresolving%2FEnumAttributeResolvingStrategy.java;h=0000000000000000000000000000000000000000;hb=ac6f2699cd0c1e340cc32e8f0d0ca94c8e9c0cc0;hp=4d426b59cc23ce65ad8b2b48173920c5c1447975;hpb=f43b01b81319959b1907e3e04537f5169e7f33d8;p=controller.git diff --git a/opendaylight/config/config-manager-facade-xml/src/main/java/org/opendaylight/controller/config/facade/xml/mapping/attributes/resolving/EnumAttributeResolvingStrategy.java b/opendaylight/config/config-manager-facade-xml/src/main/java/org/opendaylight/controller/config/facade/xml/mapping/attributes/resolving/EnumAttributeResolvingStrategy.java deleted file mode 100644 index 4d426b59cc..0000000000 --- a/opendaylight/config/config-manager-facade-xml/src/main/java/org/opendaylight/controller/config/facade/xml/mapping/attributes/resolving/EnumAttributeResolvingStrategy.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2015, 2017 Cisco Systems, Inc. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ - -package org.opendaylight.controller.config.facade.xml.mapping.attributes.resolving; - -import com.google.common.base.Optional; -import com.google.common.base.Preconditions; -import java.util.Map; -import javax.management.openmbean.CompositeType; -import org.opendaylight.controller.config.facade.xml.osgi.EnumResolver; -import org.opendaylight.controller.config.facade.xml.util.Util; -import org.opendaylight.controller.config.util.xml.DocumentedException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -final class EnumAttributeResolvingStrategy extends AbstractAttributeResolvingStrategy { - - private static final Logger LOG = LoggerFactory.getLogger(EnumAttributeResolvingStrategy.class); - private final EnumResolver enumResolver; - - EnumAttributeResolvingStrategy(final CompositeType simpleType, final EnumResolver enumResolver) { - super(simpleType); - this.enumResolver = enumResolver; - } - - @Override - public String toString() { - return "ResolvedEnumAttribute [" + getOpenType().getClassName() + "]"; - } - - @Override - public Optional parseAttribute(final String attrName, final Object value) throws DocumentedException { - if (value == null) { - return Optional.absent(); - } - Util.checkType(value, Map.class); - Map valueMap = (Map) value; - Preconditions.checkArgument(valueMap.size() == 1, - "Unexpected value size " + value + " should be just 1 foe enum"); - final Object innerValue = valueMap.values().iterator().next(); - Util.checkType(innerValue, String.class); - - final String className = getOpenType().getTypeName(); - final Object parsedValue = enumResolver.fromYang(className, (String) innerValue); - - LOG.debug("Attribute {} : {} parsed to enum type {} with value {}", attrName, innerValue, getOpenType(), - parsedValue); - return Optional.of(parsedValue); - } -}