Bug 2176 - add property with name == null fix. 16/12016/1
authorpkajsa <pkajsa@cisco.com>
Thu, 16 Oct 2014 06:45:01 +0000 (08:45 +0200)
committerTony Tkacik <ttkacik@cisco.com>
Thu, 16 Oct 2014 13:25:07 +0000 (13:25 +0000)
The Preconditions.checkArgument(name != null,..) check has been added into the
addProperty(String name) method in the AbstractGeneratedTypeBuilder class.

Change-Id: I9db2b718011fa397cf1cd659ae56f8764bb8316e
Signed-off-by: pkajsa <pkajsa@cisco.com>
(cherry picked from commit 23e82385c675216762588f9400ff8244b68bd8cd)

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/test/java/org/opendaylight/yangtools/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilderTest.java [new file with mode: 0644]

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);
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);
+    }
+
+}