SLIDER-779 move to groovy 2.4.0

Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/240c0719
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/240c0719
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/240c0719

Branch: refs/heads/develop
Commit: 240c071948bbc938d8404f9553a25055385beba8
Parents: c927bad
Author: Steve Loughran <ste...@apache.org>
Authored: Mon Feb 9 10:58:46 2015 +0000
Committer: Steve Loughran <ste...@apache.org>
Committed: Wed Feb 25 17:39:41 2015 -0800

----------------------------------------------------------------------
 pom.xml                                         |  6 +--
 slider-assembly/pom.xml                         |  2 +-
 .../common/params/AbstractActionArgs.java       |  4 +-
 .../apache/slider/common/params/CommonArgs.java |  2 +-
 .../apache/slider/common/tools/SliderUtils.java |  3 +-
 .../slider/client/TestCommonArgParsing.groovy   | 40 +++++++++++++++-----
 .../view/TestClusterSpecificationBlock.groovy   |  2 +-
 .../web/view/TestContainerStatsBlock.groovy     | 27 +++++++++----
 .../appmaster/web/view/TestIndexBlock.groovy    |  2 +-
 .../org/apache/slider/test/KeysForTests.groovy  |  2 +
 .../apache/slider/test/SliderTestUtils.groovy   | 15 ++++----
 .../funtest/framework/FileUploader.groovy       |  6 +--
 12 files changed, 74 insertions(+), 37 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 1f5fdc0..a623b85 100644
--- a/pom.xml
+++ b/pom.xml
@@ -114,7 +114,7 @@
     -->
     <project.java.src.version>1.6</project.java.src.version>
     <enforced.java.version>${project.java.src.version}</enforced.java.version>
-    <groovy.version>2.2.2</groovy.version>
+    <groovy.version>2.4.0</groovy.version>
     
     <!-- 
     test options
@@ -187,8 +187,8 @@
     
<apache-source-release-assembly-descriptor.version>1.0.4</apache-source-release-assembly-descriptor.version>
     <gmavenVersion>1.5</gmavenVersion>
     <gmavenProviderSelection>2.0</gmavenProviderSelection>
-    <groovy-eclipse-compiler.version>2.8.0-01</groovy-eclipse-compiler.version>
-    <groovy-eclipse-batch.version>2.1.3-01</groovy-eclipse-batch.version>
+    <groovy-eclipse-compiler.version>2.9.1-01</groovy-eclipse-compiler.version>
+    <groovy-eclipse-batch.version>2.3.7-01</groovy-eclipse-batch.version>
     <buildnumber-maven-plugin.version>1.2</buildnumber-maven-plugin.version>
   
     

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-assembly/pom.xml
----------------------------------------------------------------------
diff --git a/slider-assembly/pom.xml b/slider-assembly/pom.xml
index 368efd6..e005288 100644
--- a/slider-assembly/pom.xml
+++ b/slider-assembly/pom.xml
@@ -17,7 +17,7 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
   <modelVersion>4.0.0</modelVersion>
   <artifactId>slider-assembly</artifactId>
-  <name>Apache Slider Binary Distributione</name>
+  <name>Apache Slider Binary Distribution</name>
   <packaging>pom</packaging>
   <description>Apache Slider is a tool for dynamically deploying distributed 
applications to an Apache YARN cluster. This module provides the binary 
redistributable.</description>
   <parent>

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/main/java/org/apache/slider/common/params/AbstractActionArgs.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/common/params/AbstractActionArgs.java
 
b/slider-core/src/main/java/org/apache/slider/common/params/AbstractActionArgs.java
index 22473d5..cc80142 100644
--- 
a/slider-core/src/main/java/org/apache/slider/common/params/AbstractActionArgs.java
+++ 
b/slider-core/src/main/java/org/apache/slider/common/params/AbstractActionArgs.java
@@ -133,14 +133,16 @@ public abstract class AbstractActionArgs extends ArgOps 
implements Arguments {
       maxArgs = minArgs;
     }
     if (actionArgSize > maxArgs) {
-      String message = String.format("%s for action %s: limit is %d but saw 
%d",
+      String message = String.format("%s for action %s: limit is %d but saw 
%d: ",
                                      ErrorStrings.ERROR_TOO_MANY_ARGUMENTS,
                                      getActionName(), maxArgs,
                                      actionArgSize);
+      
       log.error(message);
       int index = 1;
       for (String actionArg : parameters) {
         log.error("[{}] \"{}\"", index++, actionArg);
+        message += " \"" + actionArg + "\" ";
       }
       throw new BadCommandArgumentsException(message);
     }

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/main/java/org/apache/slider/common/params/CommonArgs.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/common/params/CommonArgs.java 
b/slider-core/src/main/java/org/apache/slider/common/params/CommonArgs.java
index 57d5fb4..ba9c0e3 100644
--- a/slider-core/src/main/java/org/apache/slider/common/params/CommonArgs.java
+++ b/slider-core/src/main/java/org/apache/slider/common/params/CommonArgs.java
@@ -244,7 +244,7 @@ public abstract class CommonArgs extends ArgOps implements 
SliderActions,
       coreAction.validate();
     } catch (BadCommandArgumentsException e) {
       StringBuilder badArgMsgBuilder = new StringBuilder();
-      badArgMsgBuilder.append(e.toString() + "\n");
+      badArgMsgBuilder.append(e.toString()).append("\n");
       badArgMsgBuilder.append(usage(this, coreAction.getActionName()));
       throw new BadCommandArgumentsException(badArgMsgBuilder.toString());
     } catch (UsageException e) {

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java 
b/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java
index 1e3379c..a50fad2 100644
--- a/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java
+++ b/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java
@@ -1080,7 +1080,8 @@ public final class SliderUtils {
    * @param clusterRoleMap cluster role map to merge onto
    * @param commandOptions command opts
    */
-  public static void applyCommandLineRoleOptsToRoleMap(Map<String, Map<String, 
String>> clusterRoleMap,
+  public static void applyCommandLineRoleOptsToRoleMap(
+      Map<String, Map<String, String>> clusterRoleMap,
       Map<String, Map<String, String>> commandOptions) {
     for (Map.Entry<String, Map<String, String>> entry : 
commandOptions.entrySet()) {
       String key = entry.getKey();

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/test/groovy/org/apache/slider/client/TestCommonArgParsing.groovy
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/groovy/org/apache/slider/client/TestCommonArgParsing.groovy
 
b/slider-core/src/test/groovy/org/apache/slider/client/TestCommonArgParsing.groovy
index 8b013e5..a6d8538 100644
--- 
a/slider-core/src/test/groovy/org/apache/slider/client/TestCommonArgParsing.groovy
+++ 
b/slider-core/src/test/groovy/org/apache/slider/client/TestCommonArgParsing.groovy
@@ -302,12 +302,22 @@ class TestCommonArgParsing implements SliderActions, 
Arguments {
    * build the list of base arguments for all operations
    * @return the base arguments
    */
-  private def baseArgs() {
+  private List<String> baseArgs() {
     return [
 
     ]
   }
 
+  /**
+   * Here to diagnose some problems with groovy concatenation on
+   * some groovy versions
+   * @throws Throwable
+   */
+  @Test
+  public void testListConcat() throws Throwable {
+    def l1 = ["a"] + baseArgs()
+    assert l1.size() == 1
+  }
 
   @Test
   public void testCreateWaitTime() throws Throwable {
@@ -466,10 +476,7 @@ class TestCommonArgParsing implements SliderActions, 
Arguments {
 
     def roleOpts = createArgs.compOptionMap
 
-    def clusterRoleMap = Maps.newHashMap([
-        "master":["cheese":"french"],
-        "worker":["env.CHEESE":"french"]
-    ])
+    def clusterRoleMap = createEnvMap()
     SliderUtils.applyCommandLineRoleOptsToRoleMap(clusterRoleMap, roleOpts);
 
     def masterOpts = clusterRoleMap["master"];
@@ -485,10 +492,8 @@ class TestCommonArgParsing implements SliderActions, 
Arguments {
 
     
     def roleOpts = createArgs.compOptionMap
-    Map<String, Map<String, String>> clusterRoleMap = Maps.newHashMap([
-        "master": ["cheese": "french"],
-        "worker": ["env.CHEESE": "french"]
-    ])
+
+    Map<String, Map<String, String>> clusterRoleMap = createEnvMap()
     SliderUtils.applyCommandLineRoleOptsToRoleMap(clusterRoleMap, roleOpts);
 
     def workerOpts = Maps.newHashMap(clusterRoleMap["worker"])
@@ -499,5 +504,22 @@ class TestCommonArgParsing implements SliderActions, 
Arguments {
 
   }
 
+  /**
+   * static compiler complaining about matching LinkedHashMap with Map,
+   * so some explicit creation here
+   * @return a map of maps
+   */
+  public Map<String, Map<String, String>> createEnvMap() {
+
+    Map<String, String> cheese = new HashMap<>()
+    cheese["cheese"]="french"
+    Map<String, String> envCheese = new HashMap<>()
+    envCheese["env.CHEESE"] = "french"
+    Map<String, Map<String, String>> envMap = new HashMap<>()
+    envMap["master"] = cheese
+    envMap["worker"] = envCheese
+    return envMap
+  }
+
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestClusterSpecificationBlock.groovy
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestClusterSpecificationBlock.groovy
 
b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestClusterSpecificationBlock.groovy
index 9907b94..e1964f5 100644
--- 
a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestClusterSpecificationBlock.groovy
+++ 
b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestClusterSpecificationBlock.groovy
@@ -36,7 +36,7 @@ import org.junit.Before
 import org.junit.Test
 
 @Slf4j
-@CompileStatic
+//@CompileStatic
 public class TestClusterSpecificationBlock {
 
   private ClusterSpecificationBlock clusterSpecBlock;

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestContainerStatsBlock.groovy
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestContainerStatsBlock.groovy
 
b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestContainerStatsBlock.groovy
index 4ef70a3..e70318b 100644
--- 
a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestContainerStatsBlock.groovy
+++ 
b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestContainerStatsBlock.groovy
@@ -42,7 +42,7 @@ import org.junit.Before
 import org.junit.Test
 
 @Slf4j
-@CompileStatic
+//@CompileStatic
 public class TestContainerStatsBlock extends BaseMockAppStateTest {
 
   private ContainerStatsBlock statsBlock;
@@ -52,6 +52,8 @@ public class TestContainerStatsBlock extends 
BaseMockAppStateTest {
 
   @Before
   public void setup() {
+    super.setup()
+    SliderClusterProtocol clusterProto = new MockSliderClusterProtocol();
     ProviderService providerService = new MockProviderService();
     ProviderAppState providerAppState = new ProviderAppState(
         "undefined",
@@ -63,13 +65,7 @@ public class TestContainerStatsBlock extends 
BaseMockAppStateTest {
         null,
         null, metrics, null, null, null);
 
-    Injector injector = Guice.createInjector(new AbstractModule() {
-          @Override
-          protected void configure() {
-            bind(WebAppApi.class).toInstance(inst);
-          }
-        });
-
+    Injector injector = Guice.createInjector(new WebappModule(inst))
     statsBlock = injector.getInstance(ContainerStatsBlock.class);
 
     cont1 = new MockContainer();
@@ -86,6 +82,21 @@ public class TestContainerStatsBlock extends 
BaseMockAppStateTest {
     cont2.resource = new MockResource();
   }
 
+  
+  public static class WebappModule extends AbstractModule {
+    final WebAppApiImpl instance;
+
+    WebappModule(WebAppApiImpl instance) {
+      this.instance = instance
+    }
+
+    @Override
+    protected void configure() {
+      bind(WebAppApi.class).toInstance(instance);
+    }
+  }
+  
+  
   public MockContainerId mockContainerId(int count) {
     new MockContainerId(applicationAttemptId, count)
   }

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestIndexBlock.groovy
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestIndexBlock.groovy
 
b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestIndexBlock.groovy
index c44baee..9ec230c 100644
--- 
a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestIndexBlock.groovy
+++ 
b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/web/view/TestIndexBlock.groovy
@@ -33,7 +33,7 @@ import org.junit.Before
 import org.junit.Test
 
 @Slf4j
-@CompileStatic
+//@CompileStatic
 public class TestIndexBlock extends BaseMockAppStateTest {
 
   private IndexBlock indexBlock;

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/test/groovy/org/apache/slider/test/KeysForTests.groovy
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/groovy/org/apache/slider/test/KeysForTests.groovy 
b/slider-core/src/test/groovy/org/apache/slider/test/KeysForTests.groovy
index 4fae2ae..4721552 100644
--- a/slider-core/src/test/groovy/org/apache/slider/test/KeysForTests.groovy
+++ b/slider-core/src/test/groovy/org/apache/slider/test/KeysForTests.groovy
@@ -18,12 +18,14 @@
 
 package org.apache.slider.test
 
+import groovy.transform.CompileStatic
 import org.apache.slider.common.SliderKeys
 import org.apache.slider.common.SliderXMLConfKeysForTesting
 
 /**
  * Keys shared across tests
  */
+@CompileStatic
 public interface KeysForTests extends SliderKeys, SliderXMLConfKeysForTesting {
   /**
    * Username for all clusters, ZK, etc

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-core/src/test/groovy/org/apache/slider/test/SliderTestUtils.groovy
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/groovy/org/apache/slider/test/SliderTestUtils.groovy 
b/slider-core/src/test/groovy/org/apache/slider/test/SliderTestUtils.groovy
index 1ed340f..d9d5422 100644
--- a/slider-core/src/test/groovy/org/apache/slider/test/SliderTestUtils.groovy
+++ b/slider-core/src/test/groovy/org/apache/slider/test/SliderTestUtils.groovy
@@ -547,10 +547,11 @@ class SliderTestUtils extends Assert {
       throw new ForbiddenException(url);
     }
     if (!(resultCode >= 200 && resultCode < 400)) {
-      String message = "$verb to $url " +
-                       " failed with exit code " +
-                       resultCode + ", body length " +
-                       body?.length() + ":\n" + body
+      String bodyDetails = (body == null ?
+                            "(no body)"  :
+                            "body length ${body?.length()}:\n:$body")
+      String message = "$verb to $url failed with exit code $resultCode; 
$bodyDetails"
+
       log.error(message);
       throw new IOException(message);
     }
@@ -961,10 +962,8 @@ class SliderTestUtils extends Assert {
   throws Throwable {
     try {
       ServiceLauncher launch = launch(serviceClass, conf, args);
-      throw new AssertionError(
-          "Expected an exception with text containing " + expectedText
-              + " -but the service completed with exit code "
-              + launch.serviceExitCode);
+      fail("Expected an exception with text containing $expectedText "+
+               " -but the service completed with exit code 
${launch.serviceExitCode}");
     } catch (Throwable thrown) {
       if (expectedText && !thrown.toString().contains(expectedText)) {
         //not the right exception -rethrow

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/240c0719/slider-funtest/src/main/groovy/org/apache/slider/funtest/framework/FileUploader.groovy
----------------------------------------------------------------------
diff --git 
a/slider-funtest/src/main/groovy/org/apache/slider/funtest/framework/FileUploader.groovy
 
b/slider-funtest/src/main/groovy/org/apache/slider/funtest/framework/FileUploader.groovy
index 70f119e..1c000a2 100644
--- 
a/slider-funtest/src/main/groovy/org/apache/slider/funtest/framework/FileUploader.groovy
+++ 
b/slider-funtest/src/main/groovy/org/apache/slider/funtest/framework/FileUploader.groovy
@@ -91,13 +91,13 @@ class FileUploader {
   }
 
 
-  public def getFileSystem(
+  public HadoopFS getFileSystem(
       UserGroupInformation user, final Path path) {
     return getFileSystem(user, path.toUri())
 
   }
 
-  public def getFileSystem(
+  public HadoopFS getFileSystem(
       UserGroupInformation user, final URI uri) {
 
     SudoClosure.sudo(user) {
@@ -105,7 +105,7 @@ class FileUploader {
     }
   }
 
-  public def getFileSystemAsUserName(String username) {
+  public HadoopFS getFileSystemAsUserName(String username) {
 
     def user = UserGroupInformation.createRemoteUser(username)
     getFileSystem(user, HadoopFS.getDefaultUri(conf))

Reply via email to