Merge "Bug 2147 - JSON does not properly encode multiline string"
authorTony Tkacik <ttkacik@cisco.com>
Thu, 16 Oct 2014 12:58:45 +0000 (12:58 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Thu, 16 Oct 2014 12:58:45 +0000 (12:58 +0000)
code-generator/binding-generator-util/src/main/java/org/opendaylight/yangtools/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilder.java
code-generator/binding-generator-util/src/main/java/org/opendaylight/yangtools/binding/generator/util/generated/type/builder/AbstractTypeMemberBuilder.java
code-generator/binding-generator-util/src/test/java/org/opendaylight/yangtools/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilderTest.java [new file with mode: 0644]
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/repo/DependencyResolver.java

index b80ada0f2f5a19c32519148541c6e83dd0e7c38e..d98a9600cd5c6a3f5c1984089919f827590f6490 100644 (file)
@@ -169,6 +169,7 @@ abstract class AbstractGeneratedTypeBuilder<T extends GeneratedTypeBuilderBase<T
 
     @Override
     public GeneratedPropertyBuilder addProperty(final String name) {
+        Preconditions.checkArgument(name != null, "Parameter name can't be null");
         final GeneratedPropertyBuilder builder = new GeneratedPropertyBuilderImpl(name);
         builder.setAccessModifier(AccessModifier.PUBLIC);
         properties = LazyCollections.lazyAdd(properties, builder);
index cb84ac2ea8d2a5a50c80665f7dd0a3899fc3a9d3..849df263e5eef79d6c76f2e0ca3fc3d81b44555f 100644 (file)
@@ -143,7 +143,7 @@ abstract class AbstractTypeMemberBuilder<T extends TypeMemberBuilder<T>> impleme
         if (getClass() != obj.getClass()) {
             return false;
         }
-        MethodSignatureBuilderImpl other = (MethodSignatureBuilderImpl) obj;
+        AbstractTypeMemberBuilder<?> other = (AbstractTypeMemberBuilder<?>) obj;
         if (getName() == null) {
             if (other.getName() != null) {
                 return false;
diff --git a/code-generator/binding-generator-util/src/test/java/org/opendaylight/yangtools/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilderTest.java b/code-generator/binding-generator-util/src/test/java/org/opendaylight/yangtools/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilderTest.java
new file mode 100644 (file)
index 0000000..8cf6967
--- /dev/null
@@ -0,0 +1,17 @@
+/**
+ * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
+ */
+package org.opendaylight.yangtools.binding.generator.util.generated.type.builder;
+
+import org.junit.Test;
+
+public class AbstractGeneratedTypeBuilderTest {
+
+    @Test(expected = IllegalArgumentException.class)
+    public void addPropertyIllegalArgumentTest() {
+        GeneratedTypeBuilderImpl generatedTypeBuilder = new GeneratedTypeBuilderImpl("my.package", "MyName");
+
+        generatedTypeBuilder.addProperty(null);
+    }
+
+}
index 972f4689d547e2c491f1c774183946fe5d5f94d0..0f7de6e7d27905211165963c06baa92c5942454b 100644 (file)
@@ -20,6 +20,7 @@ import java.util.Collections;
 import java.util.Date;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.Map.Entry;
 import java.util.Set;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ModuleImport;
@@ -118,8 +119,9 @@ final class DependencyResolver {
         } while (progress);
 
         /// Additional check only for belongs-to statement
-        for (final SourceIdentifier sourceIdentifier : submodules.keySet()) {
-            final BelongsToDependency belongs = submodules.get(sourceIdentifier);
+        for (final Entry<SourceIdentifier, BelongsToDependency> submodule : submodules.entrySet()) {
+            final BelongsToDependency belongs = submodule.getValue();
+            final SourceIdentifier sourceIdentifier = submodule.getKey();
             if (!isKnown(resolved, belongs)) {
                 LOG.debug("Source {} is missing parent {}", sourceIdentifier, belongs);
                 pending.add(sourceIdentifier);