You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by jo...@apache.org on 2016/04/29 15:53:17 UTC
ambari git commit: AMBARI-16082. Test Refresh Phase 1 (#3)
(jonathanhurley)
Repository: ambari
Updated Branches:
refs/heads/trunk f9eade043 -> fdd07bd81
AMBARI-16082. Test Refresh Phase 1 (#3) (jonathanhurley)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/fdd07bd8
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/fdd07bd8
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/fdd07bd8
Branch: refs/heads/trunk
Commit: fdd07bd8159efed093a5bea5b92fe6ec677f251e
Parents: f9eade0
Author: Jonathan Hurley <jh...@hortonworks.com>
Authored: Thu Apr 28 16:42:43 2016 -0400
Committer: Jonathan Hurley <jh...@hortonworks.com>
Committed: Fri Apr 29 09:36:02 2016 -0400
----------------------------------------------------------------------
.../actionmanager/ExecutionCommandWrapper.java | 33 ++++---
.../ExecutionCommandWrapperFactory.java | 32 +++++++
.../server/actionmanager/HostRoleCommand.java | 23 +++--
.../HostRoleCommandFactoryImpl.java | 12 ++-
.../ambari/server/actionmanager/Stage.java | 12 ++-
.../server/actionmanager/StageFactoryImpl.java | 20 ++---
.../server/controller/ControllerModule.java | 79 ++++++++--------
.../ExecutionCommandWrapperTest.java | 6 +-
.../ambari/server/agent/AgentResourceTest.java | 6 +-
.../internal/CalculatedStatusTest.java | 21 ++++-
.../internal/TaskResourceProviderTest.java | 4 +-
.../UpgradeResourceProviderHDP22Test.java | 4 +-
.../AutoSkipFailedSummaryActionTest.java | 72 ++++++++++-----
.../ambari/server/utils/StageUtilsTest.java | 94 +++++++++++---------
14 files changed, 261 insertions(+), 157 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java
index 52febc4..ef12c3a 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java
@@ -31,25 +31,36 @@ import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Clusters;
import org.apache.ambari.server.state.ConfigHelper;
import org.apache.ambari.server.utils.StageUtils;
-
-import com.google.inject.Inject;
-import com.google.inject.Injector;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.google.inject.Inject;
+import com.google.inject.assistedinject.Assisted;
+import com.google.inject.assistedinject.AssistedInject;
+
public class ExecutionCommandWrapper {
- @Inject
- static Injector injector;
+
private final static Logger LOG = LoggerFactory.getLogger(ExecutionCommandWrapper.class);
private static String DELETED = "DELETED_";
String jsonExecutionCommand = null;
ExecutionCommand executionCommand = null;
- public ExecutionCommandWrapper(String jsonExecutionCommand) {
+ @Inject
+ Clusters clusters;
+
+ @Inject
+ HostRoleCommandDAO hostRoleCommandDAO;
+
+ @Inject
+ ConfigHelper configHelper;
+
+ @AssistedInject
+ public ExecutionCommandWrapper(@Assisted String jsonExecutionCommand) {
this.jsonExecutionCommand = jsonExecutionCommand;
}
- public ExecutionCommandWrapper(ExecutionCommand executionCommand) {
+ @AssistedInject
+ public ExecutionCommandWrapper(@Assisted ExecutionCommand executionCommand) {
this.executionCommand = executionCommand;
}
@@ -60,23 +71,19 @@ public class ExecutionCommandWrapper {
} else if (jsonExecutionCommand != null) {
executionCommand = StageUtils.getGson().fromJson(jsonExecutionCommand, ExecutionCommand.class);
- if (injector == null) {
- throw new RuntimeException("Injector not found, configuration cannot be restored");
- } else if (executionCommand.getConfigurationTags() != null &&
+ if (executionCommand.getConfigurationTags() != null
+ &&
!executionCommand.getConfigurationTags().isEmpty()) {
// For a configuration type, both tag and an actual configuration can be stored
// Configurations from the tag is always expanded and then over-written by the actual
// global:version1:{a1:A1,b1:B1,d1:D1} + global:{a1:A2,c1:C1,DELETED_d1:x} ==>
// global:{a1:A2,b1:B1,c1:C1}
- Clusters clusters = injector.getInstance(Clusters.class);
- HostRoleCommandDAO hostRoleCommandDAO = injector.getInstance(HostRoleCommandDAO.class);
Long clusterId = hostRoleCommandDAO.findByPK(
executionCommand.getTaskId()).getStage().getClusterId();
try {
Cluster cluster = clusters.getClusterById(clusterId);
- ConfigHelper configHelper = injector.getInstance(ConfigHelper.class);
Map<String, Map<String, String>> configurationTags = executionCommand.getConfigurationTags();
// Execution commands have config-tags already set during their creation. However, these
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperFactory.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperFactory.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperFactory.java
new file mode 100644
index 0000000..29ee709
--- /dev/null
+++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperFactory.java
@@ -0,0 +1,32 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.ambari.server.actionmanager;
+
+import org.apache.ambari.server.agent.ExecutionCommand;
+
+/**
+ * The {@link ExecutionCommandWrapperFactory} is used to create instances of
+ * {@link ExecutionCommandWrapper} that have Guice injected members set.
+ */
+public interface ExecutionCommandWrapperFactory {
+
+ ExecutionCommandWrapper createFromJson(String jsonExecutionCommand);
+
+ ExecutionCommandWrapper createFromCommand(ExecutionCommand executionCommand);
+
+}
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommand.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommand.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommand.java
index 83fa6b9..2b9c10b 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommand.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommand.java
@@ -75,6 +75,9 @@ public class HostRoleCommand {
@Inject
private HostDAO hostDAO;
+ @Inject
+ private ExecutionCommandWrapperFactory ecwFactory;
+
/**
* Simple constructor, should be created using the Factory class.
* @param hostName Host name
@@ -85,8 +88,9 @@ public class HostRoleCommand {
*/
@AssistedInject
public HostRoleCommand(String hostName, Role role,
- ServiceComponentHostEvent event, RoleCommand command, HostDAO hostDAO, ExecutionCommandDAO executionCommandDAO) {
- this(hostName, role, event, command, false, false, hostDAO, executionCommandDAO);
+ ServiceComponentHostEvent event, RoleCommand command, HostDAO hostDAO,
+ ExecutionCommandDAO executionCommandDAO, ExecutionCommandWrapperFactory ecwFactory) {
+ this(hostName, role, event, command, false, false, hostDAO, executionCommandDAO, ecwFactory);
}
/**
@@ -101,9 +105,10 @@ public class HostRoleCommand {
@AssistedInject
public HostRoleCommand(String hostName, Role role, ServiceComponentHostEvent event,
RoleCommand roleCommand, boolean retryAllowed, boolean autoSkipFailure, HostDAO hostDAO,
- ExecutionCommandDAO executionCommandDAO) {
+ ExecutionCommandDAO executionCommandDAO, ExecutionCommandWrapperFactory ecwFactory) {
this.hostDAO = hostDAO;
this.executionCommandDAO = executionCommandDAO;
+ this.ecwFactory = ecwFactory;
this.role = role;
this.event = new ServiceComponentHostEventWrapper(event);
@@ -121,9 +126,10 @@ public class HostRoleCommand {
@AssistedInject
public HostRoleCommand(Host host, Role role, ServiceComponentHostEvent event,
RoleCommand roleCommand, boolean retryAllowed, boolean autoSkipFailure, HostDAO hostDAO,
- ExecutionCommandDAO executionCommandDAO) {
+ ExecutionCommandDAO executionCommandDAO, ExecutionCommandWrapperFactory ecwFactory) {
this.hostDAO = hostDAO;
this.executionCommandDAO = executionCommandDAO;
+ this.ecwFactory = ecwFactory;
this.role = role;
this.event = new ServiceComponentHostEventWrapper(event);
@@ -135,9 +141,11 @@ public class HostRoleCommand {
}
@AssistedInject
- public HostRoleCommand(@Assisted HostRoleCommandEntity hostRoleCommandEntity, HostDAO hostDAO, ExecutionCommandDAO executionCommandDAO) {
+ public HostRoleCommand(@Assisted HostRoleCommandEntity hostRoleCommandEntity, HostDAO hostDAO,
+ ExecutionCommandDAO executionCommandDAO, ExecutionCommandWrapperFactory ecwFactory) {
this.hostDAO = hostDAO;
this.executionCommandDAO = executionCommandDAO;
+ this.ecwFactory = ecwFactory;
taskId = hostRoleCommandEntity.getTaskId();
@@ -381,9 +389,8 @@ public class HostRoleCommand {
if (commandEntity == null) {
throw new RuntimeException("Invalid DB state, broken one-to-one relation for taskId=" + taskId);
}
- executionCommandWrapper = new ExecutionCommandWrapper(new String(
- commandEntity.getCommand()
- ));
+
+ executionCommandWrapper = ecwFactory.createFromJson(new String(commandEntity.getCommand()));
}
return executionCommandWrapper;
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommandFactoryImpl.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommandFactoryImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommandFactoryImpl.java
index cf1e989..bad1926 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommandFactoryImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleCommandFactoryImpl.java
@@ -53,7 +53,8 @@ public class HostRoleCommandFactoryImpl implements HostRoleCommandFactory {
ServiceComponentHostEvent event, RoleCommand command) {
return new HostRoleCommand(hostName, role, event, command,
injector.getInstance(HostDAO.class),
- injector.getInstance(ExecutionCommandDAO.class));
+ injector.getInstance(ExecutionCommandDAO.class),
+ injector.getInstance(ExecutionCommandWrapperFactory.class));
}
/**
@@ -63,7 +64,8 @@ public class HostRoleCommandFactoryImpl implements HostRoleCommandFactory {
public HostRoleCommand create(String hostName, Role role, ServiceComponentHostEvent event,
RoleCommand command, boolean retryAllowed, boolean autoSkipFailure) {
return new HostRoleCommand(hostName, role, event, command, retryAllowed, autoSkipFailure,
- injector.getInstance(HostDAO.class), injector.getInstance(ExecutionCommandDAO.class));
+ injector.getInstance(HostDAO.class), injector.getInstance(ExecutionCommandDAO.class),
+ injector.getInstance(ExecutionCommandWrapperFactory.class));
}
/**
@@ -73,7 +75,8 @@ public class HostRoleCommandFactoryImpl implements HostRoleCommandFactory {
public HostRoleCommand create(Host host, Role role, ServiceComponentHostEvent event,
RoleCommand command, boolean retryAllowed, boolean autoSkipFailure) {
return new HostRoleCommand(host, role, event, command, retryAllowed, autoSkipFailure,
- injector.getInstance(HostDAO.class), injector.getInstance(ExecutionCommandDAO.class));
+ injector.getInstance(HostDAO.class), injector.getInstance(ExecutionCommandDAO.class),
+ injector.getInstance(ExecutionCommandWrapperFactory.class));
}
/**
@@ -85,6 +88,7 @@ public class HostRoleCommandFactoryImpl implements HostRoleCommandFactory {
public HostRoleCommand createExisting(HostRoleCommandEntity hostRoleCommandEntity) {
return new HostRoleCommand(hostRoleCommandEntity,
injector.getInstance(HostDAO.class),
- injector.getInstance(ExecutionCommandDAO.class));
+ injector.getInstance(ExecutionCommandDAO.class),
+ injector.getInstance(ExecutionCommandWrapperFactory.class));
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/Stage.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/Stage.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/Stage.java
index 5a313d8..3fbeef9 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/Stage.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/Stage.java
@@ -95,6 +95,9 @@ public class Stage {
@Inject
private HostRoleCommandFactory hostRoleCommandFactory;
+ @Inject
+ private ExecutionCommandWrapperFactory ecwFactory;
+
@AssistedInject
public Stage(@Assisted long requestId,
@Assisted("logDir") String logDir,
@@ -104,7 +107,7 @@ public class Stage {
@Assisted("clusterHostInfo") String clusterHostInfo,
@Assisted("commandParamsStage") String commandParamsStage,
@Assisted("hostParamsStage") String hostParamsStage,
- HostRoleCommandFactory hostRoleCommandFactory) {
+ HostRoleCommandFactory hostRoleCommandFactory, ExecutionCommandWrapperFactory ecwFactory) {
wrappersLoaded = true;
this.requestId = requestId;
this.logDir = logDir;
@@ -119,12 +122,15 @@ public class Stage {
supportsAutoSkipOnFailure = false;
this.hostRoleCommandFactory = hostRoleCommandFactory;
+ this.ecwFactory = ecwFactory;
}
@AssistedInject
public Stage(@Assisted StageEntity stageEntity, HostRoleCommandDAO hostRoleCommandDAO,
- ActionDBAccessor dbAccessor, Clusters clusters, HostRoleCommandFactory hostRoleCommandFactory) {
+ ActionDBAccessor dbAccessor, Clusters clusters, HostRoleCommandFactory hostRoleCommandFactory,
+ ExecutionCommandWrapperFactory ecwFactory) {
this.hostRoleCommandFactory = hostRoleCommandFactory;
+ this.ecwFactory = ecwFactory;
requestId = stageEntity.getRequestId();
stageId = stageEntity.getStageId();
@@ -307,7 +313,7 @@ public class Stage {
//TODO refactor method to use Host object (host_id support)
private ExecutionCommandWrapper addGenericExecutionCommand(String clusterName, String hostName, Role role, RoleCommand command, ServiceComponentHostEvent event, HostRoleCommand hrc) {
ExecutionCommand cmd = new ExecutionCommand();
- ExecutionCommandWrapper wrapper = new ExecutionCommandWrapper(cmd);
+ ExecutionCommandWrapper wrapper = ecwFactory.createFromCommand(cmd);
hrc.setExecutionCommandWrapper(wrapper);
cmd.setHostname(hostName);
cmd.setClusterName(clusterName);
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/StageFactoryImpl.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/StageFactoryImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/StageFactoryImpl.java
index 9ee7c16..3cad82d 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/StageFactoryImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/StageFactoryImpl.java
@@ -18,20 +18,14 @@
package org.apache.ambari.server.actionmanager;
+import org.apache.ambari.server.orm.dao.HostRoleCommandDAO;
+import org.apache.ambari.server.orm.entities.StageEntity;
+import org.apache.ambari.server.state.Clusters;
+
import com.google.inject.Inject;
import com.google.inject.Injector;
import com.google.inject.Singleton;
import com.google.inject.assistedinject.Assisted;
-import org.apache.ambari.server.Role;
-import org.apache.ambari.server.RoleCommand;
-import org.apache.ambari.server.orm.DBAccessor;
-import org.apache.ambari.server.orm.dao.HostRoleCommandDAO;
-import org.apache.ambari.server.orm.entities.HostEntity;
-import org.apache.ambari.server.orm.entities.HostRoleCommandEntity;
-import org.apache.ambari.server.orm.entities.StageEntity;
-import org.apache.ambari.server.state.Clusters;
-import org.apache.ambari.server.state.ServiceComponentHostEvent;
-import org.apache.ambari.server.state.cluster.ClusterImpl;
@Singleton
public class StageFactoryImpl implements StageFactory {
@@ -64,7 +58,8 @@ public class StageFactoryImpl implements StageFactory {
@Assisted("commandParamsStage") String commandParamsStage,
@Assisted("hostParamsStage") String hostParamsStage) {
return new Stage(requestId, logDir, clusterName, clusterId, requestContext, clusterHostInfo, commandParamsStage, hostParamsStage,
- injector.getInstance(HostRoleCommandFactory.class));
+ injector.getInstance(HostRoleCommandFactory.class),
+ injector.getInstance(ExecutionCommandWrapperFactory.class));
}
/**
@@ -76,6 +71,7 @@ public class StageFactoryImpl implements StageFactory {
public Stage createExisting(@Assisted StageEntity stageEntity) {
return new Stage(stageEntity, injector.getInstance(HostRoleCommandDAO.class),
injector.getInstance(ActionDBAccessor.class), injector.getInstance(Clusters.class),
- injector.getInstance(HostRoleCommandFactory.class));
+ injector.getInstance(HostRoleCommandFactory.class),
+ injector.getInstance(ExecutionCommandWrapperFactory.class));
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java
index 91d6b4d..3506031 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java
@@ -18,23 +18,39 @@
package org.apache.ambari.server.controller;
-import com.google.common.util.concurrent.AbstractScheduledService;
-import com.google.common.util.concurrent.ServiceManager;
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.inject.AbstractModule;
-import com.google.inject.Scopes;
-import com.google.inject.assistedinject.FactoryModuleBuilder;
-import com.google.inject.name.Names;
-import com.google.inject.persist.PersistModule;
-import com.google.inject.persist.jpa.AmbariJpaPersistModule;
-import com.mchange.v2.c3p0.ComboPooledDataSource;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.CREATE_JDBC_DDL_FILE;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.CREATE_ONLY;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.CREATE_OR_EXTEND;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.DDL_BOTH_GENERATION;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.DDL_GENERATION;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.DDL_GENERATION_MODE;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.DROP_AND_CREATE;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.DROP_JDBC_DDL_FILE;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_DRIVER;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_PASSWORD;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_URL;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_USER;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.NON_JTA_DATASOURCE;
+import static org.eclipse.persistence.config.PersistenceUnitProperties.THROW_EXCEPTIONS;
+
+import java.beans.PropertyVetoException;
+import java.lang.annotation.Annotation;
+import java.security.SecureRandom;
+import java.text.MessageFormat;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Properties;
+import java.util.Set;
+
import org.apache.ambari.server.AmbariService;
import org.apache.ambari.server.EagerSingleton;
import org.apache.ambari.server.StaticallyInject;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionDBAccessorImpl;
-import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapperFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommandFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommandFactoryImpl;
import org.apache.ambari.server.actionmanager.RequestFactory;
@@ -127,32 +143,17 @@ import org.springframework.security.web.AuthenticationEntryPoint;
import org.springframework.util.ClassUtils;
import org.springframework.web.filter.DelegatingFilterProxy;
-import java.beans.PropertyVetoException;
-import java.lang.annotation.Annotation;
-import java.security.SecureRandom;
-import java.text.MessageFormat;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Properties;
-import java.util.Set;
-
-import static org.eclipse.persistence.config.PersistenceUnitProperties.CREATE_JDBC_DDL_FILE;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.CREATE_ONLY;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.CREATE_OR_EXTEND;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.DDL_BOTH_GENERATION;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.DDL_GENERATION;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.DDL_GENERATION_MODE;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.DROP_AND_CREATE;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.DROP_JDBC_DDL_FILE;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_DRIVER;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_PASSWORD;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_URL;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.JDBC_USER;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.NON_JTA_DATASOURCE;
-import static org.eclipse.persistence.config.PersistenceUnitProperties.THROW_EXCEPTIONS;
+import com.google.common.util.concurrent.AbstractScheduledService;
+import com.google.common.util.concurrent.ServiceManager;
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.inject.AbstractModule;
+import com.google.inject.Scopes;
+import com.google.inject.assistedinject.FactoryModuleBuilder;
+import com.google.inject.name.Names;
+import com.google.inject.persist.PersistModule;
+import com.google.inject.persist.jpa.AmbariJpaPersistModule;
+import com.mchange.v2.c3p0.ComboPooledDataSource;
/**
* Used for injection purposes.
@@ -368,7 +369,6 @@ public class ControllerModule extends AbstractModule {
bind(AuthenticationEntryPoint.class).to(AmbariEntryPoint.class).in(Scopes.SINGLETON);
- requestStaticInjection(ExecutionCommandWrapper.class);
requestStaticInjection(DatabaseChecker.class);
requestStaticInjection(KerberosChecker.class);
@@ -456,6 +456,7 @@ public class ControllerModule extends AbstractModule {
bind(RoleGraphFactory.class).to(RoleGraphFactoryImpl.class);
install(new FactoryModuleBuilder().build(RequestFactory.class));
install(new FactoryModuleBuilder().build(StackManagerFactory.class));
+ install(new FactoryModuleBuilder().build(ExecutionCommandWrapperFactory.class));
bind(HostRoleCommandFactory.class).to(HostRoleCommandFactoryImpl.class);
bind(SecurityHelper.class).toInstance(SecurityHelperImpl.getInstance());
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperTest.java
index df033d1..b212e93 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapperTest.java
@@ -27,8 +27,6 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
-import junit.framework.Assert;
-
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.Role;
import org.apache.ambari.server.RoleCommand;
@@ -51,6 +49,8 @@ import org.junit.Test;
import com.google.inject.Guice;
import com.google.inject.Injector;
+import junit.framework.Assert;
+
public class ExecutionCommandWrapperTest {
private static final String HOST1 = "dev01.ambari.apache.org";
@@ -210,6 +210,8 @@ public class ExecutionCommandWrapperTest {
String json = StageUtils.getGson().toJson(executionCommand, ExecutionCommand.class);
ExecutionCommandWrapper execCommWrap = new ExecutionCommandWrapper(json);
+ injector.injectMembers(execCommWrap);
+
ExecutionCommand processedExecutionCommand = execCommWrap.getExecutionCommand();
Map<String, String> serviceSiteConfig = processedExecutionCommand.getConfigurations().get(SERVICE_SITE_CONFIG);
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/test/java/org/apache/ambari/server/agent/AgentResourceTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/agent/AgentResourceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/agent/AgentResourceTest.java
index 6cb9e6f..dd741e9 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/agent/AgentResourceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/agent/AgentResourceTest.java
@@ -24,11 +24,10 @@ import static org.mockito.Mockito.when;
import javax.ws.rs.core.MediaType;
-import junit.framework.Assert;
-
import org.apache.ambari.server.RandomPortJerseyTest;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionManager;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapperFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommandFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommandFactoryImpl;
import org.apache.ambari.server.actionmanager.StageFactory;
@@ -91,6 +90,8 @@ import com.sun.jersey.api.json.JSONConfiguration;
import com.sun.jersey.spi.container.servlet.ServletContainer;
import com.sun.jersey.test.framework.WebAppDescriptor;
+import junit.framework.Assert;
+
public class AgentResourceTest extends RandomPortJerseyTest {
static String PACKAGE_NAME = "org.apache.ambari.server.agent.rest";
@@ -333,6 +334,7 @@ public class AgentResourceTest extends RandomPortJerseyTest {
install(new FactoryModuleBuilder().implement(RequestExecution.class,
RequestExecutionImpl.class).build(RequestExecutionFactory.class));
install(new FactoryModuleBuilder().build(StageFactory.class));
+ install(new FactoryModuleBuilder().build(ExecutionCommandWrapperFactory.class));
bind(HostRoleCommandFactory.class).to(HostRoleCommandFactoryImpl.class);
bind(SecurityHelper.class).toInstance(SecurityHelperImpl.getInstance());
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java
index 46c0b03..6f592cd 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java
@@ -17,15 +17,26 @@
*/
package org.apache.ambari.server.controller.internal;
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
-import static org.easymock.EasyMock.*;
import java.lang.reflect.Field;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import org.apache.ambari.server.Role;
import org.apache.ambari.server.RoleCommand;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapperFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommand;
import org.apache.ambari.server.actionmanager.HostRoleCommandFactory;
import org.apache.ambari.server.actionmanager.HostRoleStatus;
@@ -35,7 +46,6 @@ import org.apache.ambari.server.orm.InMemoryDefaultTestModule;
import org.apache.ambari.server.orm.dao.HostRoleCommandStatusSummaryDTO;
import org.apache.ambari.server.orm.entities.HostRoleCommandEntity;
import org.apache.ambari.server.orm.entities.StageEntity;
-
import org.junit.Before;
import org.junit.Test;
@@ -54,6 +64,9 @@ public class CalculatedStatusTest {
@Inject
HostRoleCommandFactory hostRoleCommandFactory;
+ @Inject
+ ExecutionCommandWrapperFactory ecwFactory;
+
private static long taskId = 0L;
private static long stageId = 0L;
@@ -691,7 +704,7 @@ public class CalculatedStatusTest {
private final List<HostRoleCommand> hostRoleCommands = new LinkedList<HostRoleCommand>();
private TestStage() {
- super(1L, "", "", 1L, "", "", "", "", hostRoleCommandFactory);
+ super(1L, "", "", 1L, "", "", "", "", hostRoleCommandFactory, ecwFactory);
}
void setHostRoleCommands(Collection<HostRoleCommandEntity> tasks) {
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/TaskResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/TaskResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/TaskResourceProviderTest.java
index 91cfef8..dd28d6b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/TaskResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/TaskResourceProviderTest.java
@@ -36,6 +36,7 @@ import java.util.Map;
import java.util.Set;
import org.apache.ambari.server.Role;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapperFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommand;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.controller.RequestStatusResponse;
@@ -168,6 +169,7 @@ public class TaskResourceProviderTest {
TopologyManager topologyManager = createMock(TopologyManager.class);
HostDAO hostDAO = createMock(HostDAO.class);
ExecutionCommandDAO executionCommandDAO = createMock(ExecutionCommandDAO.class);
+ ExecutionCommandWrapperFactory ecwFactory = createMock(ExecutionCommandWrapperFactory.class);
Injector m_injector = Guice.createInjector(new InMemoryDefaultTestModule());
TaskResourceProvider provider = (TaskResourceProvider) AbstractControllerResourceProvider.getResourceProvider(
@@ -187,7 +189,7 @@ public class TaskResourceProviderTest {
hostRoleCommandEntity.setRole(Role.DATANODE);
hostRoleCommandEntity.setCustomCommandName("customCommandName");
hostRoleCommandEntity.setCommandDetail("commandDetail");
- commands.add(new HostRoleCommand(hostRoleCommandEntity, hostDAO, executionCommandDAO));
+ commands.add(new HostRoleCommand(hostRoleCommandEntity, hostDAO, executionCommandDAO, ecwFactory));
// set expectations
expect(hostRoleCommandDAO.findAll(EasyMock.anyObject(Request.class),
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java
index a9c4b17..a4a3108 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java
@@ -33,6 +33,7 @@ import java.util.Set;
import org.apache.ambari.server.actionmanager.ActionManager;
import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapperFactory;
import org.apache.ambari.server.agent.ExecutionCommand;
import org.apache.ambari.server.agent.ExecutionCommand.KeyNames;
import org.apache.ambari.server.controller.AmbariManagementController;
@@ -367,7 +368,8 @@ public class UpgradeResourceProviderHDP22Test {
assertEquals(1, tags.size());
assertEquals("*", tags.get(0));
- ExecutionCommandWrapper executionCommandWrapper = new ExecutionCommandWrapper(executionCommandJson);
+ ExecutionCommandWrapperFactory ecwFactory = injector.getInstance(ExecutionCommandWrapperFactory.class);
+ ExecutionCommandWrapper executionCommandWrapper = ecwFactory.createFromJson(executionCommandJson);
ExecutionCommand executionCommand = executionCommandWrapper.getExecutionCommand();
Map<String, Map<String, String>> configurationTags = executionCommand.getConfigurationTags();
assertEquals(configTagVersion2, configurationTags.get("hive-site").get("tag"));
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java
index 5e35b301..8dc4c1b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java
@@ -17,37 +17,58 @@
*/
package org.apache.ambari.server.serveraction.upgrades;
-import com.google.inject.AbstractModule;
-import com.google.inject.Guice;
-import com.google.inject.Inject;
-import com.google.inject.Injector;
-import com.google.inject.persist.PersistService;
-import com.google.inject.persist.UnitOfWork;
-import com.google.inject.util.Modules;
-import org.apache.ambari.server.*;
-import org.apache.ambari.server.actionmanager.*;
+import static org.easymock.EasyMock.anyLong;
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.anyString;
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
+import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
+
+import org.apache.ambari.server.Role;
+import org.apache.ambari.server.RoleCommand;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapperFactory;
+import org.apache.ambari.server.actionmanager.HostRoleCommand;
+import org.apache.ambari.server.actionmanager.HostRoleStatus;
+import org.apache.ambari.server.actionmanager.ServiceComponentHostEventWrapper;
import org.apache.ambari.server.agent.CommandReport;
import org.apache.ambari.server.agent.ExecutionCommand;
import org.apache.ambari.server.metadata.ActionMetadata;
import org.apache.ambari.server.orm.GuiceJpaInitializer;
import org.apache.ambari.server.orm.InMemoryDefaultTestModule;
-import org.apache.ambari.server.orm.dao.*;
-import org.apache.ambari.server.orm.entities.*;
+import org.apache.ambari.server.orm.dao.ExecutionCommandDAO;
+import org.apache.ambari.server.orm.dao.HostDAO;
+import org.apache.ambari.server.orm.dao.HostRoleCommandDAO;
+import org.apache.ambari.server.orm.dao.UpgradeDAO;
+import org.apache.ambari.server.orm.entities.HostEntity;
+import org.apache.ambari.server.orm.entities.HostRoleCommandEntity;
+import org.apache.ambari.server.orm.entities.UpgradeGroupEntity;
+import org.apache.ambari.server.orm.entities.UpgradeItemEntity;
import org.apache.ambari.server.serveraction.AbstractServerAction;
-import org.apache.ambari.server.state.*;
+import org.apache.ambari.server.state.Cluster;
+import org.apache.ambari.server.state.Clusters;
+import org.apache.ambari.server.state.ServiceComponentHostEvent;
+import org.apache.ambari.server.state.StackId;
import org.apache.ambari.server.state.svccomphost.ServiceComponentHostOpInProgressEvent;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
-import static org.easymock.EasyMock.*;
-
-import java.lang.reflect.Field;
-import java.util.*;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
-
-import static org.junit.Assert.*;
+import com.google.inject.AbstractModule;
+import com.google.inject.Guice;
+import com.google.inject.Inject;
+import com.google.inject.Injector;
+import com.google.inject.persist.PersistService;
+import com.google.inject.persist.UnitOfWork;
+import com.google.inject.util.Modules;
public class AutoSkipFailedSummaryActionTest {
@@ -61,6 +82,9 @@ public class AutoSkipFailedSummaryActionTest {
@Inject
private HostDAO hostDAO;
+ @Inject
+ private ExecutionCommandWrapperFactory ecwFactory;
+
// Mocked out values
private UpgradeDAO upgradeDAOMock;
private HostRoleCommandDAO hostRoleCommandDAOMock;
@@ -112,7 +136,7 @@ public class AutoSkipFailedSummaryActionTest {
// Set mock for parent's getHostRoleCommand()
HostRoleCommand hostRoleCommand = new HostRoleCommand("host1", Role.AMBARI_SERVER_ACTION,
- event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO);
+ event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO, ecwFactory);
hostRoleCommand.setRequestId(1l);
hostRoleCommand.setStageId(1l);
@@ -181,7 +205,7 @@ public class AutoSkipFailedSummaryActionTest {
// Set mock for parent's getHostRoleCommand()
final HostRoleCommand hostRoleCommand = new HostRoleCommand("host1", Role.AMBARI_SERVER_ACTION,
- event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO);
+ event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO, ecwFactory);
hostRoleCommand.setRequestId(1l);
hostRoleCommand.setStageId(1l);
@@ -268,7 +292,7 @@ public class AutoSkipFailedSummaryActionTest {
// Set mock for parent's getHostRoleCommand()
final HostRoleCommand hostRoleCommand = new HostRoleCommand("host1", Role.AMBARI_SERVER_ACTION,
- event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO);
+ event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO, ecwFactory);
hostRoleCommand.setRequestId(1l);
hostRoleCommand.setStageId(1l);
@@ -341,7 +365,7 @@ public class AutoSkipFailedSummaryActionTest {
// Set mock for parent's getHostRoleCommand()
final HostRoleCommand hostRoleCommand = new HostRoleCommand("host1", Role.AMBARI_SERVER_ACTION,
- event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO);
+ event, RoleCommand.EXECUTE, hostDAO, executionCommandDAO, ecwFactory);
hostRoleCommand.setRequestId(1l);
hostRoleCommand.setStageId(1l);
http://git-wip-us.apache.org/repos/asf/ambari/blob/fdd07bd8/ambari-server/src/test/java/org/apache/ambari/server/utils/StageUtilsTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/utils/StageUtilsTest.java b/ambari-server/src/test/java/org/apache/ambari/server/utils/StageUtilsTest.java
index 215d137..3f1fba3 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/utils/StageUtilsTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/utils/StageUtilsTest.java
@@ -17,17 +17,38 @@
*/
package org.apache.ambari.server.utils;
-import com.google.common.base.Predicate;
-import com.google.common.collect.ContiguousSet;
-import com.google.common.collect.DiscreteDomain;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Range;
-import com.google.gson.Gson;
-import com.google.inject.AbstractModule;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.getCurrentArguments;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.nio.charset.Charset;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import java.util.SortedMap;
+import java.util.TreeMap;
+
+import javax.persistence.EntityManager;
+import javax.xml.bind.JAXBException;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper;
+import org.apache.ambari.server.actionmanager.ExecutionCommandWrapperFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommandFactory;
import org.apache.ambari.server.actionmanager.HostRoleCommandFactoryImpl;
import org.apache.ambari.server.actionmanager.Stage;
@@ -63,33 +84,16 @@ import org.easymock.IAnswer;
import org.junit.Before;
import org.junit.Test;
-import javax.persistence.EntityManager;
-import javax.xml.bind.JAXBException;
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.nio.charset.Charset;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.SortedMap;
-import java.util.TreeMap;
-
-import static org.easymock.EasyMock.anyObject;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.expectLastCall;
-import static org.easymock.EasyMock.getCurrentArguments;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import com.google.common.base.Predicate;
+import com.google.common.collect.ContiguousSet;
+import com.google.common.collect.DiscreteDomain;
+import com.google.common.collect.Maps;
+import com.google.common.collect.Range;
+import com.google.gson.Gson;
+import com.google.inject.AbstractModule;
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import com.google.inject.assistedinject.FactoryModuleBuilder;
public class StageUtilsTest extends EasyMockSupport {
private static final String STACK_ID = "HDP-1.3.1";
@@ -120,6 +124,8 @@ public class StageUtilsTest extends EasyMockSupport {
bind(HostDAO.class).toInstance(createNiceMock(HostDAO.class));
bind(PersistedState.class).toInstance(createNiceMock(PersistedState.class));
bind(HostRoleCommandDAO.class).toInstance(createNiceMock(HostRoleCommandDAO.class));
+
+ install(new FactoryModuleBuilder().build(ExecutionCommandWrapperFactory.class));
}
});
@@ -395,7 +401,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return nnServiceComponentHosts.get((String) args[0]);
+ return nnServiceComponentHosts.get(args[0]);
}
}).anyTimes();
expect(nnComponent.getServiceComponentHosts()).andReturn(nnServiceComponentHosts).anyTimes();
@@ -408,7 +414,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return snnServiceComponentHosts.get((String) args[0]);
+ return snnServiceComponentHosts.get(args[0]);
}
}).anyTimes();
expect(snnComponent.getServiceComponentHosts()).andReturn(snnServiceComponentHosts).anyTimes();
@@ -421,7 +427,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return dnServiceComponentHosts.get((String) args[0]);
+ return dnServiceComponentHosts.get(args[0]);
}
}).anyTimes();
expect(dnComponent.getServiceComponentHosts()).andReturn(dnServiceComponentHosts).anyTimes();
@@ -434,7 +440,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return hbmServiceComponentHosts.get((String) args[0]);
+ return hbmServiceComponentHosts.get(args[0]);
}
}).anyTimes();
expect(hbmComponent.getServiceComponentHosts()).andReturn(hbmServiceComponentHosts).anyTimes();
@@ -447,7 +453,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return hbrsServiceComponentHosts.get((String) args[0]);
+ return hbrsServiceComponentHosts.get(args[0]);
}
}).anyTimes();
Map<String, ServiceComponentHost> hbrsHosts = Maps.filterKeys(hbrsServiceComponentHosts, new Predicate<String>() {
@@ -466,7 +472,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return mrjtServiceComponentHosts.get((String) args[0]);
+ return mrjtServiceComponentHosts.get(args[0]);
}
}).anyTimes();
expect(mrjtComponent.getServiceComponentHosts()).andReturn(mrjtServiceComponentHosts).anyTimes();
@@ -479,7 +485,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return mrttServiceComponentHosts.get((String) args[0]);
+ return mrttServiceComponentHosts.get(args[0]);
}
}).anyTimes();
expect(mrttCompomnent.getServiceComponentHosts()).andReturn(mrttServiceComponentHosts).anyTimes();
@@ -492,7 +498,7 @@ public class StageUtilsTest extends EasyMockSupport {
@Override
public ServiceComponentHost answer() throws Throwable {
Object[] args = getCurrentArguments();
- return nnsServiceComponentHosts.get((String) args[0]);
+ return nnsServiceComponentHosts.get(args[0]);
}
}).anyTimes();
expect(nnsComponent.getServiceComponentHosts()).andReturn(nnsServiceComponentHosts).anyTimes();