You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by sr...@apache.org on 2014/07/17 19:50:41 UTC

git commit: AMBARI-6526. Sqoop configTypes field returns null instead of empty object

Repository: ambari
Updated Branches:
  refs/heads/trunk ef23fba3f -> c4a6163ee


AMBARI-6526. Sqoop configTypes field returns null instead of empty object


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c4a6163e
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c4a6163e
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c4a6163e

Branch: refs/heads/trunk
Commit: c4a6163eec7c43b29e7e60750c112ffd99f32704
Parents: ef23fba
Author: Srimanth Gunturi <sg...@hortonworks.com>
Authored: Thu Jul 17 10:04:54 2014 -0700
Committer: Srimanth Gunturi <sg...@hortonworks.com>
Committed: Thu Jul 17 10:05:00 2014 -0700

----------------------------------------------------------------------
 .../server/api/util/StackExtensionHelper.java   | 13 +++++++++---
 .../api/util/StackExtensionHelperTest.java      | 21 ++++++++++++++++++++
 2 files changed, 31 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/c4a6163e/ambari-server/src/main/java/org/apache/ambari/server/api/util/StackExtensionHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/api/util/StackExtensionHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/api/util/StackExtensionHelper.java
index 89e9d4a..15c382b 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/api/util/StackExtensionHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/api/util/StackExtensionHelper.java
@@ -21,6 +21,7 @@ import java.io.File;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.List;
@@ -124,7 +125,7 @@ public class StackExtensionHelper {
   }
 
 
-  private ServiceInfo mergeServices(ServiceInfo parentService,
+  ServiceInfo mergeServices(ServiceInfo parentService,
                                     ServiceInfo childService) {
     ServiceInfo mergedServiceInfo = new ServiceInfo();
     mergedServiceInfo.setSchemaVersion(childService.getSchemaVersion());
@@ -133,10 +134,16 @@ public class StackExtensionHelper {
     mergedServiceInfo.setVersion(childService.getVersion());
     mergedServiceInfo.setConfigDependencies(
         childService.getConfigDependencies() != null ?
-            childService.getConfigDependencies() : parentService.getConfigDependencies());
+            childService.getConfigDependencies() :
+            parentService.getConfigDependencies() != null ?
+                parentService.getConfigDependencies() :
+                Collections.<String>emptyList());
     mergedServiceInfo.setConfigTypes(
         childService.getConfigTypes() != null ?
-            childService.getConfigTypes() : parentService.getConfigTypes());
+            childService.getConfigTypes() :
+            parentService.getConfigTypes() != null ?
+                parentService.getConfigTypes() :
+                Collections.<String, Map<String, Map<String, String>>>emptyMap());
     
     mergedServiceInfo.setRestartRequiredAfterChange(
             (childService.isRestartRequiredAfterChange() != null) 

http://git-wip-us.apache.org/repos/asf/ambari/blob/c4a6163e/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
index 9e2681f..c82b11c 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
@@ -605,5 +605,26 @@ public class StackExtensionHelperTest {
     assertEquals(true, propertyInfo.isRequireInput());
     assertEquals(PropertyInfo.PropertyType.DEFAULT, propertyInfo.getType());
   }
+
+  @Test
+  public void testMergeServices_BothConfigTypesAreNull() throws Exception {
+    File stackRoot = new File(stackRootStr);
+    StackExtensionHelper helper = new StackExtensionHelper(injector, stackRoot);
+    ServiceInfo child = new ServiceInfo();
+    ServiceInfo parent = new ServiceInfo();
+
+    child.setConfigTypes(null);
+    child.setConfigDependencies(null);
+
+    parent.setConfigTypes(null);
+    parent.setConfigDependencies(null);
+
+    ServiceInfo merged = helper.mergeServices(parent, child);
+
+    assertNotNull(merged.getConfigDependencies());
+    assertEquals(0, merged.getConfigDependencies().size());
+    assertNotNull(merged.getConfigTypes());
+    assertEquals(0, merged.getConfigTypes().size());
+  }
 }