From d5702150e612565cd091f184064f017bc4cc3971 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 1 Jul 2014 17:38:34 +0200 Subject: [PATCH] BUG-868: remove deprecated use of QName constructors Direct instantiation of QName is deprecated, so remove references to them. Change-Id: I3f64303469fc655e2adfdac72377bce38439ab78 Signed-off-by: Robert Varga --- .../yangjmxgenerator/ConfigConstants.java | 36 +----- .../ModuleMXBeanEntryBuilder.java | 104 +++++++++--------- .../config/yangjmxgenerator/ModuleUtil.java | 4 +- .../yangjmxgenerator/RuntimeBeanEntry.java | 83 +++++++------- .../ModuleMXBeanEntryTest.java | 71 ++++++------ .../ServiceInterfaceEntryTest.java | 24 ++-- .../osgi/YangStoreSnapshotImpl.java | 23 ++-- .../osgi/NetconfOperationServiceImplTest.java | 33 +++--- 8 files changed, 186 insertions(+), 192 deletions(-) diff --git a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ConfigConstants.java b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ConfigConstants.java index ae06400195..775fa9fc20 100644 --- a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ConfigConstants.java +++ b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ConfigConstants.java @@ -7,11 +7,6 @@ */ package org.opendaylight.controller.config.yangjmxgenerator; -import java.net.URI; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; - import org.opendaylight.yangtools.yang.common.QName; public class ConfigConstants { @@ -33,33 +28,14 @@ public class ConfigConstants { public static final QName RPC_CONTEXT_REF_GROUPING_LEAF = createRpcXQName("context-instance"); public static final QName RPC_CONTEXT_INSTANCE_EXTENSION_QNAME = createRpcXQName("rpc-context-instance"); - public static QName createConfigQName(String localName) { - return createQName(CONFIG_NAMESPACE, "2013-04-05", localName); + public static QName createConfigQName(final String localName) { + // FIXME: pre-construct QNameModule + return QName.create(CONFIG_NAMESPACE, "2013-04-05", localName); } - public static QName createRpcXQName(String localName) { - return createQName("urn:ietf:params:xml:ns:yang:rpc-context", + public static QName createRpcXQName(final String localName) { + // FIXME: pre-construct QNameModule + return QName.create("urn:ietf:params:xml:ns:yang:rpc-context", "2013-06-17", localName); } - - /** - * - * @param uri - * @param revisionDate - * in format yyyy-MM-dd - * @param localName - * @return - */ - private static QName createQName(String uri, String revisionDate, - String localName) { - SimpleDateFormat revisionFormat = new SimpleDateFormat("yyyy-MM-dd"); - Date revision; - try { - revision = revisionFormat.parse(revisionDate); - } catch (ParseException e) { - throw new RuntimeException(e); - } - return new QName(URI.create(uri), revision, localName); - } - } diff --git a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryBuilder.java b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryBuilder.java index 89f3a4a519..d8c5a56fb7 100644 --- a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryBuilder.java +++ b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryBuilder.java @@ -18,6 +18,7 @@ import com.google.common.base.Optional; import com.google.common.collect.Collections2; import com.google.common.collect.Maps; import com.google.common.collect.Sets; + import java.util.Collection; import java.util.Collections; import java.util.HashMap; @@ -26,7 +27,9 @@ import java.util.Objects; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; + import javax.annotation.Nullable; + import org.opendaylight.controller.config.yangjmxgenerator.attribute.AbstractDependencyAttribute; import org.opendaylight.controller.config.yangjmxgenerator.attribute.AttributeIfc; import org.opendaylight.controller.config.yangjmxgenerator.attribute.DependencyAttribute; @@ -64,27 +67,27 @@ final class ModuleMXBeanEntryBuilder { private TypeProviderWrapper typeProviderWrapper; private String packageName; - public ModuleMXBeanEntryBuilder setModule(Module module) { + public ModuleMXBeanEntryBuilder setModule(final Module module) { this.currentModule = module; return this; } - public ModuleMXBeanEntryBuilder setqNamesToSIEs(Map qNamesToSIEs) { + public ModuleMXBeanEntryBuilder setqNamesToSIEs(final Map qNamesToSIEs) { this.qNamesToSIEs = qNamesToSIEs; return this; } - public ModuleMXBeanEntryBuilder setSchemaContext(SchemaContext schemaContext) { + public ModuleMXBeanEntryBuilder setSchemaContext(final SchemaContext schemaContext) { this.schemaContext = schemaContext; return this; } - public ModuleMXBeanEntryBuilder setTypeProviderWrapper(TypeProviderWrapper typeProviderWrapper) { + public ModuleMXBeanEntryBuilder setTypeProviderWrapper(final TypeProviderWrapper typeProviderWrapper) { this.typeProviderWrapper = typeProviderWrapper; return this; } - public ModuleMXBeanEntryBuilder setPackageName(String packageName) { + public ModuleMXBeanEntryBuilder setPackageName(final String packageName) { this.packageName = packageName; return this; } @@ -147,7 +150,7 @@ final class ModuleMXBeanEntryBuilder { return result; } - private static void cleanUpNulls(Map result) { + private static void cleanUpNulls(final Map result) { for (Map.Entry entry : result.entrySet()) { ModuleMXBeanEntry module = entry.getValue(); if (module.getAttributes() == null) { @@ -160,14 +163,14 @@ final class ModuleMXBeanEntryBuilder { } } - private static void checkUnaugumentedIdentities(Map unaugmentedModuleIdentities) { + private static void checkUnaugumentedIdentities(final Map unaugmentedModuleIdentities) { if (unaugmentedModuleIdentities.size() > 0) { logger.warn("Augmentation not found for all currentModule identities: {}", unaugmentedModuleIdentities.keySet()); } } - private static void checkAttributeNamesUniqueness(Map uniqueGeneratedClassesNames, Map result) { + private static void checkAttributeNamesUniqueness(final Map uniqueGeneratedClassesNames, final Map result) { for (Map.Entry entry : result.entrySet()) { checkUniqueRuntimeBeanAttributesName(entry.getValue(), uniqueGeneratedClassesNames); @@ -212,29 +215,30 @@ final class ModuleMXBeanEntryBuilder { return moduleIdentities; } - private Collection castChildNodesToChoiceCases(Set childNodes) { + private Collection castChildNodesToChoiceCases(final Set childNodes) { return Collections2.transform(childNodes, new Function() { @Nullable @Override - public ChoiceCaseNode apply(@Nullable DataSchemaNode input) { + public ChoiceCaseNode apply(@Nullable final DataSchemaNode input) { return (ChoiceCaseNode) input; } }); } - private boolean areAllChildrenChoiceCaseNodes(Set childNodes) { + private boolean areAllChildrenChoiceCaseNodes(final Set childNodes) { for (DataSchemaNode childNode : childNodes) { - if (childNode instanceof ChoiceCaseNode == false) + if (childNode instanceof ChoiceCaseNode == false) { return false; + } } return true; } - private void processChoiceCaseNode(Map result, - Map uniqueGeneratedClassesNames, String configModulePrefix, - Map moduleIdentities, - Map unaugmentedModuleIdentities, AugmentationSchema augmentation, - DataSchemaNode when) { + private void processChoiceCaseNode(final Map result, + final Map uniqueGeneratedClassesNames, final String configModulePrefix, + final Map moduleIdentities, + final Map unaugmentedModuleIdentities, final AugmentationSchema augmentation, + final DataSchemaNode when) { ChoiceCaseNode choiceCaseNode = (ChoiceCaseNode) when; if (choiceCaseNode.getConstraints() == null || choiceCaseNode.getConstraints().getWhenCondition() == null) { @@ -301,12 +305,12 @@ final class ModuleMXBeanEntryBuilder { } checkState(Objects.equals(nullableDummyContainerName, moduleMXBeanEntry.getNullableDummyContainerName()), "Mismatch in module " + moduleMXBeanEntry.toString() + " - dummy container must be present/missing in" + - " both state and configuration"); + " both state and configuration"); } else { ModuleMXBeanEntry.ModuleMXBeanEntryInitial initial = new ModuleMXBeanEntry.ModuleMXBeanEntryInitialBuilder() - .setIdSchemaNode(moduleIdentity).setPackageName(packageName).setJavaNamePrefix(javaNamePrefix) - .setNamespace(currentModule.getNamespace().toString()).setqName(ModuleUtil.getQName(currentModule)) - .build(); + .setIdSchemaNode(moduleIdentity).setPackageName(packageName).setJavaNamePrefix(javaNamePrefix) + .setNamespace(currentModule.getNamespace().toString()).setqName(ModuleUtil.getQName(currentModule)) + .build(); // construct ModuleMXBeanEntry ModuleMXBeanEntry moduleMXBeanEntry = new ModuleMXBeanEntry(initial, yangToAttributes, providedServices, @@ -319,8 +323,8 @@ final class ModuleMXBeanEntryBuilder { } } - private void checkUniqueRuntimeBeansGeneratedClasses(Map uniqueGeneratedClassesNames, - DataSchemaNode when, Collection runtimeBeans) { + private void checkUniqueRuntimeBeansGeneratedClasses(final Map uniqueGeneratedClassesNames, + final DataSchemaNode when, final Collection runtimeBeans) { for (RuntimeBeanEntry runtimeBean : runtimeBeans) { final String javaNameOfRuntimeMXBean = runtimeBean.getJavaNameOfRuntimeMXBean(); if (uniqueGeneratedClassesNames.containsKey(javaNameOfRuntimeMXBean)) { @@ -331,8 +335,8 @@ final class ModuleMXBeanEntryBuilder { } } - private static void checkUniqueRuntimeBeanAttributesName(ModuleMXBeanEntry mxBeanEntry, - Map uniqueGeneratedClassesNames) { + private static void checkUniqueRuntimeBeanAttributesName(final ModuleMXBeanEntry mxBeanEntry, + final Map uniqueGeneratedClassesNames) { for (RuntimeBeanEntry runtimeBeanEntry : mxBeanEntry.getRuntimeBeans()) { for (String runtimeAttName : runtimeBeanEntry.getYangPropertiesToTypesMap().keySet()) { if (mxBeanEntry.getAttributes().keySet().contains(runtimeAttName)) { @@ -344,8 +348,8 @@ final class ModuleMXBeanEntryBuilder { } } - private void checkUniqueAttributesWithGeneratedClass(Map uniqueGeneratedClassNames, - QName parentQName, Map yangToAttributes) { + private void checkUniqueAttributesWithGeneratedClass(final Map uniqueGeneratedClassNames, + final QName parentQName, final Map yangToAttributes) { for (Map.Entry attr : yangToAttributes.entrySet()) { if (attr.getValue() instanceof TOAttribute) { checkUniqueTOAttr(uniqueGeneratedClassNames, parentQName, (TOAttribute) attr.getValue()); @@ -357,7 +361,7 @@ final class ModuleMXBeanEntryBuilder { } } - private void checkUniqueTOAttr(Map uniqueGeneratedClassNames, QName parentQName, TOAttribute attr) { + private void checkUniqueTOAttr(final Map uniqueGeneratedClassNames, final QName parentQName, final TOAttribute attr) { final String upperCaseCamelCase = attr.getUpperCaseCammelCase(); if (uniqueGeneratedClassNames.containsKey(upperCaseCamelCase)) { QName firstDefinedQName = uniqueGeneratedClassNames.get(upperCaseCamelCase); @@ -367,9 +371,9 @@ final class ModuleMXBeanEntryBuilder { } } - private Collection fillRuntimeBeans(DataNodeContainer dataNodeContainer, Module currentModule, - TypeProviderWrapper typeProviderWrapper, String packageName, String moduleLocalNameFromXPath, - String javaNamePrefix) { + private Collection fillRuntimeBeans(final DataNodeContainer dataNodeContainer, final Module currentModule, + final TypeProviderWrapper typeProviderWrapper, final String packageName, final String moduleLocalNameFromXPath, + final String javaNamePrefix) { return RuntimeBeanEntry.extractClassNameToRuntimeBeanMap(packageName, dataNodeContainer, moduleLocalNameFromXPath, typeProviderWrapper, javaNamePrefix, currentModule).values(); @@ -383,7 +387,7 @@ final class ModuleMXBeanEntryBuilder { * @param choiceCaseNode state or configuration case statement * @return either choiceCaseNode or its only child container */ - private HAS_CHILDREN_AND_QNAME getDataNodeContainer(ChoiceCaseNode choiceCaseNode) { + private HAS_CHILDREN_AND_QNAME getDataNodeContainer(final ChoiceCaseNode choiceCaseNode) { Set childNodes = choiceCaseNode.getChildNodes(); if (childNodes.size() == 1) { DataSchemaNode onlyChild = childNodes.iterator().next(); @@ -398,9 +402,9 @@ final class ModuleMXBeanEntryBuilder { return (HAS_CHILDREN_AND_QNAME) choiceCaseNode; } - private Map fillConfiguration(DataNodeContainer dataNodeContainer, Module currentModule, - TypeProviderWrapper typeProviderWrapper, Map qNamesToSIEs, - SchemaContext schemaContext, String packageName) { + private Map fillConfiguration(final DataNodeContainer dataNodeContainer, final Module currentModule, + final TypeProviderWrapper typeProviderWrapper, final Map qNamesToSIEs, + final SchemaContext schemaContext, final String packageName) { Map yangToAttributes = new HashMap<>(); Set childNodes = dataNodeContainer.getChildNodes(); for (DataSchemaNode attrNode : childNodes) { @@ -411,8 +415,8 @@ final class ModuleMXBeanEntryBuilder { return yangToAttributes; } - private Map findProvidedServices(IdentitySchemaNode moduleIdentity, Module currentModule, - Map qNamesToSIEs, SchemaContext schemaContext) { + private Map findProvidedServices(final IdentitySchemaNode moduleIdentity, final Module currentModule, + final Map qNamesToSIEs, final SchemaContext schemaContext) { Map result = new HashMap<>(); for (UnknownSchemaNode unknownNode : moduleIdentity.getUnknownSchemaNodes()) { if (ConfigConstants.PROVIDED_SERVICE_EXTENSION_QNAME.equals(unknownNode.getNodeType())) { @@ -425,9 +429,9 @@ final class ModuleMXBeanEntryBuilder { return result; } - private AttributeIfc getAttributeValue(DataSchemaNode attrNode, Module currentModule, - Map qNamesToSIEs, TypeProviderWrapper typeProviderWrapper, - SchemaContext schemaContext, String packageName) { + private AttributeIfc getAttributeValue(final DataSchemaNode attrNode, final Module currentModule, + final Map qNamesToSIEs, final TypeProviderWrapper typeProviderWrapper, + final SchemaContext schemaContext, final String packageName) { if (attrNode instanceof LeafSchemaNode) { // simple type @@ -460,9 +464,9 @@ final class ModuleMXBeanEntryBuilder { } } - private Optional extractDependency(DataNodeContainer dataNodeContainer, - DataSchemaNode attrNode, Module currentModule, Map qNamesToSIEs, - SchemaContext schemaContext) { + private Optional extractDependency(final DataNodeContainer dataNodeContainer, + final DataSchemaNode attrNode, final Module currentModule, final Map qNamesToSIEs, + final SchemaContext schemaContext) { if (dataNodeContainer.getUses().size() == 1 && getChildNodeSizeWithoutUses(dataNodeContainer) == 0) { // reference UsesNode usesNode = dataNodeContainer.getUses().iterator().next(); @@ -490,7 +494,7 @@ final class ModuleMXBeanEntryBuilder { return Optional.absent(); } - private int getChildNodeSizeWithoutUses(DataNodeContainer csn) { + private int getChildNodeSizeWithoutUses(final DataNodeContainer csn) { int result = 0; for (DataSchemaNode dsn : csn.getChildNodes()) { if (dsn.isAddedByUses() == false) { @@ -500,8 +504,8 @@ final class ModuleMXBeanEntryBuilder { return result; } - private ServiceInterfaceEntry findSIE(String prefixAndIdentityLocalName, Module currentModule, - Map qNamesToSIEs, SchemaContext schemaContext) { + private ServiceInterfaceEntry findSIE(final String prefixAndIdentityLocalName, final Module currentModule, + final Map qNamesToSIEs, final SchemaContext schemaContext) { Matcher m = PREFIX_COLON_LOCAL_NAME.matcher(prefixAndIdentityLocalName); Module foundModule; @@ -518,13 +522,13 @@ final class ModuleMXBeanEntryBuilder { foundModule = currentModule; // no prefix => SIE is in currentModule localSIName = prefixAndIdentityLocalName; } - QName siQName = new QName(foundModule.getNamespace(), foundModule.getRevision(), localSIName); + QName siQName = QName.create(foundModule.getNamespace(), foundModule.getRevision(), localSIName); ServiceInterfaceEntry sie = qNamesToSIEs.get(siQName); checkState(sie != null, "Cannot find referenced Service Interface by " + prefixAndIdentityLocalName); return sie; } - private ModuleImport findModuleImport(Module module, String prefix) { + private ModuleImport findModuleImport(final Module module, final String prefix) { for (ModuleImport moduleImport : module.getImports()) { if (moduleImport.getPrefix().equals(prefix)) { return moduleImport; @@ -534,13 +538,13 @@ final class ModuleMXBeanEntryBuilder { } @VisibleForTesting - static Matcher getWhenConditionMatcher(String prefix, RevisionAwareXPath whenConstraint) { + static Matcher getWhenConditionMatcher(final String prefix, final RevisionAwareXPath whenConstraint) { String xpathRegex = MODULE_CONDITION_XPATH_TEMPLATE.replace(MAGIC_STRING, prefix); Pattern pattern = Pattern.compile(xpathRegex); return pattern.matcher(whenConstraint.toString()); } - String getConfigModulePrefixFromImport(Module currentModule) { + String getConfigModulePrefixFromImport(final Module currentModule) { for (ModuleImport currentImport : currentModule.getImports()) { if (currentImport.getModuleName().equals(ConfigConstants.CONFIG_MODULE)) { return currentImport.getPrefix(); diff --git a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleUtil.java b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleUtil.java index 5fea8fd078..ccd701d1fb 100644 --- a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleUtil.java +++ b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleUtil.java @@ -12,7 +12,7 @@ import org.opendaylight.yangtools.yang.model.api.Module; public class ModuleUtil { - public static QName getQName(Module currentModule){ - return new QName(currentModule.getNamespace(), currentModule.getRevision(), currentModule.getName()); + public static QName getQName(final Module currentModule) { + return QName.create(currentModule.getNamespace(), currentModule.getRevision(), currentModule.getName()); } } diff --git a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/RuntimeBeanEntry.java b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/RuntimeBeanEntry.java index c941d1504d..23b071c817 100644 --- a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/RuntimeBeanEntry.java +++ b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/RuntimeBeanEntry.java @@ -13,6 +13,7 @@ import static com.google.common.base.Preconditions.checkState; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Optional; import com.google.common.collect.Lists; + import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -25,6 +26,7 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.TreeSet; + import org.opendaylight.controller.config.yangjmxgenerator.attribute.AttributeIfc; import org.opendaylight.controller.config.yangjmxgenerator.attribute.JavaAttribute; import org.opendaylight.controller.config.yangjmxgenerator.attribute.ListAttribute; @@ -65,11 +67,11 @@ public class RuntimeBeanEntry { private final Set rpcs; @VisibleForTesting - RuntimeBeanEntry(String packageName, - DataNodeContainer nodeForReporting, String yangName, - String javaNamePrefix, boolean isRoot, - Optional keyYangName, List attributes, - List children, Set rpcs) { + RuntimeBeanEntry(final String packageName, + final DataNodeContainer nodeForReporting, final String yangName, + final String javaNamePrefix, final boolean isRoot, + final Optional keyYangName, final List attributes, + final List children, final Set rpcs) { checkArgument(isRoot == false || keyYangName.isPresent() == false, "Root RuntimeBeanEntry must not have key " + "set"); @@ -86,7 +88,7 @@ public class RuntimeBeanEntry { for (AttributeIfc a : attributes) { checkState(map.containsKey(a.getAttributeYangName()) == false, "Attribute already defined: " + a.getAttributeYangName() - + " in " + nodeForReporting); + + " in " + nodeForReporting); map.put(a.getAttributeYangName(), a); } @@ -110,9 +112,9 @@ public class RuntimeBeanEntry { * not contain special configuration for it. */ public static Map extractClassNameToRuntimeBeanMap( - String packageName, DataNodeContainer container, - String moduleYangName, TypeProviderWrapper typeProviderWrapper, - String javaNamePrefix, Module currentModule) { + final String packageName, final DataNodeContainer container, + final String moduleYangName, final TypeProviderWrapper typeProviderWrapper, + final String javaNamePrefix, final Module currentModule) { Map> identitiesToRpcs = getIdentitiesToRpcs(currentModule); @@ -151,7 +153,7 @@ public class RuntimeBeanEntry { } private static Map> getIdentitiesToRpcs( - Module currentModule) { + final Module currentModule) { // currently only looks for local identities (found in currentModule) Map> result = new HashMap<>(); for (IdentitySchemaNode identity : currentModule.getIdentities()) { @@ -164,14 +166,16 @@ public class RuntimeBeanEntry { if (input != null) { for (UsesNode uses : input.getUses()) { - if (uses.getGroupingPath().getPath().size() != 1) + if (uses.getGroupingPath().getPath().size() != 1) { continue; + } // check grouping path QName qname = uses.getGroupingPath().getPath().get(0); if (false == qname - .equals(ConfigConstants.RPC_CONTEXT_REF_GROUPING_QNAME)) + .equals(ConfigConstants.RPC_CONTEXT_REF_GROUPING_QNAME)) { continue; + } for (SchemaNode refinedNode : uses.getRefines().values()) { @@ -181,7 +185,7 @@ public class RuntimeBeanEntry { .equals(unknownSchemaNode.getNodeType())) { String localIdentityName = unknownSchemaNode .getNodeParameter(); - QName identityQName = new QName( + QName identityQName = QName.create( currentModule.getNamespace(), currentModule.getRevision(), localIdentityName); @@ -208,9 +212,9 @@ public class RuntimeBeanEntry { * in subtree. */ private static AttributesRpcsAndRuntimeBeans extractSubtree( - String packageName, DataNodeContainer subtree, - TypeProviderWrapper typeProviderWrapper, Module currentModule, - Map> identitiesToRpcs) { + final String packageName, final DataNodeContainer subtree, + final TypeProviderWrapper typeProviderWrapper, final Module currentModule, + final Map> identitiesToRpcs) { List attributes = Lists.newArrayList(); // List javaAttributes = new ArrayList<>(); @@ -258,7 +262,7 @@ public class RuntimeBeanEntry { if (ConfigConstants.RPC_CONTEXT_INSTANCE_EXTENSION_QNAME .equals(unknownSchemaNode.getNodeType())) { String localIdentityName = unknownSchemaNode.getNodeParameter(); - QName identityQName = new QName(currentModule.getNamespace(), + QName identityQName = QName.create(currentModule.getNamespace(), currentModule.getRevision(), localIdentityName); Set rpcDefinitions = identitiesToRpcs .get(identityQName); @@ -290,8 +294,8 @@ public class RuntimeBeanEntry { for (DataSchemaNode childNode : sortAttributes(rpcDefinition.getInput() .getChildNodes())) { if (childNode.isAddedByUses() == false) { // skip - // refined - // context-instance + // refined + // context-instance checkArgument(childNode instanceof LeafSchemaNode, "Unexpected type of rpc input type. " + "Currently only leafs and empty output nodes are supported, got " + childNode); JavaAttribute javaAttribute = new JavaAttribute( @@ -310,8 +314,8 @@ public class RuntimeBeanEntry { attributes, rpcs); } - private static AttributeIfc getReturnTypeAttribute(DataSchemaNode child, TypeProviderWrapper typeProviderWrapper, - String packageName) { + private static AttributeIfc getReturnTypeAttribute(final DataSchemaNode child, final TypeProviderWrapper typeProviderWrapper, + final String packageName) { if (child instanceof LeafSchemaNode) { LeafSchemaNode leaf = (LeafSchemaNode) child; return new JavaAttribute(leaf, typeProviderWrapper); @@ -328,10 +332,10 @@ public class RuntimeBeanEntry { } } - private static Collection sortAttributes(Set childNodes) { + private static Collection sortAttributes(final Set childNodes) { final TreeSet dataSchemaNodes = new TreeSet<>(new Comparator() { @Override - public int compare(DataSchemaNode o1, DataSchemaNode o2) { + public int compare(final DataSchemaNode o1, final DataSchemaNode o2) { return o1.getQName().getLocalName().compareTo(o2.getQName().getLocalName()); } }); @@ -339,20 +343,21 @@ public class RuntimeBeanEntry { return dataSchemaNodes; } - private static boolean isInnerStateBean(DataSchemaNode child) { + private static boolean isInnerStateBean(final DataSchemaNode child) { for (UnknownSchemaNode unknownSchemaNode : child .getUnknownSchemaNodes()) { if (unknownSchemaNode.getNodeType().equals( - ConfigConstants.INNER_STATE_BEAN_EXTENSION_QNAME)) + ConfigConstants.INNER_STATE_BEAN_EXTENSION_QNAME)) { return true; + } } return false; } - private static RuntimeBeanEntry createHierarchical(String packageName, - ListSchemaNode listSchemaNode, - TypeProviderWrapper typeProviderWrapper, Module currentModule, - Map> identitiesToRpcs) { + private static RuntimeBeanEntry createHierarchical(final String packageName, + final ListSchemaNode listSchemaNode, + final TypeProviderWrapper typeProviderWrapper, final Module currentModule, + final Map> identitiesToRpcs) { // supported are numeric types, strings, enums // get all attributes @@ -387,10 +392,10 @@ public class RuntimeBeanEntry { return rbFromAttributes; } - private static RuntimeBeanEntry createRoot(String packageName, - DataNodeContainer nodeForReporting, String attributeYangName, - List attributes, String javaNamePrefix, - List children, Set rpcs) { + private static RuntimeBeanEntry createRoot(final String packageName, + final DataNodeContainer nodeForReporting, final String attributeYangName, + final List attributes, final String javaNamePrefix, + final List children, final Set rpcs) { return new RuntimeBeanEntry(packageName, nodeForReporting, attributeYangName, javaNamePrefix, true, Optional. absent(), attributes, children, rpcs); @@ -442,8 +447,8 @@ public class RuntimeBeanEntry { private final Set rpcs; public AttributesRpcsAndRuntimeBeans( - List runtimeBeanEntries, - List attributes, Set rpcs) { + final List runtimeBeanEntries, + final List attributes, final Set rpcs) { this.runtimeBeanEntries = runtimeBeanEntries; this.attributes = attributes; this.rpcs = rpcs; @@ -472,8 +477,8 @@ public class RuntimeBeanEntry { private final AttributeIfc returnType; private final String yangName; - Rpc(AttributeIfc returnType, String name, String yangName, - List parameters) { + Rpc(final AttributeIfc returnType, final String name, final String yangName, + final List parameters) { this.returnType = returnType; this.name = name; this.parameters = parameters; @@ -503,12 +508,12 @@ public class RuntimeBeanEntry { return getJavaNameOfRuntimeMXBean(javaNamePrefix); } - public String getFullyQualifiedName(String typeName) { + public String getFullyQualifiedName(final String typeName) { return FullyQualifiedNameHelper.getFullyQualifiedName(packageName, typeName); } - private static String getJavaNameOfRuntimeMXBean(String javaNamePrefix) { + private static String getJavaNameOfRuntimeMXBean(final String javaNamePrefix) { return javaNamePrefix + MXBEAN_SUFFIX; } diff --git a/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryTest.java b/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryTest.java index dd44246867..fab273c600 100644 --- a/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryTest.java +++ b/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ModuleMXBeanEntryTest.java @@ -7,7 +7,35 @@ */ package org.opendaylight.controller.config.yangjmxgenerator; +import static org.hamcrest.CoreMatchers.is; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertTrue; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.mock; + import com.google.common.collect.Sets; + +import java.net.URI; +import java.net.URISyntaxException; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Collection; +import java.util.Collections; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.regex.Matcher; + +import javax.management.openmbean.ArrayType; +import javax.management.openmbean.CompositeType; +import javax.management.openmbean.SimpleType; + import org.junit.Before; import org.junit.Test; import org.opendaylight.controller.config.yangjmxgenerator.attribute.AttributeIfc; @@ -25,32 +53,6 @@ import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode; import org.opendaylight.yangtools.yang.model.api.RevisionAwareXPath; -import javax.management.openmbean.ArrayType; -import javax.management.openmbean.CompositeType; -import javax.management.openmbean.SimpleType; -import java.net.URI; -import java.net.URISyntaxException; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Collection; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; -import java.util.regex.Matcher; - -import static org.hamcrest.CoreMatchers.is; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertThat; -import static org.junit.Assert.assertTrue; -import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; - public class ModuleMXBeanEntryTest extends AbstractYangTest { public static final String PACKAGE_NAME = "pack2"; @@ -95,7 +97,7 @@ public class ModuleMXBeanEntryTest extends AbstractYangTest { PACKAGE_NAME,identitiesToSIs)); Map namesToMBEs = ModuleMXBeanEntry .create(jmxImplModule, modulesToSIEs, context, new TypeProviderWrapper(new TypeProviderImpl(context)) - , PACKAGE_NAME); + , PACKAGE_NAME); Map attributes = namesToMBEs.get("impl-netconf") .getAttributes(); @@ -120,7 +122,7 @@ public class ModuleMXBeanEntryTest extends AbstractYangTest { assertThat(threadFactoryAttribute.getType().getName(), is("ObjectName")); } - private void assertCorrectAttributesSize(Map namesToMBEs, Map attributes) { + private void assertCorrectAttributesSize(final Map namesToMBEs, final Map attributes) { assertEquals(14, attributes.size()); assertEquals(1, namesToMBEs.get("impl-netconf").getRuntimeBeans().size()); assertEquals(2, namesToMBEs.get("impl-netconf").getRuntimeBeans().iterator().next().getAttributes().size()); @@ -131,10 +133,11 @@ public class ModuleMXBeanEntryTest extends AbstractYangTest { } protected RuntimeBeanEntry findFirstByYangName( - Collection runtimeBeans, String yangName) { + final Collection runtimeBeans, final String yangName) { for (RuntimeBeanEntry rb : runtimeBeans) { - if (yangName.equals(rb.getYangName())) + if (yangName.equals(rb.getYangName())) { return rb; + } } throw new IllegalArgumentException("Yang name not found:" + yangName + " in " + runtimeBeans); @@ -150,7 +153,7 @@ public class ModuleMXBeanEntryTest extends AbstractYangTest { "/config:modules/config:module/config:type=\"threadpool-dynamic\""); } - private void assertMatches(String prefix, String input) { + private void assertMatches(final String prefix, final String input) { RevisionAwareXPath whenConstraint = mock(RevisionAwareXPath.class); doReturn(input).when(whenConstraint).toString(); Matcher output = ModuleMXBeanEntryBuilder.getWhenConditionMatcher(prefix, @@ -181,7 +184,7 @@ public class ModuleMXBeanEntryTest extends AbstractYangTest { is((Type) Types.typeForClass(Long.class))); } // check dependency on thread factory - QName threadfactoryQName = new QName(THREADS_NAMESPACE, + QName threadfactoryQName = QName.create(THREADS_NAMESPACE, THREADS_REVISION_DATE, "threadfactory"); ServiceInterfaceEntry threadFactorySIEntry = modulesToSIEs .get(threadfactoryQName); @@ -192,7 +195,7 @@ public class ModuleMXBeanEntryTest extends AbstractYangTest { DataSchemaNode mockedDataSchemaNode = mock(DataSchemaNode.class); doReturn(Collections.emptyList()).when(mockedDataSchemaNode) - .getUnknownSchemaNodes(); + .getUnknownSchemaNodes(); doReturn(threadfactoryQName).when(mockedDataSchemaNode).getQName(); AttributeIfc expectedDependencyAttribute = new DependencyAttribute( mockedDataSchemaNode, threadFactorySIEntry, @@ -200,7 +203,7 @@ public class ModuleMXBeanEntryTest extends AbstractYangTest { assertThat(actualThreadFactory, is(expectedDependencyAttribute)); assertThat( dynamicThreadPool - .getFullyQualifiedName("DynamicThreadPoolModuleMXBean"), + .getFullyQualifiedName("DynamicThreadPoolModuleMXBean"), is(PACKAGE_NAME + ".DynamicThreadPoolModuleMXBean")); assertThat(dynamicThreadPool.getNullableDescription(), is("threadpool-dynamic description")); diff --git a/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ServiceInterfaceEntryTest.java b/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ServiceInterfaceEntryTest.java index eed8695103..f22edbf948 100644 --- a/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ServiceInterfaceEntryTest.java +++ b/opendaylight/config/yang-jmx-generator/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/ServiceInterfaceEntryTest.java @@ -7,7 +7,12 @@ */ package org.opendaylight.controller.config.yangjmxgenerator; +import static org.hamcrest.core.Is.is; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertThat; + import com.google.common.collect.Sets; + import java.net.URI; import java.net.URISyntaxException; import java.text.ParseException; @@ -20,13 +25,11 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set; + import org.hamcrest.CoreMatchers; import org.junit.Test; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode; -import static org.hamcrest.core.Is.is; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertThat; public class ServiceInterfaceEntryTest extends AbstractYangTest { public static final String PACKAGE_NAME = "packages.sis"; @@ -53,15 +56,15 @@ public class ServiceInterfaceEntryTest extends AbstractYangTest { } } - public static final QName EVENTBUS_QNAME = new QName(THREADS_NAMESPACE, + public static final QName EVENTBUS_QNAME = QName.create(THREADS_NAMESPACE, THREADS_REVISION_DATE, "eventbus"); - public static final QName THREADFACTORY_QNAME = new QName( + public static final QName THREADFACTORY_QNAME = QName.create( THREADS_NAMESPACE, THREADS_REVISION_DATE, "threadfactory"); - public static final QName THREADPOOL_QNAME = new QName(THREADS_NAMESPACE, + public static final QName THREADPOOL_QNAME = QName.create(THREADS_NAMESPACE, THREADS_REVISION_DATE, "threadpool"); - public static final QName SCHEDULED_THREADPOOL_QNAME = new QName( + public static final QName SCHEDULED_THREADPOOL_QNAME = QName.create( THREADS_NAMESPACE, THREADS_REVISION_DATE, "scheduled-threadpool"); - public static final QName SCHEDULED_EXECUTOR_SERVICE_QNAME = new QName( + public static final QName SCHEDULED_EXECUTOR_SERVICE_QNAME = QName.create( THREADS_NAMESPACE, THREADS_REVISION_DATE, "scheduled-executor-service"); public static final String SCHEDULED_THREADPOOL_INTERFACE_NAME = "ScheduledThreadPoolServiceInterface"; @@ -133,9 +136,10 @@ public class ServiceInterfaceEntryTest extends AbstractYangTest { + SCHEDULED_THREADPOOL_INTERFACE_NAME)); } - static String trimInnerSpacesOrNull(String input) { - if (input == null) + static String trimInnerSpacesOrNull(final String input) { + if (input == null) { return null; + } return input.replaceAll("\\s{2,}", " "); } } diff --git a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/YangStoreSnapshotImpl.java b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/YangStoreSnapshotImpl.java index 782998067f..827708f31c 100644 --- a/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/YangStoreSnapshotImpl.java +++ b/opendaylight/netconf/config-netconf-connector/src/main/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/YangStoreSnapshotImpl.java @@ -9,6 +9,13 @@ package org.opendaylight.controller.netconf.confignetconfconnector.osgi; import com.google.common.collect.Maps; + +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + import org.opendaylight.controller.config.yangjmxgenerator.ModuleMXBeanEntry; import org.opendaylight.controller.config.yangjmxgenerator.PackageTranslator; import org.opendaylight.controller.config.yangjmxgenerator.ServiceInterfaceEntry; @@ -21,18 +28,12 @@ import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Set; - public class YangStoreSnapshotImpl implements YangStoreSnapshot { private static final Logger logger = LoggerFactory.getLogger(YangStoreSnapshotImpl.class); private final Map> moduleMXBeanEntryMap; + Map> moduleMXBeanEntryMap; private final Map> qNamesToIdentitiesToModuleMXBeanEntries; @@ -40,7 +41,7 @@ public class YangStoreSnapshotImpl implements YangStoreSnapshot { private final SchemaContext schemaContext; - public YangStoreSnapshotImpl(SchemaContext resolveSchemaContext) { + public YangStoreSnapshotImpl(final SchemaContext resolveSchemaContext) { logger.trace("Resolved modules:{}", resolveSchemaContext.getModules()); this.schemaContext = resolveSchemaContext; // JMX generator @@ -60,7 +61,7 @@ public class YangStoreSnapshotImpl implements YangStoreSnapshot { qNamesToSIEs.put(sieEntry.getKey(), sieEntry.getValue()); } else { throw new IllegalStateException("Cannot add two SIE with same qname " - + sieEntry.getValue()); + + sieEntry.getValue()); } } } @@ -75,7 +76,7 @@ public class YangStoreSnapshotImpl implements YangStoreSnapshot { TypeProviderWrapper typeProviderWrapper = new TypeProviderWrapper( new TypeProviderImpl(resolveSchemaContext)); - QName qName = new QName(module.getNamespace(), module.getRevision(), module.getName()); + QName qName = QName.create(module.getNamespace(), module.getRevision(), module.getName()); Map namesToMBEs = Collections.unmodifiableMap(ModuleMXBeanEntry.create(module, qNamesToSIEs, resolveSchemaContext, @@ -105,7 +106,7 @@ public class YangStoreSnapshotImpl implements YangStoreSnapshot { } @Override - public String getModuleSource(org.opendaylight.yangtools.yang.model.api.ModuleIdentifier moduleIdentifier) { + public String getModuleSource(final org.opendaylight.yangtools.yang.model.api.ModuleIdentifier moduleIdentifier) { return schemaContext.getModuleSource(moduleIdentifier).get(); } diff --git a/opendaylight/netconf/config-netconf-connector/src/test/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/NetconfOperationServiceImplTest.java b/opendaylight/netconf/config-netconf-connector/src/test/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/NetconfOperationServiceImplTest.java index a063f5786a..1e650c08b1 100644 --- a/opendaylight/netconf/config-netconf-connector/src/test/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/NetconfOperationServiceImplTest.java +++ b/opendaylight/netconf/config-netconf-connector/src/test/java/org/opendaylight/controller/netconf/confignetconfconnector/osgi/NetconfOperationServiceImplTest.java @@ -8,14 +8,12 @@ package org.opendaylight.controller.netconf.confignetconfconnector.osgi; +import static org.junit.Assert.fail; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.mock; + import com.google.common.collect.Maps; import com.google.common.collect.Sets; -import org.junit.Assert; -import org.junit.Test; -import org.junit.matchers.JUnitMatchers; -import org.opendaylight.controller.config.api.LookupRegistry; -import org.opendaylight.controller.config.yangjmxgenerator.ModuleMXBeanEntry; -import org.opendaylight.yangtools.yang.common.QName; import java.net.URI; import java.text.ParseException; @@ -24,9 +22,12 @@ import java.util.Date; import java.util.Map; import java.util.Set; -import static org.junit.Assert.fail; -import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; +import org.junit.Assert; +import org.junit.Test; +import org.junit.matchers.JUnitMatchers; +import org.opendaylight.controller.config.api.LookupRegistry; +import org.opendaylight.controller.config.yangjmxgenerator.ModuleMXBeanEntry; +import org.opendaylight.yangtools.yang.common.QName; public class NetconfOperationServiceImplTest { @@ -72,15 +73,15 @@ public class NetconfOperationServiceImplTest { Assert.assertThat( message, JUnitMatchers - .containsString("missing from config subsystem but present in yangstore: [(namespace?revision=1970-01-01)qname2]")); + .containsString("missing from config subsystem but present in yangstore: [(namespace?revision=1970-01-01)qname2]")); Assert.assertThat( message, JUnitMatchers - .containsString("All modules present in config: [(namespace?revision=1970-01-01)qname1]")); + .containsString("All modules present in config: [(namespace?revision=1970-01-01)qname1]")); } } - private YangStoreSnapshot mockYangStoreSnapshot(String... qnames) { + private YangStoreSnapshot mockYangStoreSnapshot(final String... qnames) { YangStoreSnapshot mock = mock(YangStoreSnapshot.class); Map> map = Maps.newHashMap(); @@ -99,18 +100,18 @@ public class NetconfOperationServiceImplTest { return mock; } - private ModuleMXBeanEntry mockMBeanEntry(String qname) { + private ModuleMXBeanEntry mockMBeanEntry(final String qname) { ModuleMXBeanEntry mock = mock(ModuleMXBeanEntry.class); QName q = getQName(qname); doReturn(q).when(mock).getYangModuleQName(); return mock; } - private QName getQName(String qname) { - return new QName(URI.create("namespace"), date1970_01_01, qname); + private QName getQName(final String qname) { + return QName.create(URI.create("namespace"), date1970_01_01, qname); } - private LookupRegistry mockJmxClient(String... visibleQNames) { + private LookupRegistry mockJmxClient(final String... visibleQNames) { LookupRegistry mock = mock(LookupRegistry.class); Set qnames = Sets.newHashSet(); for (String visibleQName : visibleQNames) { -- 2.36.6