You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ke...@apache.org on 2013/02/02 00:27:31 UTC
[24/50] [abbrv] Improve component lifecycle management with system
run-level concept
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java b/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
index e446366..a24300e 100644
--- a/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
+++ b/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
@@ -70,6 +70,7 @@ import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.JoinBuilder;
@@ -81,7 +82,7 @@ import com.cloud.vm.DomainRouterVO;
@Component
@Local(value = { Site2SiteVpnManager.class, Site2SiteVpnService.class } )
-public class Site2SiteVpnManagerImpl implements Site2SiteVpnManager, Manager {
+public class Site2SiteVpnManagerImpl extends ManagerBase implements Site2SiteVpnManager {
private static final Logger s_logger = Logger.getLogger(Site2SiteVpnManagerImpl.class);
@Inject List<Site2SiteVpnServiceProvider> _s2sProviders;
@@ -101,8 +102,6 @@ public class Site2SiteVpnManagerImpl implements Site2SiteVpnManager, Manager {
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- _name = name;
-
Map<String, String> configs = _configDao.getConfiguration(params);
_connLimit = NumbersUtil.parseInt(configs.get(Config.Site2SiteVpnConnectionPerVpnGatewayLimit.key()), 4);
_subnetsLimit = NumbersUtil.parseInt(configs.get(Config.Site2SiteVpnSubnetsPerCustomerGatewayLimit.key()), 10);
@@ -111,21 +110,6 @@ public class Site2SiteVpnManagerImpl implements Site2SiteVpnManager, Manager {
}
@Override
- public boolean start() {
- return true;
- }
-
- @Override
- public boolean stop() {
- return true;
- }
-
- @Override
- public String getName() {
- return _name;
- }
-
- @Override
@ActionEvent(eventType = EventTypes.EVENT_S2S_VPN_GATEWAY_CREATE, eventDescription = "creating s2s vpn gateway", create=true)
public Site2SiteVpnGateway createVpnGateway(CreateVpnGatewayCmd cmd) {
Account caller = UserContext.current().getCaller();
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/projects/ProjectManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/projects/ProjectManagerImpl.java b/server/src/com/cloud/projects/ProjectManagerImpl.java
index ebe6d0c..72ed940 100755
--- a/server/src/com/cloud/projects/ProjectManagerImpl.java
+++ b/server/src/com/cloud/projects/ProjectManagerImpl.java
@@ -74,6 +74,7 @@ import com.cloud.user.dao.AccountDao;
import com.cloud.utils.DateUtil;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Transaction;
@@ -84,9 +85,8 @@ import com.sun.mail.smtp.SMTPTransport;
@Component
@Local(value = { ProjectService.class, ProjectManager.class })
-public class ProjectManagerImpl implements ProjectManager, Manager{
+public class ProjectManagerImpl extends ManagerBase implements ProjectManager {
public static final Logger s_logger = Logger.getLogger(ProjectManagerImpl.class);
- private String _name;
private EmailInvite _emailInvite;
@Inject
@@ -127,8 +127,7 @@ public class ProjectManagerImpl implements ProjectManager, Manager{
@Override
public boolean configure(final String name, final Map<String, Object> params) throws ConfigurationException {
- _name = name;
-
+
Map<String, String> configs = _configDao.getConfiguration(params);
_invitationRequired = Boolean.valueOf(configs.get(Config.ProjectInviteRequired.key()));
@@ -170,11 +169,6 @@ public class ProjectManagerImpl implements ProjectManager, Manager{
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
@ActionEvent(eventType = EventTypes.EVENT_PROJECT_CREATE, eventDescription = "creating project", create=true)
@DB
public Project createProject(String name, String displayText, String accountName, Long domainId) throws ResourceAllocationException{
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/resource/DummyHostDiscoverer.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/resource/DummyHostDiscoverer.java b/server/src/com/cloud/resource/DummyHostDiscoverer.java
index 905fccf..800c1948 100755
--- a/server/src/com/cloud/resource/DummyHostDiscoverer.java
+++ b/server/src/com/cloud/resource/DummyHostDiscoverer.java
@@ -30,14 +30,13 @@ import org.springframework.stereotype.Component;
import com.cloud.host.HostVO;
import com.cloud.hypervisor.Hypervisor;
+import com.cloud.utils.component.AdapterBase;
@Component
@Local(value=Discoverer.class)
-public class DummyHostDiscoverer implements Discoverer {
+public class DummyHostDiscoverer extends AdapterBase implements Discoverer {
private static final Logger s_logger = Logger.getLogger(DummyHostDiscoverer.class);
- private String _name;
-
@Override
public Map<ServerResource, Map<String, String>> find(long dcId, Long podId, Long clusterId, URI url, String username, String password, List<String> hostTags) {
if (!url.getScheme().equals("dummy")) {
@@ -71,26 +70,6 @@ public class DummyHostDiscoverer implements Discoverer {
}
@Override
- public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- return true;
- }
-
- @Override
- public String getName() {
- return _name;
- }
-
- @Override
- public boolean start() {
- return true;
- }
-
- @Override
- public boolean stop() {
- return true;
- }
-
- @Override
public boolean matchHypervisor(String hypervisor) {
return false;
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/resource/DummyHostServerResource.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/resource/DummyHostServerResource.java b/server/src/com/cloud/resource/DummyHostServerResource.java
index d300f6b..977dbbf 100644
--- a/server/src/com/cloud/resource/DummyHostServerResource.java
+++ b/server/src/com/cloud/resource/DummyHostServerResource.java
@@ -164,4 +164,34 @@ public class DummyHostServerResource extends ServerResourceBase {
String.valueOf((id >> 8) & 0xff) + "." +
String.valueOf((id) & 0xff);
}
+
+ @Override
+ public void setName(String name) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void setConfigParams(Map<String, Object> params) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public Map<String, Object> getConfigParams() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public int getRunLevel() {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ @Override
+ public void setRunLevel(int level) {
+ // TODO Auto-generated method stub
+
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/resource/ResourceManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/resource/ResourceManagerImpl.java b/server/src/com/cloud/resource/ResourceManagerImpl.java
index a67cc4a..8b74ee1 100755
--- a/server/src/com/cloud/resource/ResourceManagerImpl.java
+++ b/server/src/com/cloud/resource/ResourceManagerImpl.java
@@ -137,6 +137,7 @@ import com.cloud.utils.Pair;
import com.cloud.utils.StringUtils;
import com.cloud.utils.UriUtils;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.db.SearchCriteria.Op;
@@ -156,13 +157,11 @@ import com.cloud.vm.dao.VMInstanceDao;
@Component
@Local({ ResourceManager.class, ResourceService.class })
-public class ResourceManagerImpl implements ResourceManager, ResourceService,
+public class ResourceManagerImpl extends ManagerBase implements ResourceManager, ResourceService,
Manager {
private static final Logger s_logger = Logger
.getLogger(ResourceManagerImpl.class);
- private String _name;
-
@Inject
AccountManager _accountMgr;
@Inject
@@ -1482,27 +1481,11 @@ public class ResourceManagerImpl implements ResourceManager, ResourceService,
@Override
public boolean configure(String name, Map<String, Object> params)
throws ConfigurationException {
- _name = name;
_defaultSystemVMHypervisor = HypervisorType.getType(_configDao
.getValue(Config.SystemVMDefaultHypervisor.toString()));
return true;
}
-
- @Override
- public boolean start() {
- return true;
- }
-
- @Override
- public boolean stop() {
- return true;
- }
-
- @Override
- public String getName() {
- return _name;
- }
-
+
@Override
public List<HypervisorType> getSupportedHypervisorTypes(long zoneId,
boolean forVirtualRouter, Long podId) {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java b/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
index 3566834..7419690 100755
--- a/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
+++ b/server/src/com/cloud/resourcelimit/ResourceLimitManagerImpl.java
@@ -70,6 +70,7 @@ import com.cloud.user.UserContext;
import com.cloud.user.dao.AccountDao;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Filter;
@@ -84,10 +85,9 @@ import edu.emory.mathcs.backport.java.util.Arrays;
@Component
@Local(value = { ResourceLimitService.class })
-public class ResourceLimitManagerImpl implements ResourceLimitService, Manager {
+public class ResourceLimitManagerImpl extends ManagerBase implements ResourceLimitService {
public static final Logger s_logger = Logger.getLogger(ResourceLimitManagerImpl.class);
- private String _name;
@Inject
private DomainDao _domainDao;
@Inject
@@ -132,11 +132,6 @@ public class ResourceLimitManagerImpl implements ResourceLimitService, Manager {
Map<ResourceType, Long> projectResourceLimitMap = new EnumMap<ResourceType, Long>(ResourceType.class);
@Override
- public String getName() {
- return _name;
- }
-
- @Override
public boolean start() {
if (_resourceCountCheckInterval > 0) {
_rcExecutor.scheduleAtFixedRate(new ResourceCountCheckTask(), _resourceCountCheckInterval, _resourceCountCheckInterval, TimeUnit.SECONDS);
@@ -151,7 +146,6 @@ public class ResourceLimitManagerImpl implements ResourceLimitService, Manager {
@Override
public boolean configure(final String name, final Map<String, Object> params) throws ConfigurationException {
- _name = name;
ResourceCountSearch = _resourceCountDao.createSearchBuilder();
ResourceCountSearch.and("id", ResourceCountSearch.entity().getId(), SearchCriteria.Op.IN);
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/server/ConfigurationServerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/server/ConfigurationServerImpl.java b/server/src/com/cloud/server/ConfigurationServerImpl.java
index 75a2af7..b55e949 100755
--- a/server/src/com/cloud/server/ConfigurationServerImpl.java
+++ b/server/src/com/cloud/server/ConfigurationServerImpl.java
@@ -40,6 +40,7 @@ import java.util.regex.Pattern;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
import javax.inject.Inject;
+import javax.naming.ConfigurationException;
import org.apache.commons.codec.binary.Base64;
import org.apache.log4j.Logger;
@@ -96,6 +97,8 @@ import com.cloud.user.User;
import com.cloud.user.dao.AccountDao;
import com.cloud.utils.PasswordGenerator;
import com.cloud.utils.PropertiesUtil;
+import com.cloud.utils.component.ComponentLifecycle;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.crypt.DBEncryptionUtil;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Transaction;
@@ -104,8 +107,8 @@ import com.cloud.utils.net.NetUtils;
import com.cloud.utils.script.Script;
import com.cloud.uuididentity.dao.IdentityDao;
-//@Component
-public class ConfigurationServerImpl implements ConfigurationServer {
+@Component
+public class ConfigurationServerImpl extends ManagerBase implements ConfigurationServer {
public static final Logger s_logger = Logger.getLogger(ConfigurationServerImpl.class.getName());
@Inject private ConfigurationDao _configDao;
@@ -125,7 +128,20 @@ public class ConfigurationServerImpl implements ConfigurationServer {
@Inject private IdentityDao _identityDao;
public ConfigurationServerImpl() {
+ setRunLevel(ComponentLifecycle.RUN_LEVEL_FRAMEWORK_BOOTSTRAP);
}
+
+ @Override
+ public boolean configure(String name, Map<String, Object> params)
+ throws ConfigurationException {
+
+ try {
+ persistDefaultValues();
+ } catch (InternalErrorException e) {
+ throw new RuntimeException("Unhandled configuration exception", e);
+ }
+ return true;
+ }
@Override
@DB
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/server/ManagementServer.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/server/ManagementServer.java b/server/src/com/cloud/server/ManagementServer.java
index 8655d15..5c34dee 100755
--- a/server/src/com/cloud/server/ManagementServer.java
+++ b/server/src/com/cloud/server/ManagementServer.java
@@ -39,8 +39,6 @@ public interface ManagementServer extends ManagementService, PluggableService {
*/
long getId();
- void startup();
-
/**
* Fetches the version of cloud stack
*/
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/server/ManagementServerExtImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/server/ManagementServerExtImpl.java b/server/src/com/cloud/server/ManagementServerExtImpl.java
index c9ef91d..52ad3df 100644
--- a/server/src/com/cloud/server/ManagementServerExtImpl.java
+++ b/server/src/com/cloud/server/ManagementServerExtImpl.java
@@ -23,8 +23,8 @@ import java.util.List;
import java.util.Map;
import java.util.TimeZone;
-import javax.annotation.PostConstruct;
import javax.inject.Inject;
+import javax.naming.ConfigurationException;
import com.cloud.api.commands.GenerateUsageRecordsCmd;
import com.cloud.api.commands.GetUsageRecordsCmd;
@@ -32,7 +32,6 @@ import com.cloud.domain.dao.DomainDao;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.projects.Project;
-import com.cloud.utils.PropertiesUtil;
import org.apache.cloudstack.api.response.UsageTypeResponse;
import com.cloud.usage.UsageJobVO;
@@ -58,16 +57,16 @@ public class ManagementServerExtImpl extends ManagementServerImpl implements Man
public ManagementServerExtImpl() {
}
- @PostConstruct
- void init() {
- super.init();
-
+ @Override
+ public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
+ super.configure(name, params);
Map<String, String> configs = getConfigs();
- String timeZoneStr = configs.get("usage.aggregation.timezone");
- if (timeZoneStr == null) {
+ String timeZoneStr = configs.get("usage.aggregation.timezone");
+ if (timeZoneStr == null) {
timeZoneStr = "GMT";
- }
- _usageTimezone = TimeZone.getTimeZone(timeZoneStr);
+ }
+ _usageTimezone = TimeZone.getTimeZone(timeZoneStr);
+ return true;
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/server/ManagementServerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java
index 556f3f0..b6bc062 100755
--- a/server/src/com/cloud/server/ManagementServerImpl.java
+++ b/server/src/com/cloud/server/ManagementServerImpl.java
@@ -46,6 +46,7 @@ import javax.management.InstanceAlreadyExistsException;
import javax.management.MBeanRegistrationException;
import javax.management.MalformedObjectNameException;
import javax.management.NotCompliantMBeanException;
+import javax.naming.ConfigurationException;
import com.cloud.storage.dao.*;
import org.apache.cloudstack.acl.SecurityChecker.AccessType;
@@ -142,6 +143,7 @@ import com.cloud.event.EventUtils;
import com.cloud.event.EventVO;
import com.cloud.event.dao.EventDao;
import com.cloud.exception.ConcurrentOperationException;
+import com.cloud.exception.InternalErrorException;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.OperationTimedoutException;
import com.cloud.exception.PermissionDeniedException;
@@ -218,7 +220,9 @@ import com.cloud.utils.PasswordGenerator;
import com.cloud.utils.Ternary;
import com.cloud.utils.component.Adapter;
import com.cloud.utils.component.ComponentContext;
+import com.cloud.utils.component.ComponentLifecycle;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.component.SystemIntegrityChecker;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.crypt.DBEncryptionUtil;
@@ -258,7 +262,7 @@ import com.cloud.vm.dao.VMInstanceDao;
import edu.emory.mathcs.backport.java.util.Arrays;
import edu.emory.mathcs.backport.java.util.Collections;
-public class ManagementServerImpl implements ManagementServer {
+public class ManagementServerImpl extends ManagerBase implements ManagementServer {
public static final Logger s_logger = Logger.getLogger(ManagementServerImpl.class.getName());
@Inject
@@ -372,12 +376,13 @@ public class ManagementServerImpl implements ManagementServer {
@Inject
S3Manager _s3Mgr;
+/*
@Inject
ComponentContext _forceContextRef; // create a dependency to ComponentContext so that it can be loaded beforehead
@Inject
EventUtils _forceEventUtilsRef;
-
+*/
private final ScheduledExecutorService _eventExecutor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("EventChecker"));
private KeystoreManager _ksMgr;
@@ -391,11 +396,14 @@ public class ManagementServerImpl implements ManagementServer {
private String _hashKey = null;
public ManagementServerImpl() {
+ setRunLevel(ComponentLifecycle.RUN_LEVEL_APPLICATION_MAINLOOP);
}
- @PostConstruct
- void init() {
- _configs = _configDao.getConfiguration();
+ @Override
+ public boolean configure(String name, Map<String, Object> params)
+ throws ConfigurationException {
+
+ _configs = _configDao.getConfiguration();
String value = _configs.get("event.purge.interval");
int cleanup = NumbersUtil.parseInt(value, 60 * 60 * 24); // 1 day.
@@ -410,142 +418,16 @@ public class ManagementServerImpl implements ManagementServer {
for (String id : availableIds) {
_availableIdsMap.put(id, true);
}
- }
-
+
+ return true;
+ }
+
@Override
- public void startup() {
+ public boolean start() {
s_logger.info("Startup CloudStack management server...");
- initCloudStackComponents();
- }
-
- private void initCloudStackComponents() {
- runCheckers();
- startDaos(); // daos should not be using managers and adapters.
-
- Map<String, Object> avoidMap = new HashMap<String, Object>();
- startManagers(avoidMap);
- startAdapters(avoidMap);
- }
-
- private void runCheckers() {
- Map<String, SystemIntegrityChecker> checkers = ComponentContext.getApplicationContext().getBeansOfType(
- SystemIntegrityChecker.class);
-
- for (SystemIntegrityChecker checker : checkers.values()) {
- try {
- checker.check();
- } catch (Exception e) {
- s_logger.error("Problems with running checker:" + ComponentContext.getTargetClass(checker).getName(), e);
- System.exit(1);
- }
- }
- }
-
- private void startDaos() {
- @SuppressWarnings("rawtypes")
- Map<String, GenericDaoBase> daos = ComponentContext.getApplicationContext().getBeansOfType(
- GenericDaoBase.class);
-
- for (GenericDaoBase dao : daos.values()) {
- try {
- s_logger.info("Starting dao " + ComponentContext.getTargetClass(dao).getName());
- dao.configure(dao.getClass().getSimpleName(), dao.getConfigParams());
- } catch (Exception e) {
- s_logger.error("Problems with running checker:" + ComponentContext.getTargetClass(dao).getName(), e);
- System.exit(1);
- }
- }
- }
-
- private void startManagers(Map<String, Object> avoidMap) {
- Map<String, Object> params = new HashMap<String, Object>();
-
- // make sure startup sequence is maintained
- try {
- _clusterMgr.configure("ClusterMgr", params);
- _clusterMgr.start();
-
- avoidMap.put(ComponentContext.getTargetClass(_clusterMgr).getName(), _clusterMgr);
- } catch(Exception e) {
- s_logger.error("Problems to start manager:" + ComponentContext.getTargetClass(_clusterMgr).getName(), e);
- System.exit(1);
- }
-
- for(Manager manager : ComponentContext.getComponentsOfType(Manager.class).values()) {
- s_logger.info("Start manager: " + ComponentContext.getTargetClass(manager).getName() + "...");
- try {
- if(avoidMap.get(ComponentContext.getTargetClass(manager).getName()) != null) {
- s_logger.info("Skip manager: " + ComponentContext.getTargetClass(manager).getName() + " as it is already started");
- continue;
- }
-
- if(!manager.configure(manager.getClass().getSimpleName(), params)) {
- throw new CloudRuntimeException("Failed to start manager: " + ComponentContext.getTargetClass(manager).getName());
- }
-
- if (!manager.start()) {
- throw new CloudRuntimeException("Failed to start manager: " + ComponentContext.getTargetClass(manager).getName());
- }
- avoidMap.put(ComponentContext.getTargetClass(manager).getName(), manager);
-
- if (manager instanceof ManagementBean) {
- registerMBean((ManagementBean) manager);
- }
- } catch (Exception e) {
- s_logger.error("Problems to start manager:" + ComponentContext.getTargetClass(manager).getName(), e);
- System.exit(1);
- }
- }
- }
-
- private void startAdapters(Map<String, Object> avoidMap) {
- @SuppressWarnings("rawtypes")
- Map<String, Adapter> adapters = ComponentContext.getApplicationContext().getBeansOfType(
- Adapter.class);
-
- Map<String, Object> params = new HashMap<String, Object>();
-
- for(Adapter adapter : adapters.values()) {
- try {
- s_logger.info("Start adapter: " + ComponentContext.getTargetClass(adapter).getName() + "...");
-
- if(avoidMap.get(ComponentContext.getTargetClass(adapter).getName()) != null) {
- s_logger.info("Skip adapter: " + ComponentContext.getTargetClass(adapter).getName() + " as it is already started");
- continue;
- }
-
- if(!adapter.configure(adapter.getName(), params)) {
- throw new CloudRuntimeException("Failed to configure adapter: " + ComponentContext.getTargetClass(adapter).getName());
- }
- if (!adapter.start()) {
- throw new CloudRuntimeException("Failed to start adapter: " + ComponentContext.getTargetClass(adapter).getName());
- }
-
- avoidMap.put(ComponentContext.getTargetClass(adapter).getName(), adapter);
-
- if (adapter instanceof ManagementBean) {
- registerMBean((ManagementBean) adapter);
- }
- } catch (Exception e) {
- s_logger.error("Problems to start adapter:" + ComponentContext.getTargetClass(adapter).getName(), e);
- System.exit(1);
- }
- }
- }
-
- protected void registerMBean(ManagementBean mbean) {
- try {
- JmxUtil.registerMBean(mbean);
- } catch (MalformedObjectNameException e) {
- s_logger.warn("Unable to register MBean: " + mbean.getName(), e);
- } catch (InstanceAlreadyExistsException e) {
- s_logger.warn("Unable to register MBean: " + mbean.getName(), e);
- } catch (MBeanRegistrationException e) {
- s_logger.warn("Unable to register MBean: " + mbean.getName(), e);
- } catch (NotCompliantMBeanException e) {
- s_logger.warn("Unable to register MBean: " + mbean.getName(), e);
- }
- s_logger.info("Registered MBean: " + mbean.getName());
+
+ enableAdminUser("password");
+ return true;
}
protected Map<String, String> getConfigs() {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/servlet/CloudStartupServlet.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/servlet/CloudStartupServlet.java b/server/src/com/cloud/servlet/CloudStartupServlet.java
index 6401ff1..46be093 100755
--- a/server/src/com/cloud/servlet/CloudStartupServlet.java
+++ b/server/src/com/cloud/servlet/CloudStartupServlet.java
@@ -16,57 +16,25 @@
// under the License.
package com.cloud.servlet;
-import javax.servlet.ServletContextEvent;
-import javax.servlet.ServletContextListener;
+import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.Logger;
import org.springframework.web.context.support.SpringBeanAutowiringSupport;
-import com.cloud.exception.InvalidParameterValueException;
-import com.cloud.server.ConfigurationServer;
-import com.cloud.server.ManagementServer;
import com.cloud.utils.LogUtils;
import com.cloud.utils.SerialVersionUID;
import com.cloud.utils.component.ComponentContext;
-public class CloudStartupServlet extends HttpServlet implements ServletContextListener {
+public class CloudStartupServlet extends HttpServlet {
public static final Logger s_logger = Logger.getLogger(CloudStartupServlet.class.getName());
-
static final long serialVersionUID = SerialVersionUID.CloudStartupServlet;
-
+
@Override
- public void init() throws ServletException {
+ public void init(ServletConfig config) throws ServletException {
LogUtils.initLog4j("log4j-cloud.xml");
- ConfigurationServer c = (ConfigurationServer)ComponentContext.getComponent(ConfigurationServer.Name);
- try {
- c.persistDefaultValues();
- ManagementServer ms = (ManagementServer)ComponentContext.getComponent(ManagementServer.Name);
- ms.startup();
- ms.enableAdminUser("password");
- //ApiServer.initApiServer();
- } catch (InvalidParameterValueException ipve) {
- s_logger.error("Exception starting management server ", ipve);
- throw new ServletException (ipve.getMessage());
- } catch (Exception e) {
- s_logger.error("Exception starting management server ", e);
- throw new ServletException (e.getMessage());
- }
- }
-
- @Override
- public void contextInitialized(ServletContextEvent sce) {
- try {
- SpringBeanAutowiringSupport.processInjectionBasedOnServletContext(this, sce.getServletContext());
- init();
- } catch (ServletException e) {
- s_logger.error("Exception starting management server ", e);
- throw new RuntimeException(e);
- }
- }
-
- @Override
- public void contextDestroyed(ServletContextEvent sce) {
+ SpringBeanAutowiringSupport.processInjectionBasedOnServletContext(this, config.getServletContext());
+ ComponentContext.initComponentsLifeCycle();
}
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/OCFS2ManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/OCFS2ManagerImpl.java b/server/src/com/cloud/storage/OCFS2ManagerImpl.java
index fb73dc4..6bbeec4 100755
--- a/server/src/com/cloud/storage/OCFS2ManagerImpl.java
+++ b/server/src/com/cloud/storage/OCFS2ManagerImpl.java
@@ -45,6 +45,7 @@ import com.cloud.storage.Storage.StoragePoolType;
import com.cloud.storage.dao.StoragePoolDao;
import com.cloud.storage.dao.StoragePoolHostDao;
import com.cloud.utils.Ternary;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.SearchCriteria.Op;
import com.cloud.utils.db.SearchCriteria2;
import com.cloud.utils.db.SearchCriteriaService;
@@ -52,8 +53,7 @@ import com.cloud.utils.exception.CloudRuntimeException;
@Component
@Local(value ={OCFS2Manager.class})
-public class OCFS2ManagerImpl implements OCFS2Manager, ResourceListener {
- String _name;
+public class OCFS2ManagerImpl extends ManagerBase implements OCFS2Manager, ResourceListener {
private static final Logger s_logger = Logger.getLogger(OCFS2ManagerImpl.class);
@Inject ClusterDetailsDao _clusterDetailsDao;
@@ -66,7 +66,6 @@ public class OCFS2ManagerImpl implements OCFS2Manager, ResourceListener {
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- _name = name;
return true;
}
@@ -82,11 +81,6 @@ public class OCFS2ManagerImpl implements OCFS2Manager, ResourceListener {
return true;
}
- @Override
- public String getName() {
- return _name;
- }
-
private List<Ternary<Integer, String, String>> marshalNodes(List<HostVO> hosts) {
Integer i = 0;
List<Ternary<Integer, String, String>> lst = new ArrayList<Ternary<Integer, String, String>>();
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/StorageManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/StorageManagerImpl.java b/server/src/com/cloud/storage/StorageManagerImpl.java
index fc5c135..2c59739 100755
--- a/server/src/com/cloud/storage/StorageManagerImpl.java
+++ b/server/src/com/cloud/storage/StorageManagerImpl.java
@@ -177,6 +177,7 @@ import com.cloud.utils.Pair;
import com.cloud.utils.UriUtils;
import com.cloud.utils.component.ComponentContext;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GenericSearchBuilder;
@@ -211,7 +212,7 @@ import com.cloud.vm.dao.VMInstanceDao;
@Component
@Local(value = { StorageManager.class, StorageService.class })
-public class StorageManagerImpl implements StorageManager, Manager, ClusterManagerListener {
+public class StorageManagerImpl extends ManagerBase implements StorageManager, ClusterManagerListener {
private static final Logger s_logger = Logger.getLogger(StorageManagerImpl.class);
protected String _name;
@@ -941,7 +942,6 @@ public class StorageManagerImpl implements StorageManager, Manager, ClusterManag
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- _name = name;
Map<String, String> configs = _configDao.getConfiguration("management-server", params);
@@ -1201,11 +1201,6 @@ public class StorageManagerImpl implements StorageManager, Manager, ClusterManag
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
public boolean start() {
if (_storageCleanupEnabled) {
Random generator = new Random();
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/download/DownloadMonitorImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java
index 3c3bace..2f8d757 100755
--- a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java
+++ b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java
@@ -93,6 +93,7 @@ import com.cloud.storage.template.TemplateConstants;
import com.cloud.storage.template.TemplateInfo;
import com.cloud.user.Account;
import com.cloud.user.ResourceLimitService;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.JoinBuilder;
import com.cloud.utils.db.SearchBuilder;
@@ -110,7 +111,7 @@ import edu.emory.mathcs.backport.java.util.Collections;
@Component
@Local(value={DownloadMonitor.class})
-public class DownloadMonitorImpl implements DownloadMonitor {
+public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor {
static final Logger s_logger = Logger.getLogger(DownloadMonitorImpl.class);
@Inject
@@ -165,7 +166,6 @@ public class DownloadMonitorImpl implements DownloadMonitor {
@Inject
protected ResourceLimitService _resourceLimitMgr;
- private String _name;
private Boolean _sslCopy = new Boolean(false);
private String _copyAuthPasswd;
private String _proxy = null;
@@ -183,7 +183,6 @@ public class DownloadMonitorImpl implements DownloadMonitor {
@Override
public boolean configure(String name, Map<String, Object> params) {
- _name = name;
final Map<String, String> configs = _configDao.getConfiguration("ManagementServer", params);
_sslCopy = Boolean.parseBoolean(configs.get("secstorage.encrypt.copy"));
_proxy = configs.get(Config.SecStorageProxy.key());
@@ -214,11 +213,6 @@ public class DownloadMonitorImpl implements DownloadMonitor {
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
public boolean start() {
_timer = new Timer();
return true;
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/resource/DummySecondaryStorageResource.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/resource/DummySecondaryStorageResource.java b/server/src/com/cloud/storage/resource/DummySecondaryStorageResource.java
index 9e76e8a..877b97c 100644
--- a/server/src/com/cloud/storage/resource/DummySecondaryStorageResource.java
+++ b/server/src/com/cloud/storage/resource/DummySecondaryStorageResource.java
@@ -184,4 +184,34 @@ public class DummySecondaryStorageResource extends ServerResourceBase implements
}
return tmpltInfo;
}
+
+ @Override
+ public void setName(String name) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void setConfigParams(Map<String, Object> params) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public Map<String, Object> getConfigParams() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public int getRunLevel() {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ @Override
+ public void setRunLevel(int level) {
+ // TODO Auto-generated method stub
+
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/s3/S3ManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/s3/S3ManagerImpl.java b/server/src/com/cloud/storage/s3/S3ManagerImpl.java
index 16e2ad9..13fe2b7 100644
--- a/server/src/com/cloud/storage/s3/S3ManagerImpl.java
+++ b/server/src/com/cloud/storage/s3/S3ManagerImpl.java
@@ -78,18 +78,17 @@ import com.cloud.storage.dao.VMTemplateS3Dao;
import com.cloud.storage.dao.VMTemplateZoneDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.utils.S3Utils.ClientOptions;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.exception.CloudRuntimeException;
@Component
@Local(value = { S3Manager.class })
-public class S3ManagerImpl implements S3Manager {
+public class S3ManagerImpl extends ManagerBase implements S3Manager {
private static final Logger LOGGER = Logger.getLogger(S3ManagerImpl.class);
- private String name;
-
@Inject
private AgentManager agentManager;
@@ -474,10 +473,7 @@ public class S3ManagerImpl implements S3Manager {
LOGGER.info(format("Configuring S3 Manager %1$s", name));
}
- this.name = name;
-
return true;
-
}
@Override
@@ -493,11 +489,6 @@ public class S3ManagerImpl implements S3Manager {
}
@Override
- public String getName() {
- return this.name;
- }
-
- @Override
public void propagateTemplateToAllZones(final VMTemplateS3VO vmTemplateS3VO) {
final long templateId = vmTemplateS3VO.getId();
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
index 5a5e2fd..fca89dc 100755
--- a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
+++ b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java
@@ -114,6 +114,7 @@ import com.cloud.user.UserContext;
import com.cloud.utils.DateUtil;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.GlobalLock;
import com.cloud.utils.db.SearchCriteria.Op;
import com.cloud.utils.db.SearchCriteria2;
@@ -158,7 +159,7 @@ import com.cloud.vm.dao.VMInstanceDao;
// because sooner or later, it will be driven into Running state
//
@Local(value = { SecondaryStorageVmManager.class })
-public class SecondaryStorageManagerImpl implements SecondaryStorageVmManager, VirtualMachineGuru<SecondaryStorageVmVO>, SystemVmLoadScanHandler<Long>, ResourceStateAdapter {
+public class SecondaryStorageManagerImpl extends ManagerBase implements SecondaryStorageVmManager, VirtualMachineGuru<SecondaryStorageVmVO>, SystemVmLoadScanHandler<Long>, ResourceStateAdapter {
private static final Logger s_logger = Logger.getLogger(SecondaryStorageManagerImpl.class);
private static final int DEFAULT_CAPACITY_SCAN_INTERVAL = 30000; // 30
@@ -171,7 +172,6 @@ public class SecondaryStorageManagerImpl implements SecondaryStorageVmManager, V
private String _mgmt_host;
private int _mgmt_port = 8250;
- private String _name;
@Inject
private List<SecondaryStorageVmAllocator> _ssVmAllocators;
@@ -768,10 +768,6 @@ public class SecondaryStorageManagerImpl implements SecondaryStorageVmManager, V
return aggregator.getZoneHostInfoMap();
}
- @Override
- public String getName() {
- return _name;
- }
@Override
public boolean start() {
@@ -796,8 +792,6 @@ public class SecondaryStorageManagerImpl implements SecondaryStorageVmManager, V
s_logger.info("Start configuring secondary storage vm manager : " + name);
}
- _name = name;
-
Map<String, String> configs = _configDao.getConfiguration("management-server", params);
_secStorageVmMtuSize = NumbersUtil.parseInt(configs.get("secstorage.vm.mtu.size"), DEFAULT_SS_VM_MTUSIZE);
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/secondary/SecondaryStorageVmDefaultAllocator.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/secondary/SecondaryStorageVmDefaultAllocator.java b/server/src/com/cloud/storage/secondary/SecondaryStorageVmDefaultAllocator.java
index 635f664..7bc80a0 100644
--- a/server/src/com/cloud/storage/secondary/SecondaryStorageVmDefaultAllocator.java
+++ b/server/src/com/cloud/storage/secondary/SecondaryStorageVmDefaultAllocator.java
@@ -25,11 +25,12 @@ import javax.naming.ConfigurationException;
import org.springframework.stereotype.Component;
+import com.cloud.utils.component.AdapterBase;
import com.cloud.vm.SecondaryStorageVmVO;
@Component
@Local(value={SecondaryStorageVmAllocator.class})
-public class SecondaryStorageVmDefaultAllocator implements SecondaryStorageVmAllocator {
+public class SecondaryStorageVmDefaultAllocator extends AdapterBase implements SecondaryStorageVmAllocator {
private String _name;
private Random _rand = new Random(System.currentTimeMillis());
@@ -40,32 +41,4 @@ public class SecondaryStorageVmDefaultAllocator implements SecondaryStorageVmAll
return candidates.get(_rand.nextInt(candidates.size()));
return null;
}
-
- @Override
- public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- /* _name = name;
- ComponentLocator locator = ComponentLocator.getCurrentLocator();
- ConfigurationDao configDao = locator.getDao(ConfigurationDao.class);
- if (configDao == null) {
- throw new ConfigurationException("Unable to get the configuration dao.");
- }
- */
-
- return true;
- }
-
- @Override
- public String getName() {
- return _name;
- }
-
- @Override
- public boolean start() {
- return true;
- }
-
- @Override
- public boolean stop() {
- return true;
- }
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java b/server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
index 1209d5c..4ad43cc 100755
--- a/server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
+++ b/server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
@@ -117,6 +117,7 @@ import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.JoinBuilder;
@@ -132,7 +133,7 @@ import com.cloud.vm.dao.UserVmDao;
@Component
@Local(value = { SnapshotManager.class, SnapshotService.class })
-public class SnapshotManagerImpl implements SnapshotManager, SnapshotService, Manager {
+public class SnapshotManagerImpl extends ManagerBase implements SnapshotManager, SnapshotService {
private static final Logger s_logger = Logger.getLogger(SnapshotManagerImpl.class);
@Inject
protected VMTemplateDao _templateDao;
@@ -193,7 +194,6 @@ public class SnapshotManagerImpl implements SnapshotManager, SnapshotService, Ma
@Inject
private ConfigurationDao _configDao;
- String _name;
private int _totalRetries;
private int _pauseInterval;
private int _deltaSnapshotMax;
@@ -1434,8 +1434,7 @@ public class SnapshotManagerImpl implements SnapshotManager, SnapshotService, Ma
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- _name = name;
-
+
String value = _configDao.getValue(Config.BackupSnapshotWait.toString());
_backupsnapshotwait = NumbersUtil.parseInt(value, Integer.parseInt(Config.BackupSnapshotWait.getDefaultValue()));
@@ -1453,11 +1452,6 @@ public class SnapshotManagerImpl implements SnapshotManager, SnapshotService, Ma
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
public boolean start() {
return true;
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java b/server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java
index 18dc1f9..cbd2933 100644
--- a/server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java
+++ b/server/src/com/cloud/storage/snapshot/SnapshotSchedulerImpl.java
@@ -56,6 +56,7 @@ import com.cloud.utils.DateUtil;
import com.cloud.utils.DateUtil.IntervalType;
import com.cloud.utils.NumbersUtil;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.TestClock;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GlobalLock;
@@ -64,10 +65,9 @@ import com.cloud.utils.db.SearchCriteria;
@Component
@Local(value={SnapshotScheduler.class})
-public class SnapshotSchedulerImpl implements SnapshotScheduler {
+public class SnapshotSchedulerImpl extends ManagerBase implements SnapshotScheduler {
private static final Logger s_logger = Logger.getLogger(SnapshotSchedulerImpl.class);
- private String _name = null;
@Inject protected AsyncJobDao _asyncJobDao;
@Inject protected SnapshotDao _snapshotDao;
@Inject protected SnapshotScheduleDao _snapshotScheduleDao;
@@ -335,7 +335,6 @@ public class SnapshotSchedulerImpl implements SnapshotScheduler {
@Override
public boolean configure(String name, Map<String, Object> params)
throws ConfigurationException {
- _name = name;
_snapshotPollInterval = NumbersUtil.parseInt(_configDao.getValue("snapshot.poll.interval"), 300);
boolean snapshotsRecurringTest = Boolean.parseBoolean(_configDao.getValue("snapshot.recurring.test"));
@@ -357,11 +356,6 @@ public class SnapshotSchedulerImpl implements SnapshotScheduler {
return true;
}
- @Override
- public String getName() {
- return _name;
- }
-
@Override @DB
public boolean start() {
// reschedule all policies after management restart
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/swift/SwiftManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/swift/SwiftManagerImpl.java b/server/src/com/cloud/storage/swift/SwiftManagerImpl.java
index 01e2955..5a7f01a 100644
--- a/server/src/com/cloud/storage/swift/SwiftManagerImpl.java
+++ b/server/src/com/cloud/storage/swift/SwiftManagerImpl.java
@@ -53,6 +53,7 @@ import com.cloud.storage.dao.VMTemplateHostDao;
import com.cloud.storage.dao.VMTemplateSwiftDao;
import com.cloud.storage.dao.VMTemplateZoneDao;
import com.cloud.utils.Pair;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.db.SearchCriteria.Op;
@@ -62,10 +63,9 @@ import com.cloud.utils.exception.CloudRuntimeException;
@Component
@Local(value = { SwiftManager.class })
-public class SwiftManagerImpl implements SwiftManager {
+public class SwiftManagerImpl extends ManagerBase implements SwiftManager {
private static final Logger s_logger = Logger.getLogger(SwiftManagerImpl.class);
- private String _name;
@Inject
private SwiftDao _swiftDao;
@Inject
@@ -121,11 +121,6 @@ public class SwiftManagerImpl implements SwiftManager {
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
public boolean start() {
if (s_logger.isInfoEnabled()) {
s_logger.info("Start Swift Manager");
@@ -288,8 +283,6 @@ public class SwiftManagerImpl implements SwiftManager {
s_logger.info("Start configuring Swift Manager : " + name);
}
- _name = name;
-
return true;
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/storage/upload/UploadMonitorImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/storage/upload/UploadMonitorImpl.java b/server/src/com/cloud/storage/upload/UploadMonitorImpl.java
index 8052287..77f0d20 100755
--- a/server/src/com/cloud/storage/upload/UploadMonitorImpl.java
+++ b/server/src/com/cloud/storage/upload/UploadMonitorImpl.java
@@ -65,6 +65,7 @@ import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VMTemplateHostDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
import com.cloud.utils.NumbersUtil;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.db.GlobalLock;
import com.cloud.utils.exception.CloudRuntimeException;
@@ -78,7 +79,7 @@ import com.cloud.vm.dao.SecondaryStorageVmDao;
*/
@Component
@Local(value={UploadMonitor.class})
-public class UploadMonitorImpl implements UploadMonitor {
+public class UploadMonitorImpl extends ManagerBase implements UploadMonitor {
static final Logger s_logger = Logger.getLogger(UploadMonitorImpl.class);
@@ -343,7 +344,6 @@ public class UploadMonitorImpl implements UploadMonitor {
@Override
public boolean configure(String name, Map<String, Object> params)
throws ConfigurationException {
- _name = name;
final Map<String, String> configs = _configDao.getConfiguration("ManagementServer", params);
_sslCopy = Boolean.parseBoolean(configs.get("secstorage.encrypt.copy"));
@@ -366,11 +366,6 @@ public class UploadMonitorImpl implements UploadMonitor {
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
public boolean start() {
_executor.scheduleWithFixedDelay(new StorageGarbageCollector(), _cleanupInterval, _cleanupInterval, TimeUnit.SECONDS);
_timer = new Timer();
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/tags/TaggedResourceManagerImpl.java b/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
index a5fb8a0..e44343d 100644
--- a/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
+++ b/server/src/com/cloud/tags/TaggedResourceManagerImpl.java
@@ -62,6 +62,7 @@ import com.cloud.user.UserContext;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.DbUtil;
import com.cloud.utils.db.Filter;
@@ -76,9 +77,8 @@ import com.cloud.vm.dao.UserVmDao;
@Component
@Local(value = { TaggedResourceService.class})
-public class TaggedResourceManagerImpl implements TaggedResourceService, Manager{
+public class TaggedResourceManagerImpl extends ManagerBase implements TaggedResourceService {
public static final Logger s_logger = Logger.getLogger(TaggedResourceManagerImpl.class);
- private String _name;
private static Map<TaggedResourceType, GenericDao<?, Long>> _daoMap=
new HashMap<TaggedResourceType, GenericDao<?, Long>>();
@@ -124,7 +124,6 @@ public class TaggedResourceManagerImpl implements TaggedResourceService, Manager
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- _name = name;
_daoMap.put(TaggedResourceType.UserVm, _userVmDao);
_daoMap.put(TaggedResourceType.Volume, _volumeDao);
_daoMap.put(TaggedResourceType.Template, _templateDao);
@@ -154,12 +153,6 @@ public class TaggedResourceManagerImpl implements TaggedResourceService, Manager
return true;
}
- @Override
- public String getName() {
- return _name;
- }
-
-
private Long getResourceId(String resourceId, TaggedResourceType resourceType) {
GenericDao<?, Long> dao = _daoMap.get(resourceType);
if (dao == null) {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/template/TemplateAdapterBase.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/template/TemplateAdapterBase.java b/server/src/com/cloud/template/TemplateAdapterBase.java
index d97f05d..fa677ac 100755
--- a/server/src/com/cloud/template/TemplateAdapterBase.java
+++ b/server/src/com/cloud/template/TemplateAdapterBase.java
@@ -58,12 +58,12 @@ import com.cloud.user.UserVO;
import com.cloud.user.dao.AccountDao;
import com.cloud.user.dao.UserDao;
import com.cloud.utils.EnumUtils;
+import com.cloud.utils.component.AdapterBase;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.vm.UserVmVO;
-public abstract class TemplateAdapterBase implements TemplateAdapter {
+public abstract class TemplateAdapterBase extends AdapterBase implements TemplateAdapter {
private final static Logger s_logger = Logger.getLogger(TemplateAdapterBase.class);
- protected String _name;
protected @Inject DomainDao _domainDao;
protected @Inject AccountDao _accountDao;
protected @Inject ConfigurationDao _configDao;
@@ -78,26 +78,6 @@ public abstract class TemplateAdapterBase implements TemplateAdapter {
protected @Inject ResourceLimitService _resourceLimitMgr;
@Override
- public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- _name = name;
- return true;
- }
-
- @Override
- public String getName() {
- return _name;
- }
-
- public void setName(String name) {
- _name = name;
- }
-
- @Override
- public boolean start() {
- return true;
- }
-
- @Override
public boolean stop() {
return true;
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/template/TemplateManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/template/TemplateManagerImpl.java b/server/src/com/cloud/template/TemplateManagerImpl.java
index 1ce9578..0a46414 100755
--- a/server/src/com/cloud/template/TemplateManagerImpl.java
+++ b/server/src/com/cloud/template/TemplateManagerImpl.java
@@ -131,6 +131,7 @@ import com.cloud.user.dao.UserDao;
import com.cloud.uservm.UserVm;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.component.AdapterBase;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.component.Manager;
import com.cloud.utils.concurrency.NamedThreadFactory;
@@ -150,9 +151,8 @@ import com.cloud.vm.dao.VMInstanceDao;
@Component
@Local(value={TemplateManager.class, TemplateService.class})
-public class TemplateManagerImpl implements TemplateManager, Manager, TemplateService {
+public class TemplateManagerImpl extends ManagerBase implements TemplateManager, TemplateService {
private final static Logger s_logger = Logger.getLogger(TemplateManagerImpl.class);
- String _name;
@Inject VMTemplateDao _tmpltDao;
@Inject VMTemplateHostDao _tmpltHostDao;
@Inject VMTemplatePoolDao _tmpltPoolDao;
@@ -1010,11 +1010,6 @@ public class TemplateManagerImpl implements TemplateManager, Manager, TemplateSe
}
}
- @Override
- public String getName() {
- return _name;
- }
-
private Runnable getSwiftTemplateSyncTask() {
return new Runnable() {
@Override
@@ -1064,7 +1059,6 @@ public class TemplateManagerImpl implements TemplateManager, Manager, TemplateSe
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
- _name = name;
final Map<String, String> configs = _configDao.getConfiguration("AgentManager", params);
_routerTemplateId = NumbersUtil.parseInt(configs.get("router.template.id"), 1);
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/upgrade/DatabaseIntegrityChecker.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/upgrade/DatabaseIntegrityChecker.java b/server/src/com/cloud/upgrade/DatabaseIntegrityChecker.java
index 1905bb3..50eb47b 100755
--- a/server/src/com/cloud/upgrade/DatabaseIntegrityChecker.java
+++ b/server/src/com/cloud/upgrade/DatabaseIntegrityChecker.java
@@ -29,8 +29,9 @@ import org.springframework.stereotype.Component;
import com.cloud.maint.Version;
import com.cloud.upgrade.dao.VersionDao;
-import com.cloud.upgrade.dao.VersionDaoImpl;
+import com.cloud.utils.component.AdapterBase;
+import com.cloud.utils.component.ComponentLifecycle;
import com.cloud.utils.component.SystemIntegrityChecker;
import com.cloud.utils.db.GlobalLock;
import com.cloud.utils.db.Transaction;
@@ -38,12 +39,13 @@ import com.cloud.utils.exception.CloudRuntimeException;
@Component
@Local(value = {SystemIntegrityChecker.class})
-public class DatabaseIntegrityChecker implements SystemIntegrityChecker {
+public class DatabaseIntegrityChecker extends AdapterBase implements SystemIntegrityChecker {
private final Logger s_logger = Logger.getLogger(DatabaseIntegrityChecker.class);
@Inject VersionDao _dao;
public DatabaseIntegrityChecker() {
+ setRunLevel(ComponentLifecycle.RUN_LEVEL_FRAMEWORK_BOOTSTRAP);
}
/*
@@ -248,4 +250,15 @@ public class DatabaseIntegrityChecker implements SystemIntegrityChecker {
lock.releaseRef();
}
}
+
+ @Override
+ public boolean start() {
+ try {
+ check();
+ } catch(Exception e) {
+ s_logger.error("System integrity check exception", e);
+ System.exit(1);
+ }
+ return true;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/user/AccountManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/user/AccountManagerImpl.java b/server/src/com/cloud/user/AccountManagerImpl.java
index 09cd8df..eceeb84 100755
--- a/server/src/com/cloud/user/AccountManagerImpl.java
+++ b/server/src/com/cloud/user/AccountManagerImpl.java
@@ -116,6 +116,7 @@ import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GlobalLock;
@@ -140,10 +141,9 @@ import com.cloud.vm.dao.VMInstanceDao;
@Component
@Local(value = { AccountManager.class, AccountService.class })
-public class AccountManagerImpl implements AccountManager, AccountService, Manager {
+public class AccountManagerImpl extends ManagerBase implements AccountManager, AccountService {
public static final Logger s_logger = Logger.getLogger(AccountManagerImpl.class);
- private String _name;
@Inject
private AccountDao _accountDao;
@Inject
@@ -237,8 +237,6 @@ public class AccountManagerImpl implements AccountManager, AccountService, Manag
@Override
public boolean configure(final String name, final Map<String, Object> params) throws ConfigurationException {
- _name = name;
-
_systemAccount = _accountDao.findById(AccountVO.ACCOUNT_ID_SYSTEM);
if (_systemAccount == null) {
throw new ConfigurationException("Unable to find the system account using " + Account.ACCOUNT_ID_SYSTEM);
@@ -269,11 +267,6 @@ public class AccountManagerImpl implements AccountManager, AccountService, Manag
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
public boolean start() {
_executor.scheduleAtFixedRate(new AccountCleanupTask(), _cleanupInterval, _cleanupInterval, TimeUnit.SECONDS);
return true;
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/user/DomainManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/user/DomainManagerImpl.java b/server/src/com/cloud/user/DomainManagerImpl.java
index 9df34d1..5d39360 100644
--- a/server/src/com/cloud/user/DomainManagerImpl.java
+++ b/server/src/com/cloud/user/DomainManagerImpl.java
@@ -51,6 +51,7 @@ import com.cloud.storage.dao.DiskOfferingDao;
import com.cloud.user.dao.AccountDao;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.SearchBuilder;
@@ -61,10 +62,9 @@ import com.cloud.utils.net.NetUtils;
@Component
@Local(value = { DomainManager.class, DomainService.class })
-public class DomainManagerImpl implements DomainManager, DomainService, Manager {
+public class DomainManagerImpl extends ManagerBase implements DomainManager, DomainService {
public static final Logger s_logger = Logger.getLogger(DomainManagerImpl.class);
- private String _name;
@Inject
private DomainDao _domainDao;
@Inject
@@ -93,28 +93,6 @@ public class DomainManagerImpl implements DomainManager, DomainService, Manager
}
@Override
- public String getName() {
- return _name;
- }
-
- @Override
- public boolean start() {
- return true;
- }
-
- @Override
- public boolean stop() {
- return true;
- }
-
- @Override
- public boolean configure(final String name, final Map<String, Object> params) throws ConfigurationException {
- _name = name;
-
- return true;
- }
-
- @Override
public Set<Long> getDomainChildrenIds(String parentDomainPath) {
Set<Long> childDomains = new HashSet<Long>();
SearchCriteria<DomainVO> sc = _domainDao.createSearchCriteria();
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/uuididentity/IdentityServiceImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/uuididentity/IdentityServiceImpl.java b/server/src/com/cloud/uuididentity/IdentityServiceImpl.java
index 2a93627..dd9a462 100644
--- a/server/src/com/cloud/uuididentity/IdentityServiceImpl.java
+++ b/server/src/com/cloud/uuididentity/IdentityServiceImpl.java
@@ -26,13 +26,12 @@ import org.apache.cloudstack.api.IdentityService;
import org.springframework.stereotype.Component;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.uuididentity.dao.IdentityDao;
@Component
@Local(value = { IdentityService.class })
-public class IdentityServiceImpl implements Manager, IdentityService {
- private String _name;
-
+public class IdentityServiceImpl extends ManagerBase implements IdentityService {
@Inject private IdentityDao _identityDao;
@Override
@@ -44,27 +43,4 @@ public class IdentityServiceImpl implements Manager, IdentityService {
public String getIdentityUuid(String tableName, String identityString) {
return _identityDao.getIdentityUuid(tableName, identityString);
}
-
- @Override
- public boolean configure(String name, Map<String, Object> params)
- throws ConfigurationException {
- _name = name;
-
- return true;
- }
-
- @Override
- public String getName() {
- return _name;
- }
-
- @Override
- public boolean start() {
- return true;
- }
-
- @Override
- public boolean stop() {
- return true;
- }
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/vm/UserVmManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java
index bd0733f..8dd83c6 100644
--- a/server/src/com/cloud/vm/UserVmManagerImpl.java
+++ b/server/src/com/cloud/vm/UserVmManagerImpl.java
@@ -218,6 +218,7 @@ import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.PasswordGenerator;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.crypt.RSAHelper;
import com.cloud.utils.db.DB;
@@ -240,7 +241,7 @@ import com.cloud.vm.dao.UserVmDetailsDao;
import com.cloud.vm.dao.VMInstanceDao;
@Local(value = { UserVmManager.class, UserVmService.class })
-public class UserVmManagerImpl implements UserVmManager, UserVmService, Manager {
+public class UserVmManagerImpl extends ManagerBase implements UserVmManager, UserVmService {
private static final Logger s_logger = Logger
.getLogger(UserVmManagerImpl.class);
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
index 4f15cc5..9b00d7a 100755
--- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
+++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
@@ -140,6 +140,7 @@ import com.cloud.utils.Journal;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.concurrency.NamedThreadFactory;
import com.cloud.utils.db.DB;
import com.cloud.utils.db.GlobalLock;
@@ -159,10 +160,9 @@ import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.VMInstanceDao;
@Local(value = VirtualMachineManager.class)
-public class VirtualMachineManagerImpl implements VirtualMachineManager, Listener {
+public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMachineManager, Listener {
private static final Logger s_logger = Logger.getLogger(VirtualMachineManagerImpl.class);
- String _name;
@Inject
protected StorageManager _storageMgr;
@Inject
@@ -427,8 +427,6 @@ public class VirtualMachineManagerImpl implements VirtualMachineManager, Listene
@Override
public boolean configure(String name, Map<String, Object> xmlParams) throws ConfigurationException {
- _name = name;
-
Map<String, String> params = _configDao.getConfiguration(xmlParams);
_retry = NumbersUtil.parseInt(params.get(Config.StartRetry.key()), 10);
@@ -452,11 +450,6 @@ public class VirtualMachineManagerImpl implements VirtualMachineManager, Listene
return true;
}
- @Override
- public String getName() {
- return _name;
- }
-
protected VirtualMachineManagerImpl() {
setStateMachine();
}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/agent/MockAgentManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/agent/MockAgentManagerImpl.java b/server/test/com/cloud/agent/MockAgentManagerImpl.java
index f16f50b..bdacf68 100755
--- a/server/test/com/cloud/agent/MockAgentManagerImpl.java
+++ b/server/test/com/cloud/agent/MockAgentManagerImpl.java
@@ -35,10 +35,11 @@ import com.cloud.host.HostVO;
import com.cloud.host.Status.Event;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.resource.ServerResource;
+import com.cloud.utils.component.ManagerBase;
@Component
@Local(value = { AgentManager.class })
-public class MockAgentManagerImpl implements AgentManager {
+public class MockAgentManagerImpl extends ManagerBase implements AgentManager {
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/alert/MockAlertManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/alert/MockAlertManagerImpl.java b/server/test/com/cloud/alert/MockAlertManagerImpl.java
index 3f87193..f0c67f9 100644
--- a/server/test/com/cloud/alert/MockAlertManagerImpl.java
+++ b/server/test/com/cloud/alert/MockAlertManagerImpl.java
@@ -22,8 +22,10 @@ import java.util.Map;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
+import com.cloud.utils.component.ManagerBase;
+
@Local(value = {AlertManager.class})
-public class MockAlertManagerImpl implements AlertManager {
+public class MockAlertManagerImpl extends ManagerBase implements AlertManager {
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#configure(java.lang.String, java.util.Map)
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/network/MockFirewallManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/network/MockFirewallManagerImpl.java b/server/test/com/cloud/network/MockFirewallManagerImpl.java
index c7d4e86..76dc843 100644
--- a/server/test/com/cloud/network/MockFirewallManagerImpl.java
+++ b/server/test/com/cloud/network/MockFirewallManagerImpl.java
@@ -36,10 +36,11 @@ import com.cloud.network.rules.FirewallRule.Purpose;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
@Local(value = {FirewallManager.class, FirewallService.class})
-public class MockFirewallManagerImpl implements FirewallManager,
- FirewallService, Manager {
+public class MockFirewallManagerImpl extends ManagerBase implements FirewallManager,
+ FirewallService {
@Override
public boolean configure(String name, Map<String, Object> params)
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/network/MockNetworkManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/network/MockNetworkManagerImpl.java b/server/test/com/cloud/network/MockNetworkManagerImpl.java
index c24493a..6621d1d 100755
--- a/server/test/com/cloud/network/MockNetworkManagerImpl.java
+++ b/server/test/com/cloud/network/MockNetworkManagerImpl.java
@@ -61,6 +61,7 @@ import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.vm.Nic;
import com.cloud.vm.NicProfile;
import com.cloud.vm.ReservationContext;
@@ -71,7 +72,7 @@ import com.cloud.vm.VirtualMachineProfileImpl;
@Component
@Local(value = { NetworkManager.class, NetworkService.class })
-public class MockNetworkManagerImpl implements NetworkManager, Manager, NetworkService {
+public class MockNetworkManagerImpl extends ManagerBase implements NetworkManager, NetworkService {
@Override
public List<? extends Network> getIsolatedNetworksOwnedByAccountInZone(long zoneId, Account owner) {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/network/MockNetworkModelImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/network/MockNetworkModelImpl.java b/server/test/com/cloud/network/MockNetworkModelImpl.java
index 003b718..50af796 100644
--- a/server/test/com/cloud/network/MockNetworkModelImpl.java
+++ b/server/test/com/cloud/network/MockNetworkModelImpl.java
@@ -43,12 +43,13 @@ import com.cloud.offering.NetworkOffering;
import com.cloud.offerings.NetworkOfferingVO;
import com.cloud.user.Account;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.vm.Nic;
import com.cloud.vm.NicProfile;
import com.cloud.vm.VirtualMachine;
@Local(value = {NetworkModel.class})
-public class MockNetworkModelImpl implements NetworkModel, Manager {
+public class MockNetworkModelImpl extends ManagerBase implements NetworkModel {
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#configure(java.lang.String, java.util.Map)
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/network/MockRulesManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/network/MockRulesManagerImpl.java b/server/test/com/cloud/network/MockRulesManagerImpl.java
index 3687e9c..ba3dd41 100644
--- a/server/test/com/cloud/network/MockRulesManagerImpl.java
+++ b/server/test/com/cloud/network/MockRulesManagerImpl.java
@@ -38,10 +38,11 @@ import com.cloud.user.Account;
import com.cloud.uservm.UserVm;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.vm.VirtualMachine;
@Local(value = {RulesManager.class, RulesService.class})
-public class MockRulesManagerImpl implements RulesManager, Manager, RulesService {
+public class MockRulesManagerImpl extends ManagerBase implements RulesManager, RulesService {
@Override
public Pair<List<? extends FirewallRule>, Integer> searchStaticNatRules(
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/network/vpn/MockRemoteAccessVPNServiceProvider.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/network/vpn/MockRemoteAccessVPNServiceProvider.java b/server/test/com/cloud/network/vpn/MockRemoteAccessVPNServiceProvider.java
index 1a01681..1dde4a8 100644
--- a/server/test/com/cloud/network/vpn/MockRemoteAccessVPNServiceProvider.java
+++ b/server/test/com/cloud/network/vpn/MockRemoteAccessVPNServiceProvider.java
@@ -27,9 +27,10 @@ import com.cloud.network.Network;
import com.cloud.network.RemoteAccessVpn;
import com.cloud.network.VpnUser;
import com.cloud.network.element.RemoteAccessVPNServiceProvider;
+import com.cloud.utils.component.ManagerBase;
@Local (value = RemoteAccessVPNServiceProvider.class)
-public class MockRemoteAccessVPNServiceProvider implements
+public class MockRemoteAccessVPNServiceProvider extends ManagerBase implements
RemoteAccessVPNServiceProvider {
@Override
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/projects/MockProjectManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/projects/MockProjectManagerImpl.java b/server/test/com/cloud/projects/MockProjectManagerImpl.java
index 309fa45..f588381 100644
--- a/server/test/com/cloud/projects/MockProjectManagerImpl.java
+++ b/server/test/com/cloud/projects/MockProjectManagerImpl.java
@@ -32,11 +32,12 @@ import com.cloud.exception.ResourceUnavailableException;
import com.cloud.projects.ProjectAccount.Role;
import com.cloud.user.Account;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.Pair;
@Local(value = { ProjectManager.class })
-public class MockProjectManagerImpl implements ProjectManager, Manager {
+public class MockProjectManagerImpl extends ManagerBase implements ProjectManager {
@Override
public Project createProject(String name, String displayText,
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/resource/MockResourceManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/resource/MockResourceManagerImpl.java b/server/test/com/cloud/resource/MockResourceManagerImpl.java
index a0dad47..889318b 100644
--- a/server/test/com/cloud/resource/MockResourceManagerImpl.java
+++ b/server/test/com/cloud/resource/MockResourceManagerImpl.java
@@ -54,10 +54,11 @@ import com.cloud.storage.Swift;
import com.cloud.template.VirtualMachineTemplate;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.fsm.NoTransitionException;
@Local(value = {ResourceManager.class})
-public class MockResourceManagerImpl implements ResourceManager, Manager {
+public class MockResourceManagerImpl extends ManagerBase implements ResourceManager {
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#updateHost(com.cloud.api.commands.UpdateHostCmd)
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/user/MockAccountManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/user/MockAccountManagerImpl.java b/server/test/com/cloud/user/MockAccountManagerImpl.java
index bc81a6f..e5a7ada 100644
--- a/server/test/com/cloud/user/MockAccountManagerImpl.java
+++ b/server/test/com/cloud/user/MockAccountManagerImpl.java
@@ -40,13 +40,14 @@ import com.cloud.projects.Project.ListProjectResourcesCriteria;
import com.cloud.utils.Pair;
import com.cloud.utils.Ternary;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
@Component
@Local(value = { AccountManager.class, AccountService.class })
-public class MockAccountManagerImpl implements Manager, AccountManager, AccountService {
+public class MockAccountManagerImpl extends ManagerBase implements AccountManager, AccountService {
@Override
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/user/MockDomainManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/user/MockDomainManagerImpl.java b/server/test/com/cloud/user/MockDomainManagerImpl.java
index 0f572d8..d249c80 100644
--- a/server/test/com/cloud/user/MockDomainManagerImpl.java
+++ b/server/test/com/cloud/user/MockDomainManagerImpl.java
@@ -32,10 +32,11 @@ import com.cloud.domain.DomainVO;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
@Component
@Local(value = { DomainManager.class, DomainService.class })
-public class MockDomainManagerImpl implements Manager, DomainManager, DomainService {
+public class MockDomainManagerImpl extends ManagerBase implements DomainManager, DomainService {
@Override
public Domain createDomain(String name, Long parentId, String networkDomain) {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vm/MockUserVmManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vm/MockUserVmManagerImpl.java b/server/test/com/cloud/vm/MockUserVmManagerImpl.java
index c2d6825..0b17d6e 100644
--- a/server/test/com/cloud/vm/MockUserVmManagerImpl.java
+++ b/server/test/com/cloud/vm/MockUserVmManagerImpl.java
@@ -68,11 +68,12 @@ import com.cloud.user.Account;
import com.cloud.uservm.UserVm;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.exception.ExecutionException;
@Component
@Local(value = { UserVmManager.class, UserVmService.class })
-public class MockUserVmManagerImpl implements UserVmManager, UserVmService, Manager {
+public class MockUserVmManagerImpl extends ManagerBase implements UserVmManager, UserVmService {
@Override
public UserVmVO findByName(String name) {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vm/MockVirtualMachineManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vm/MockVirtualMachineManagerImpl.java b/server/test/com/cloud/vm/MockVirtualMachineManagerImpl.java
index 71005c7..cdf7be2 100755
--- a/server/test/com/cloud/vm/MockVirtualMachineManagerImpl.java
+++ b/server/test/com/cloud/vm/MockVirtualMachineManagerImpl.java
@@ -48,6 +48,7 @@ import com.cloud.storage.VMTemplateVO;
import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.utils.Pair;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.utils.fsm.NoTransitionException;
import com.cloud.vm.VirtualMachine.Event;
import com.cloud.vm.VirtualMachine.Type;
@@ -55,7 +56,7 @@ import com.cloud.vm.VirtualMachineProfile.Param;
@Component
@Local(value = VirtualMachineManager.class)
-public class MockVirtualMachineManagerImpl implements VirtualMachineManager {
+public class MockVirtualMachineManagerImpl extends ManagerBase implements VirtualMachineManager {
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java
index 8b16c3d..0af9f16 100644
--- a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java
+++ b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java
@@ -79,11 +79,12 @@ import com.cloud.service.ServiceOfferingVO;
import com.cloud.storage.DiskOfferingVO;
import com.cloud.user.Account;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.vm.VirtualMachine.Type;
@Component
@Local(value = { ConfigurationManager.class, ConfigurationService.class })
-public class MockConfigurationManagerImpl implements ConfigurationManager, ConfigurationService, Manager{
+public class MockConfigurationManagerImpl extends ManagerBase implements ConfigurationManager, ConfigurationService {
@Inject
NetworkOfferingDaoImpl _ntwkOffDao;
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vpc/MockNetworkManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vpc/MockNetworkManagerImpl.java b/server/test/com/cloud/vpc/MockNetworkManagerImpl.java
index cd9bec7..c1aacff 100644
--- a/server/test/com/cloud/vpc/MockNetworkManagerImpl.java
+++ b/server/test/com/cloud/vpc/MockNetworkManagerImpl.java
@@ -76,6 +76,7 @@ import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.vm.Nic;
import com.cloud.vm.NicProfile;
import com.cloud.vm.ReservationContext;
@@ -86,7 +87,7 @@ import com.cloud.vm.VirtualMachineProfileImpl;
@Component
@Local(value = { NetworkManager.class, NetworkService.class })
-public class MockNetworkManagerImpl implements NetworkManager, NetworkService, Manager{
+public class MockNetworkManagerImpl extends ManagerBase implements NetworkManager, NetworkService {
@Inject
NetworkServiceMapDao _ntwkSrvcDao;
@Inject
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vpc/MockNetworkModelImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vpc/MockNetworkModelImpl.java b/server/test/com/cloud/vpc/MockNetworkModelImpl.java
index ddffa01..312f9e6 100644
--- a/server/test/com/cloud/vpc/MockNetworkModelImpl.java
+++ b/server/test/com/cloud/vpc/MockNetworkModelImpl.java
@@ -51,12 +51,13 @@ import com.cloud.offerings.NetworkOfferingVO;
import com.cloud.offerings.dao.NetworkOfferingServiceMapDao;
import com.cloud.user.Account;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.vm.Nic;
import com.cloud.vm.NicProfile;
import com.cloud.vm.VirtualMachine;
@Local(value = {NetworkModel.class})
-public class MockNetworkModelImpl implements NetworkModel, Manager {
+public class MockNetworkModelImpl extends ManagerBase implements NetworkModel {
@Inject
NetworkOfferingServiceMapDao _ntwkOfferingSrvcDao;
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vpc/MockResourceLimitManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vpc/MockResourceLimitManagerImpl.java b/server/test/com/cloud/vpc/MockResourceLimitManagerImpl.java
index deb20b0..690aed6 100644
--- a/server/test/com/cloud/vpc/MockResourceLimitManagerImpl.java
+++ b/server/test/com/cloud/vpc/MockResourceLimitManagerImpl.java
@@ -32,10 +32,11 @@ import com.cloud.exception.ResourceAllocationException;
import com.cloud.user.Account;
import com.cloud.user.ResourceLimitService;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
@Component
@Local(value = { ResourceLimitService.class })
-public class MockResourceLimitManagerImpl implements ResourceLimitService, Manager{
+public class MockResourceLimitManagerImpl extends ManagerBase implements ResourceLimitService {
/* (non-Javadoc)
* @see com.cloud.user.ResourceLimitService#updateResourceLimit(java.lang.Long, java.lang.Long, java.lang.Integer, java.lang.Long)
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java b/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java
index 14b7c60..133f344 100644
--- a/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java
+++ b/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java
@@ -45,11 +45,12 @@ import com.cloud.network.vpn.Site2SiteVpnManager;
import com.cloud.network.vpn.Site2SiteVpnService;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
+import com.cloud.utils.component.ManagerBase;
import com.cloud.vm.DomainRouterVO;
@Component
@Local(value = { Site2SiteVpnManager.class, Site2SiteVpnService.class } )
-public class MockSite2SiteVpnManagerImpl implements Site2SiteVpnManager, Site2SiteVpnService, Manager{
+public class MockSite2SiteVpnManagerImpl extends ManagerBase implements Site2SiteVpnManager, Site2SiteVpnService {
/* (non-Javadoc)
* @see com.cloud.network.vpn.Site2SiteVpnService#createVpnGateway(org.apache.cloudstack.api.commands.CreateVpnGatewayCmd)
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/17652325/server/test/com/cloud/vpc/MockSite2SiteVpnServiceProvider.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vpc/MockSite2SiteVpnServiceProvider.java b/server/test/com/cloud/vpc/MockSite2SiteVpnServiceProvider.java
index d5c39e4..f13c2d1 100644
--- a/server/test/com/cloud/vpc/MockSite2SiteVpnServiceProvider.java
+++ b/server/test/com/cloud/vpc/MockSite2SiteVpnServiceProvider.java
@@ -27,10 +27,11 @@ import org.springframework.stereotype.Component;
import com.cloud.exception.ResourceUnavailableException;
import com.cloud.network.Site2SiteVpnConnection;
import com.cloud.network.element.Site2SiteVpnServiceProvider;
+import com.cloud.utils.component.ManagerBase;
@Component
@Local({Site2SiteVpnServiceProvider.class})
-public class MockSite2SiteVpnServiceProvider implements Site2SiteVpnServiceProvider {
+public class MockSite2SiteVpnServiceProvider extends ManagerBase implements Site2SiteVpnServiceProvider {
/* (non-Javadoc)
* @see com.cloud.utils.component.Adapter#configure(java.lang.String, java.util.Map)