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) {