SLIDER-322 revert code constructs to java6, retaining java7 code commented out 
as JDK7 for fast switch-back


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

Branch: refs/heads/feature/SLIDER-149_Support_a_YARN_service_registry
Commit: 397585a052ca9dacc358003f50fa53b934832b50
Parents: daba289
Author: Steve Loughran <ste...@apache.org>
Authored: Thu Aug 14 17:16:18 2014 +0100
Committer: Steve Loughran <ste...@apache.org>
Committed: Thu Aug 14 17:16:18 2014 +0100

----------------------------------------------------------------------
 .../org/apache/slider/client/SliderClient.java  | 94 +++++++++++++++++++-
 .../slider/common/tools/ConfigHelper.java       | 56 ++++++++----
 .../slider/core/persist/JsonSerDeser.java       | 27 +++++-
 .../PublishedConfigurationOutputter.java        | 12 +++
 .../server/appmaster/SliderAppMaster.java       | 19 +++-
 .../server/appmaster/web/SliderAmIpFilter.java  |  6 +-
 .../agent/TestAgentProviderService.java         | 45 ++++++----
 .../agent/TestComponentInstanceState.java       | 11 +--
 .../providers/agent/TestHeartbeatMonitor.java   |  4 +-
 .../management/TestAMManagementWebServices.java |  9 +-
 .../publisher/TestAgentProviderService.java     |  2 +-
 .../workflow/ProcessCommandFactory.java         |  6 +-
 .../slider/test/MiniZooKeeperCluster.java       |  6 +-
 13 files changed, 242 insertions(+), 55 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/client/SliderClient.java 
b/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
index 356f99f..93f6207 100644
--- a/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
+++ b/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
@@ -206,6 +206,8 @@ public class SliderClient extends 
AbstractSliderLaunchedService implements RunSe
    * @return the exit code
    * @throws Throwable anything that went wrong
    */
+/* JDK7
+
   @Override
   public int runService() throws Throwable {
 
@@ -278,6 +280,66 @@ public class SliderClient extends 
AbstractSliderLaunchedService implements RunSe
     return exitCode;
   }
 
+*/
+  @Override
+  public int runService() throws Throwable {
+
+    // choose the action
+    String action = serviceArgs.getAction();
+    int exitCode = EXIT_SUCCESS;
+    String clusterName = serviceArgs.getClusterName();
+    // actions
+    if (ACTION_BUILD.equals(action)) {
+      exitCode = actionBuild(clusterName, serviceArgs.getActionBuildArgs());
+    } else if (ACTION_CREATE.equals(action)) {
+      exitCode = actionCreate(clusterName, serviceArgs.getActionCreateArgs());
+    } else if (ACTION_FREEZE.equals(action)) {
+      exitCode = actionFreeze(clusterName,
+          serviceArgs.getActionFreezeArgs());
+    } else if (ACTION_THAW.equals(action)) {
+      exitCode = actionThaw(clusterName, serviceArgs.getActionThawArgs());
+    } else if (ACTION_DESTROY.equals(action)) {
+      exitCode = actionDestroy(clusterName);
+    } else if (ACTION_EXISTS.equals(action)) {
+      exitCode = actionExists(clusterName,
+          serviceArgs.getActionExistsArgs().live);
+    } else if (ACTION_FLEX.equals(action)) {
+      exitCode = actionFlex(clusterName, serviceArgs.getActionFlexArgs());
+    } else if (ACTION_GETCONF.equals(action)) {
+      exitCode = actionGetConf(clusterName, 
serviceArgs.getActionGetConfArgs());
+    } else if (ACTION_HELP.equals(action) ||
+               ACTION_USAGE.equals(action)) {
+      log.info(serviceArgs.usage());
+
+    } else if (ACTION_KILL_CONTAINER.equals(action)) {
+      exitCode = actionKillContainer(clusterName,
+          serviceArgs.getActionKillContainerArgs());
+
+    } else if (ACTION_AM_SUICIDE.equals(action)) {
+      exitCode = actionAmSuicide(clusterName,
+          serviceArgs.getActionAMSuicideArgs());
+
+    } else if (ACTION_LIST.equals(action)) {
+      exitCode = actionList(clusterName);
+    } else if (ACTION_REGISTRY.equals(action)) {
+      exitCode = actionRegistry(
+          serviceArgs.getActionRegistryArgs());
+    } else if (ACTION_STATUS.equals(action)) {
+      exitCode = actionStatus(clusterName,
+          serviceArgs.getActionStatusArgs());
+    } else if (ACTION_UPDATE.equals(action)) {
+      exitCode = actionUpdate(clusterName, serviceArgs.getActionUpdateArgs());
+
+    } else if (ACTION_VERSION.equals(action)) {
+
+      exitCode = actionVersion();
+    } else {
+      throw new SliderException(EXIT_UNIMPLEMENTED,
+          "Unimplemented: " + action);
+    }
+
+    return exitCode;
+  }
   /**
    * Delete the zookeeper node associated with the calling user and the cluster
    **/
@@ -331,7 +393,12 @@ public class SliderClient extends 
AbstractSliderLaunchedService implements RunSe
           client.createPath(zkPath, "", ZooDefs.Ids.OPEN_ACL_UNSAFE,
                             CreateMode.PERSISTENT);
           return zkPath;
-        } catch (InterruptedException | KeeperException e) {
+          
+          //JDK7
+//        } catch (InterruptedException | KeeperException e) {
+        } catch (InterruptedException e) {
+          log.warn("Unable to create zk node {}", zkPath, e);
+        } catch ( KeeperException e) {
           log.warn("Unable to create zk node {}", zkPath, e);
         }
       }
@@ -1676,7 +1743,12 @@ public class SliderClient extends 
AbstractSliderLaunchedService implements RunSe
           return EXIT_FALSE;
         }
       }
-    } catch (YarnException | IOException e) {
+
+// JDK7    } catch (YarnException | IOException e) {
+    } catch (YarnException e) {
+      log.warn("Exception while waiting for the cluster {} to shut down: {}",
+               clustername, e);
+    } catch ( IOException e) {
       log.warn("Exception while waiting for the cluster {} to shut down: {}",
                clustername, e);
     }
@@ -1740,6 +1812,8 @@ public class SliderClient extends 
AbstractSliderLaunchedService implements RunSe
     }
     try {
       String description = "Slider Application Instance " + clustername;
+// JDK7      
+/*
       switch (format) {
         case Arguments.FORMAT_XML:
           Configuration siteConf = getSiteConf(status, clustername);
@@ -1753,6 +1827,17 @@ public class SliderClient extends 
AbstractSliderLaunchedService implements RunSe
         default:
           throw new BadCommandArgumentsException("Unknown format: " + format);
       }
+*/
+      if (Arguments.FORMAT_XML.equals(format)) {
+        Configuration siteConf = getSiteConf(status, clustername);
+        siteConf.writeXml(writer);
+      } else if (Arguments.FORMAT_PROPERTIES.equals(format)) {
+        Properties props = new Properties();
+        props.putAll(status.clientProperties);
+        props.store(writer, description);
+      } else {
+          throw new BadCommandArgumentsException("Unknown format: " + format);
+      }
     } finally {
       // data is written.
       // close the file
@@ -2318,7 +2403,10 @@ public class SliderClient extends 
AbstractSliderLaunchedService implements RunSe
     try {
       maybeStartRegistry();
       return registry.instanceIDs(SliderKeys.APP_TYPE);
-    } catch (YarnException | IOException e) {
+/// JDK7    } catch (YarnException | IOException e) {
+    } catch (IOException e) {
+      throw e;
+    } catch (YarnException e) {
       throw e;
     } catch (Exception e) {
       throw new IOException(e);

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/main/java/org/apache/slider/common/tools/ConfigHelper.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/common/tools/ConfigHelper.java 
b/slider-core/src/main/java/org/apache/slider/common/tools/ConfigHelper.java
index f8fd226..b7e1323 100644
--- a/slider-core/src/main/java/org/apache/slider/common/tools/ConfigHelper.java
+++ b/slider-core/src/main/java/org/apache/slider/common/tools/ConfigHelper.java
@@ -182,24 +182,53 @@ public class ConfigHelper {
   public Document parseConfiguration(FileSystem fs,
                                      Path path) throws
                                                 IOException {
-    int len = (int) fs.getLength(path);
-    byte[] data = new byte[len];
-    try(FSDataInputStream in = fs.open(path)) {
-      in.readFully(0, data);
-    }
 
+
+    byte[] data = loadBytes(fs, path);
     //this is here to track down a parse issue
     //related to configurations
-    String s = new String(data, 0, len);
+    String s = new String(data, 0, data.length);
     log.debug("XML resource {} is \"{}\"", path, s);
+/* JDK7
     try (ByteArrayInputStream in = new ByteArrayInputStream(data)) {
       Document document = parseConfigXML(in);
       return document;
     } catch (ParserConfigurationException | SAXException e) {
       throw new IOException(e);
     }
+*/
+    ByteArrayInputStream in= null;
+    try {
+      in = new ByteArrayInputStream(data);
+      Document document = parseConfigXML(in);
+      return document;
+    } catch (ParserConfigurationException e) {
+      throw new IOException(e);
+    } catch (SAXException e) {
+      throw new IOException(e);
+    } finally {
+      IOUtils.closeStream(in);
+    }
   }
-  
+
+  public static byte[] loadBytes(FileSystem fs, Path path) throws IOException {
+    int len = (int) fs.getLength(path);
+    byte[] data = new byte[len];
+    /* JDK7
+    try(FSDataInputStream in = fs.open(path)) {
+      in.readFully(0, data);
+    }
+*/
+    FSDataInputStream in = null;
+    in = fs.open(path);
+    try {
+      in.readFully(0, data);
+    } finally {
+      IOUtils.closeStream(in);
+    }
+    return data;
+  }
+
   /**
    * Load a configuration from ANY FS path. The normal Configuration
    * loader only works with file:// URIs
@@ -209,13 +238,9 @@ public class ConfigHelper {
    * @throws IOException
    */
   public static Configuration loadConfiguration(FileSystem fs,
-                                                Path path) throws
-                                                                   IOException 
{
-    int len = (int) fs.getLength(path);
-    byte[] data = new byte[len];
-    try (FSDataInputStream in = fs.open(path)) {
-      in.readFully(0, data);
-    }
+                                                Path path) throws IOException {
+    byte[] data = loadBytes(fs, path);
+
     ByteArrayInputStream in2;
 
     in2 = new ByteArrayInputStream(data);
@@ -523,7 +548,8 @@ public class ConfigHelper {
    * @param valuesource the source of values
    * @return a new configuration where <code>foreach key in keysource, 
get(key)==valuesource.get(key)</code>
    */
-  public static Configuration resolveConfiguration(Iterable<Map.Entry<String, 
String>> keysource,
+  public static Configuration resolveConfiguration(
+      Iterable<Map.Entry<String, String>> keysource,
       Configuration valuesource) {
     Configuration result = new Configuration(false);
     for (Map.Entry<String, String> entry : keysource) {

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/main/java/org/apache/slider/core/persist/JsonSerDeser.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/core/persist/JsonSerDeser.java 
b/slider-core/src/main/java/org/apache/slider/core/persist/JsonSerDeser.java
index 3512168..ab71683 100644
--- a/slider-core/src/main/java/org/apache/slider/core/persist/JsonSerDeser.java
+++ b/slider-core/src/main/java/org/apache/slider/core/persist/JsonSerDeser.java
@@ -105,7 +105,8 @@ public class JsonSerDeser<T> {
    * @throws IOException IO problems
    * @throws JsonMappingException failure to map from the JSON to this class
    */
-  public T fromResource(String resource)
+/* JDK7
+ public T fromResource(String resource)
     throws IOException, JsonParseException, JsonMappingException {
     try(InputStream resStream = this.getClass().getResourceAsStream(resource)) 
{
       if (resStream == null) {
@@ -116,6 +117,30 @@ public class JsonSerDeser<T> {
       log.error("Exception while parsing json resource {}: {}", resource, e);
       throw e;
     }
+  }*/
+
+  /**
+   * Convert from a JSON file
+   * @param resource input file
+   * @return the parsed JSON
+   * @throws IOException IO problems
+   * @throws JsonMappingException failure to map from the JSON to this class
+   */
+  public synchronized T fromResource(String resource)
+      throws IOException, JsonParseException, JsonMappingException {
+    InputStream resStream = null;
+    try {
+      resStream = this.getClass().getResourceAsStream(resource);
+      if (resStream == null) {
+        throw new FileNotFoundException(resource);
+      }
+      return (T) (mapper.readValue(resStream, classType));
+    } catch (IOException e) {
+      log.error("Exception while parsing json resource {}: {}", resource, e);
+      throw e;
+    } finally {
+      IOUtils.closeStream(resStream);
+    }
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfigurationOutputter.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfigurationOutputter.java
 
b/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfigurationOutputter.java
index 929b8ef..bf812dd 100644
--- 
a/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfigurationOutputter.java
+++ 
b/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfigurationOutputter.java
@@ -48,12 +48,24 @@ public abstract class PublishedConfigurationOutputter {
    * @param dest destination file
    * @throws IOException
    */
+/* JDK7
   public void save(File dest) throws IOException {
     try(FileOutputStream out = new FileOutputStream(dest)) {
       save(out);
       out.close();
     }
   }
+*/
+  public void save(File dest) throws IOException {
+    FileOutputStream out = null;
+    try {
+      out = new FileOutputStream(dest);
+      save(out);
+      out.close();
+    } finally {
+      org.apache.hadoop.io.IOUtils.closeStream(out);
+    }
+  }
 
   /**
    * Save the content. The default saves the asString() value

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/main/java/org/apache/slider/server/appmaster/SliderAppMaster.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/server/appmaster/SliderAppMaster.java
 
b/slider-core/src/main/java/org/apache/slider/server/appmaster/SliderAppMaster.java
index 4a5c9b9..acd6870 100644
--- 
a/slider-core/src/main/java/org/apache/slider/server/appmaster/SliderAppMaster.java
+++ 
b/slider-core/src/main/java/org/apache/slider/server/appmaster/SliderAppMaster.java
@@ -459,7 +459,8 @@ public class SliderAppMaster extends 
AbstractSliderLaunchedService
     String action = serviceArgs.getAction();
     List<String> actionArgs = serviceArgs.getActionArgs();
     int exitCode;
-    switch (action) {
+/*  JDK7
+  switch (action) {
       case SliderActions.ACTION_HELP:
         log.info(getName() + serviceArgs.usage());
         exitCode = LauncherExitCodes.EXIT_USAGE;
@@ -470,6 +471,15 @@ public class SliderAppMaster extends 
AbstractSliderLaunchedService
       default:
         throw new SliderException("Unimplemented: " + action);
     }
+    */
+    if (action.equals(SliderActions.ACTION_HELP)) {
+      log.info(getName() + serviceArgs.usage());
+      exitCode = SliderExitCodes.EXIT_USAGE;
+    } else if (action.equals(SliderActions.ACTION_CREATE)) {
+      exitCode = createAndRunCluster(actionArgs.get(0));
+    } else {
+      throw new SliderException("Unimplemented: " + action);
+    }
     log.info("Exiting AM; final exit code = {}", exitCode);
     return exitCode;
   }
@@ -1048,9 +1058,16 @@ public class SliderAppMaster extends 
AbstractSliderLaunchedService
     try {
       log.info("Unregistering AM status={} message={}", appStatus, appMessage);
       asyncRMClient.unregisterApplicationMaster(appStatus, appMessage, null);
+/* JDK7
     } catch (YarnException | IOException e) {
       log.info("Failed to unregister application: " + e, e);
     }
+*/
+    } catch (IOException e) {
+      log.info("Failed to unregister application: " + e, e);
+    } catch (YarnException e) {
+      log.info("Failed to unregister application: " + e, e);
+    }
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/main/java/org/apache/slider/server/appmaster/web/SliderAmIpFilter.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/server/appmaster/web/SliderAmIpFilter.java
 
b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/SliderAmIpFilter.java
index aad443e..4c66876 100644
--- 
a/slider-core/src/main/java/org/apache/slider/server/appmaster/web/SliderAmIpFilter.java
+++ 
b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/SliderAmIpFilter.java
@@ -133,7 +133,11 @@ public class SliderAmIpFilter implements Filter {
             principal);
         chain.doFilter(requestWrapper, resp);
       }
-    } catch (IOException | ServletException e) {
+// JKD7    } catch (IOException | ServletException e) {
+    } catch (IOException e) {
+      log.warn("When fetching {}: {}", requestURI, e);
+      throw e;
+    } catch (ServletException e) {
       log.warn("When fetching {}: {}", requestURI, e);
       throw e;
     }

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
 
b/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
index 22de0d2..ee61129 100644
--- 
a/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
+++ 
b/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
@@ -291,7 +291,10 @@ public class TestAgentProviderService {
                                           resourceComponent,
                                           appComponent,
                                           containerTmpDirPath);
-    } catch (SliderException | IOException he) {
+      // JDK7
+    } catch (IOException he) {
+      log.warn("{}", he, he);
+    } catch (SliderException he) {
       log.warn("{}", he, he);
     }
 
@@ -317,14 +320,14 @@ public class TestAgentProviderService {
       public ClusterDescription getClusterStatus() {
         ClusterDescription cd = new ClusterDescription();
         cd.status = new HashMap<String, Object>();
-        Map<String, Map<String, ClusterNode>> roleMap = new HashMap<>();
+        Map<String, Map<String, ClusterNode>> roleMap = new HashMap<String, 
Map<String, ClusterNode>>();
         ClusterNode cn1 = new ClusterNode(new MockContainerId(1));
         cn1.host = "FIRST_HOST";
-        Map<String, ClusterNode> map1 = new HashMap<>();
+        Map<String, ClusterNode> map1 = new HashMap<String, ClusterNode>();
         map1.put("FIRST_CONTAINER", cn1);
         ClusterNode cn2 = new ClusterNode(new MockContainerId(2));
         cn2.host = "SECOND_HOST";
-        Map<String, ClusterNode> map2 = new HashMap<>();
+        Map<String, ClusterNode> map2 = new HashMap<String, ClusterNode>();
         map2.put("SECOND_CONTAINER", cn2);
         ClusterNode cn3 = new ClusterNode(new MockContainerId(3));
         cn3.host = "THIRD_HOST";
@@ -350,7 +353,7 @@ public class TestAgentProviderService {
     };
 
     aps.setAmState(appState);
-    Map<String, String> tokens = new HashMap<>();
+    Map<String, String> tokens = new HashMap<String, String>();
     aps.addRoleRelatedTokens(tokens);
     Assert.assertEquals(2, tokens.size());
     Assert.assertEquals("FIRST_HOST", tokens.get("${FIRST_ROLE_HOST}"));
@@ -367,7 +370,7 @@ public class TestAgentProviderService {
     doNothing().when(mockAps).publishApplicationInstanceData(anyString(), 
anyString(), anyCollection());
     doReturn(metainfo).when(mockAps).getMetainfo();
 
-    Map<String, String> ports = new HashMap<>();
+    Map<String, String> ports = new HashMap<String, String>();
     ports.put("global.listen_port", "10010");
     mockAps.processAndPublishComponentSpecificData(ports,
                                                    "cid1",
@@ -408,17 +411,18 @@ public class TestAgentProviderService {
     status.setClusterName("test");
     status.setComponentName("HBASE_MASTER");
     status.setRoleCommand("GET_CONFIG");
-    Map<String, String> hbaseSite = new HashMap<>();
+    Map<String, String> hbaseSite = new HashMap<String, String>();
     hbaseSite.put("hbase.master.info.port", "60012");
     hbaseSite.put("c", "d");
-    Map<String, Map<String, String>> configs = new HashMap<>();
+    Map<String, Map<String, String>> configs = 
+        new HashMap<String, Map<String, String>>();
     configs.put("hbase-site", hbaseSite);
     configs.put("global", hbaseSite);
     status.setConfigs(configs);
-    hb.setComponentStatus(new ArrayList<>(Arrays.asList(status)));
+    hb.setComponentStatus(new 
ArrayList<ComponentStatus>(Arrays.asList(status)));
 
-    Map<String, Map<String, ClusterNode>> roleClusterNodeMap = new HashMap<>();
-    Map<String, ClusterNode> container = new HashMap<>();
+    Map<String, Map<String, ClusterNode>> roleClusterNodeMap = new 
HashMap<String, Map<String, ClusterNode>>();
+    Map<String, ClusterNode> container = new HashMap<String, ClusterNode>();
     ClusterNode cn1 = new ClusterNode(new MockContainerId(1));
     cn1.host = "HOST1";
     container.put("cid1", cn1);
@@ -754,7 +758,7 @@ public class TestAgentProviderService {
       cr.setRole("HBASE_MASTER");
       cr.setRoleCommand("INSTALL");
       cr.setStatus("COMPLETED");
-      Map<String, String> ap = new HashMap<>();
+      Map<String, String> ap = new HashMap<String, String>();
       ap.put("a.port", "10233");
       cr.setAllocatedPorts(ap);
       hb.setReports(Arrays.asList(cr));
@@ -803,7 +807,10 @@ public class TestAgentProviderService {
                                                                 anyString(),
                                                                 
any(HeartBeatResponse.class),
                                                                 anyString());
-    } catch (SliderException | IOException he) {
+    // JDK7 
+    } catch (SliderException he) {
+      log.warn(he.getMessage());
+    } catch (IOException he) {
       log.warn(he.getMessage());
     }
 
@@ -882,8 +889,8 @@ public class TestAgentProviderService {
     doReturn("HOST1").when(mockAps).getClusterInfoPropertyValue(anyString());
     doReturn(metainfo).when(mockAps).getMetainfo();
 
-    Map<String, Map<String, ClusterNode>> roleClusterNodeMap = new HashMap<>();
-    Map<String, ClusterNode> container = new HashMap<>();
+    Map<String, Map<String, ClusterNode>> roleClusterNodeMap = new 
HashMap<String, Map<String, ClusterNode>>();
+    Map<String, ClusterNode> container = new HashMap<String, ClusterNode>();
     ClusterNode cn1 = new ClusterNode(new MockContainerId(1));
     cn1.host = "HOST1";
     container.put("cid1", cn1);
@@ -929,18 +936,18 @@ public class TestAgentProviderService {
 
     doReturn("HOST1").when(mockAps).getClusterInfoPropertyValue(anyString());
 
-    Map<String, Map<String, ClusterNode>> roleClusterNodeMap = new HashMap<>();
-    Map<String, ClusterNode> container = new HashMap<>();
+    Map<String, Map<String, ClusterNode>> roleClusterNodeMap = new 
HashMap<String, Map<String, ClusterNode>>();
+    Map<String, ClusterNode> container = new HashMap<String, ClusterNode>();
     ClusterNode cn1 = new ClusterNode(new MockContainerId(1));
     cn1.host = "HOST1";
     container.put("cid1", cn1);
     roleClusterNodeMap.put("HBASE_MASTER", container);
     doReturn(roleClusterNodeMap).when(mockAps).getRoleClusterNodeMapping();
-    Map<String, String> allocatedPorts = new HashMap<>();
+    Map<String, String> allocatedPorts = new HashMap<String, String>();
     allocatedPorts.put("hbase-site.a.port", "10023");
     allocatedPorts.put("hbase-site.b.port", "10024");
     doReturn(allocatedPorts).when(mockAps).getAllocatedPorts();
-    Map<String, String> allocatedPorts2 = new HashMap<>();
+    Map<String, String> allocatedPorts2 = new HashMap<String, String>();
     allocatedPorts2.put("hbase-site.random.port", "10025");
     doReturn(allocatedPorts2).when(mockAps).getAllocatedPorts(anyString());
 

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/test/java/org/apache/slider/providers/agent/TestComponentInstanceState.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/java/org/apache/slider/providers/agent/TestComponentInstanceState.java
 
b/slider-core/src/test/java/org/apache/slider/providers/agent/TestComponentInstanceState.java
index e1f3d02..a723394 100644
--- 
a/slider-core/src/test/java/org/apache/slider/providers/agent/TestComponentInstanceState.java
+++ 
b/slider-core/src/test/java/org/apache/slider/providers/agent/TestComponentInstanceState.java
@@ -44,7 +44,7 @@ public class TestComponentInstanceState {
   }
 
   @Test
-  public void testGetNextStateBasedOnResult() {
+  public void testGetNextStateBasedOnResult() throws Exception {
     TestCase.assertEquals(State.INSTALLING, 
State.INSTALLING.getNextState(CommandResult.IN_PROGRESS));
     TestCase.assertEquals(State.STARTING, 
State.STARTING.getNextState(CommandResult.IN_PROGRESS));
     expectExceptionOnGetNextForResult(IllegalArgumentException.class, 
State.INIT, CommandResult.IN_PROGRESS);
@@ -68,7 +68,7 @@ public class TestComponentInstanceState {
   }
 
   @Test
-  public void testGetNextStateBasedOnCommand() {
+  public void testGetNextStateBasedOnCommand() throws Exception {
     for (State state : states) {
       TestCase.assertEquals(state, state.getNextState(Command.NOP));
     }
@@ -87,7 +87,8 @@ public class TestComponentInstanceState {
     expectIllegalArgumentException(State.STARTED, Command.START);
   }
 
-  protected void expectIllegalArgumentException(State state, Command command) {
+  protected void expectIllegalArgumentException(State state, Command command) 
throws
+      Exception {
     expectExceptionOnGetNextForCommand(IllegalArgumentException.class,
         state, command);
   }
@@ -274,7 +275,7 @@ public class TestComponentInstanceState {
   }
 
   private <T extends Throwable> void expectExceptionOnGetNextForResult(
-      Class<T> expected, State state, CommandResult result) {
+      Class<T> expected, State state, CommandResult result) throws Exception {
     try {
       state.getNextState(result);
       TestCase.fail("Must fail");
@@ -286,7 +287,7 @@ public class TestComponentInstanceState {
   }
 
   private <T extends Throwable> void expectExceptionOnGetNextForCommand(
-      Class<T> expected, State state, Command command) {
+      Class<T> expected, State state, Command command) throws Exception {
     try {
       state.getNextState(command);
       TestCase.fail("Must fail");

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/test/java/org/apache/slider/providers/agent/TestHeartbeatMonitor.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/java/org/apache/slider/providers/agent/TestHeartbeatMonitor.java
 
b/slider-core/src/test/java/org/apache/slider/providers/agent/TestHeartbeatMonitor.java
index 1ace44e..7314b72 100644
--- 
a/slider-core/src/test/java/org/apache/slider/providers/agent/TestHeartbeatMonitor.java
+++ 
b/slider-core/src/test/java/org/apache/slider/providers/agent/TestHeartbeatMonitor.java
@@ -56,7 +56,7 @@ public class TestHeartbeatMonitor {
     AgentProviderService provider = createNiceMock(AgentProviderService.class);
     HeartbeatMonitor hbm = new HeartbeatMonitor(provider, 500);
     Assert.assertFalse(hbm.isAlive());
-    Map<String, ComponentInstanceState> statuses = new HashMap<>();
+    Map<String, ComponentInstanceState> statuses = new HashMap<String, 
ComponentInstanceState>();
     ContainerId container1 = new MockContainerId(1);
     ComponentInstanceState state = new ComponentInstanceState("HBASE_MASTER",
         container1, "Aid");
@@ -79,7 +79,7 @@ public class TestHeartbeatMonitor {
     long now = 100000;
     int wakeupInterval = 2 * 1000;
 
-    Map<String, ComponentInstanceState> statuses = new HashMap<>();
+    Map<String, ComponentInstanceState> statuses = new HashMap<String, 
ComponentInstanceState>();
     ContainerId masterContainer = new MockContainerId(1); 
     ContainerId slaveContainer = new MockContainerId(2); 
     ComponentInstanceState masterState = new 
ComponentInstanceState("HBASE_MASTER",

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/management/TestAMManagementWebServices.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/management/TestAMManagementWebServices.java
 
b/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/management/TestAMManagementWebServices.java
index fd66bee..91aa2b0 100644
--- 
a/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/management/TestAMManagementWebServices.java
+++ 
b/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/management/TestAMManagementWebServices.java
@@ -177,7 +177,14 @@ public class TestAMManagementWebServices extends 
JerseyTest {
               fs,
               historyPath,
               null, null, new SimpleReleaseSelector());
-        } catch (IOException | BadClusterStateException | URISyntaxException | 
BadConfigException e) {
+// JDK7        } catch (IOException | BadClusterStateException | 
URISyntaxException | BadConfigException e) {
+        } catch (IOException e) {
+          log.error("{}", e, e);
+        } catch (BadClusterStateException e) {
+          log.error("{}", e, e);
+        } catch (URISyntaxException e) {
+          log.error("{}", e, e);
+        } catch (BadConfigException e) {
           log.error("{}", e, e);
         }
         ProviderAppState providerAppState = new ProviderAppState("undefined",

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/publisher/TestAgentProviderService.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/publisher/TestAgentProviderService.java
 
b/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/publisher/TestAgentProviderService.java
index a97e351..eb368e3 100644
--- 
a/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/publisher/TestAgentProviderService.java
+++ 
b/slider-core/src/test/java/org/apache/slider/server/appmaster/web/rest/publisher/TestAgentProviderService.java
@@ -46,7 +46,7 @@ public class TestAgentProviderService extends 
AgentProviderService {
       QueueAccess queueAccess,
       List<Container> liveContainers) {
     super.bind(stateAccessor, reg, queueAccess, liveContainers);
-    Map<String,String> dummyProps = new HashMap<>();
+    Map<String,String> dummyProps = new HashMap<String, String>();
     dummyProps.put("prop1", "val1");
     dummyProps.put("prop2", "val2");
     log.info("publishing dummy-site.xml with values {}", dummyProps);

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/test/java/org/apache/slider/server/services/workflow/ProcessCommandFactory.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/java/org/apache/slider/server/services/workflow/ProcessCommandFactory.java
 
b/slider-core/src/test/java/org/apache/slider/server/services/workflow/ProcessCommandFactory.java
index e77eeb3..45fdc86 100644
--- 
a/slider-core/src/test/java/org/apache/slider/server/services/workflow/ProcessCommandFactory.java
+++ 
b/slider-core/src/test/java/org/apache/slider/server/services/workflow/ProcessCommandFactory.java
@@ -37,7 +37,7 @@ public class ProcessCommandFactory {
    * @return commands
    */
   public List<String> ls(File dir) {
-    List<String> commands = new ArrayList<>(5);
+    List<String> commands = new ArrayList<String>(5);
     commands.add("ls");
     commands.add("-1");
     commands.add(dir.getAbsolutePath());
@@ -50,7 +50,7 @@ public class ProcessCommandFactory {
    * @return commands
    */
   public List<String> echo(String text) {
-    List<String> commands = new ArrayList<>(5);
+    List<String> commands = new ArrayList<String>(5);
     commands.add("echo");
     commands.add(text);
     return commands;
@@ -72,7 +72,7 @@ public class ProcessCommandFactory {
    * @return commands
    */
   public List<String> exitFalse() {
-    List<String> commands = new ArrayList<>(2);
+    List<String> commands = new ArrayList<String>(2);
     commands.add("false");
     return commands;
   }

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/397585a0/slider-core/src/test/java/org/apache/slider/test/MiniZooKeeperCluster.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/java/org/apache/slider/test/MiniZooKeeperCluster.java 
b/slider-core/src/test/java/org/apache/slider/test/MiniZooKeeperCluster.java
index cc2cc9b..d739324 100644
--- a/slider-core/src/test/java/org/apache/slider/test/MiniZooKeeperCluster.java
+++ b/slider-core/src/test/java/org/apache/slider/test/MiniZooKeeperCluster.java
@@ -75,9 +75,9 @@ public class MiniZooKeeperCluster {
     this.started = false;
     this.configuration = configuration;
     activeZKServerIndex = -1;
-    zooKeeperServers = new ArrayList<>();
-    clientPortList = new ArrayList<>();
-    standaloneServerFactoryList = new ArrayList<>();
+    zooKeeperServers = new ArrayList<ZooKeeperServer>();
+    clientPortList = new ArrayList<Integer>();
+    standaloneServerFactoryList = new ArrayList<NIOServerCnxnFactory>();
   }
 
   public void setDefaultClientPort(int clientPort) {

Reply via email to