From 9876d34ea4a7ac79a0c38b35a249dce20295d391 Mon Sep 17 00:00:00 2001 From: Murali reddy Date: Mon, 2 Jul 2012 15:05:58 -0700 Subject: [PATCH] moving out ELB network element to plugins/network-elements/elastic-loadbalancer --- build/build-cloud-plugins.xml | 9 +- client/tomcatconf/components.xml.in | 2 + .../elastic-loadbalancer/.classpath | 11 ++ .../elastic-loadbalancer/.project | 17 +++ .../elastic-loadbalancer/build.xml | 129 ++++++++++++++++++ .../com/cloud/network/ElasticLbVmMapVO.java | 0 .../element/ElasticLoadBalancerElement.java | 0 .../lb/ElasticLoadBalancerManager.java | 0 .../lb/ElasticLoadBalancerManagerImpl.java | 0 .../network/lb/dao/ElasticLbVmMapDao.java | 0 .../network/lb/dao/ElasticLbVmMapDaoImpl.java | 0 .../DefaultComponentLibrary.java | 4 - .../lb/LoadBalancingRulesManagerImpl.java | 11 +- 13 files changed, 173 insertions(+), 10 deletions(-) create mode 100644 plugins/network-elements/elastic-loadbalancer/.classpath create mode 100644 plugins/network-elements/elastic-loadbalancer/.project create mode 100755 plugins/network-elements/elastic-loadbalancer/build.xml rename {server => plugins/network-elements/elastic-loadbalancer}/src/com/cloud/network/ElasticLbVmMapVO.java (100%) rename {server => plugins/network-elements/elastic-loadbalancer}/src/com/cloud/network/element/ElasticLoadBalancerElement.java (100%) rename {server => plugins/network-elements/elastic-loadbalancer}/src/com/cloud/network/lb/ElasticLoadBalancerManager.java (100%) rename {server => plugins/network-elements/elastic-loadbalancer}/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java (100%) rename {server => plugins/network-elements/elastic-loadbalancer}/src/com/cloud/network/lb/dao/ElasticLbVmMapDao.java (100%) rename {server => plugins/network-elements/elastic-loadbalancer}/src/com/cloud/network/lb/dao/ElasticLbVmMapDaoImpl.java (100%) diff --git a/build/build-cloud-plugins.xml b/build/build-cloud-plugins.xml index dcadb93184a..61b0e624901 100755 --- a/build/build-cloud-plugins.xml +++ b/build/build-cloud-plugins.xml @@ -279,8 +279,8 @@ - - + + @@ -302,6 +302,11 @@ + + + + + diff --git a/client/tomcatconf/components.xml.in b/client/tomcatconf/components.xml.in index e4e062a27f3..f36355d4ff3 100755 --- a/client/tomcatconf/components.xml.in +++ b/client/tomcatconf/components.xml.in @@ -159,6 +159,7 @@ + @@ -172,6 +173,7 @@ + diff --git a/plugins/network-elements/elastic-loadbalancer/.classpath b/plugins/network-elements/elastic-loadbalancer/.classpath new file mode 100644 index 00000000000..a3f5d12a4c8 --- /dev/null +++ b/plugins/network-elements/elastic-loadbalancer/.classpath @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/plugins/network-elements/elastic-loadbalancer/.project b/plugins/network-elements/elastic-loadbalancer/.project new file mode 100644 index 00000000000..6165661a650 --- /dev/null +++ b/plugins/network-elements/elastic-loadbalancer/.project @@ -0,0 +1,17 @@ + + + elastic-loadbalancer + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/plugins/network-elements/elastic-loadbalancer/build.xml b/plugins/network-elements/elastic-loadbalancer/build.xml new file mode 100755 index 00000000000..66e42cedbd2 --- /dev/null +++ b/plugins/network-elements/elastic-loadbalancer/build.xml @@ -0,0 +1,129 @@ + + + + + + + Cloud Stack ant build file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/server/src/com/cloud/network/ElasticLbVmMapVO.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/ElasticLbVmMapVO.java similarity index 100% rename from server/src/com/cloud/network/ElasticLbVmMapVO.java rename to plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/ElasticLbVmMapVO.java diff --git a/server/src/com/cloud/network/element/ElasticLoadBalancerElement.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/element/ElasticLoadBalancerElement.java similarity index 100% rename from server/src/com/cloud/network/element/ElasticLoadBalancerElement.java rename to plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/element/ElasticLoadBalancerElement.java diff --git a/server/src/com/cloud/network/lb/ElasticLoadBalancerManager.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManager.java similarity index 100% rename from server/src/com/cloud/network/lb/ElasticLoadBalancerManager.java rename to plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManager.java diff --git a/server/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java similarity index 100% rename from server/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java rename to plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java diff --git a/server/src/com/cloud/network/lb/dao/ElasticLbVmMapDao.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/dao/ElasticLbVmMapDao.java similarity index 100% rename from server/src/com/cloud/network/lb/dao/ElasticLbVmMapDao.java rename to plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/dao/ElasticLbVmMapDao.java diff --git a/server/src/com/cloud/network/lb/dao/ElasticLbVmMapDaoImpl.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/dao/ElasticLbVmMapDaoImpl.java similarity index 100% rename from server/src/com/cloud/network/lb/dao/ElasticLbVmMapDaoImpl.java rename to plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/dao/ElasticLbVmMapDaoImpl.java diff --git a/server/src/com/cloud/configuration/DefaultComponentLibrary.java b/server/src/com/cloud/configuration/DefaultComponentLibrary.java index 821c6ed5205..f6db30bf7b7 100755 --- a/server/src/com/cloud/configuration/DefaultComponentLibrary.java +++ b/server/src/com/cloud/configuration/DefaultComponentLibrary.java @@ -100,9 +100,7 @@ import com.cloud.network.dao.VpnUserDaoImpl; import com.cloud.network.element.VirtualRouterElement; import com.cloud.network.element.VirtualRouterElementService; import com.cloud.network.firewall.FirewallManagerImpl; -import com.cloud.network.lb.ElasticLoadBalancerManagerImpl; import com.cloud.network.lb.LoadBalancingRulesManagerImpl; -import com.cloud.network.lb.dao.ElasticLbVmMapDaoImpl; import com.cloud.network.router.VirtualNetworkApplianceManagerImpl; import com.cloud.network.rules.RulesManagerImpl; import com.cloud.network.rules.dao.PortForwardingRulesDaoImpl; @@ -296,7 +294,6 @@ public class DefaultComponentLibrary extends ComponentLibraryBase implements Com addDao("AgentTransferMapDao", HostTransferMapDaoImpl.class); addDao("ProjectDao", ProjectDaoImpl.class); addDao("InlineLoadBalancerNicMapDao", InlineLoadBalancerNicMapDaoImpl.class); - addDao("ElasticLbVmMap", ElasticLbVmMapDaoImpl.class); addDao("ProjectsAccountDao", ProjectAccountDaoImpl.class); addDao("ProjectInvitationDao", ProjectInvitationDaoImpl.class); addDao("IdentityDao", IdentityDaoImpl.class); @@ -369,7 +366,6 @@ public class DefaultComponentLibrary extends ComponentLibraryBase implements Com ComponentInfo info = addManager("ConsoleProxyManager", ConsoleProxyManagerImpl.class); info.addParameter("consoleproxy.sslEnabled", "true"); addManager("ProjectManager", ProjectManagerImpl.class); - addManager("ElasticLoadBalancerManager", ElasticLoadBalancerManagerImpl.class); addManager("SwiftManager", SwiftManagerImpl.class); addManager("StorageNetworkManager", StorageNetworkManagerImpl.class); addManager("ExternalLoadBalancerUsageManager", ExternalLoadBalancerUsageManagerImpl.class); diff --git a/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java b/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java index 17a8cdc6ad7..29d6f392391 100755 --- a/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java +++ b/server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java @@ -151,8 +151,6 @@ public class LoadBalancingRulesManagerImpl implements LoadBalancingRulesMa @Inject FirewallManager _firewallMgr; @Inject - ElasticLoadBalancerManager _elbMgr; - @Inject NetworkDao _networkDao; @Inject FirewallRulesDao _firewallDao; @@ -684,7 +682,9 @@ public class LoadBalancingRulesManagerImpl implements LoadBalancingRulesMa _firewallDao.remove(lb.getId()); } - _elbMgr.handleDeleteLoadBalancerRule(lb, callerUserId, caller); + // FIXME: breaking the dependency on ELB manager. This breaks functionality of ELB using virtual router + // Bug CS-15411 opened to document this + //_elbMgr.handleDeleteLoadBalancerRule(lb, callerUserId, caller); if (success) { s_logger.debug("Load balancer with id " + lb.getId() + " is removed successfully"); @@ -726,7 +726,10 @@ public class LoadBalancingRulesManagerImpl implements LoadBalancingRulesMa _networkMgr.checkIpForService(ipAddressVo, Service.Lb); } - LoadBalancer result = _elbMgr.handleCreateLoadBalancerRule(lb, lbOwner, lb.getNetworkId()); + // FIXME: breaking the dependency on ELB manager. This breaks functionality of ELB using virtual router + // Bug CS-15411 opened to document this + //LoadBalancer result = _elbMgr.handleCreateLoadBalancerRule(lb, lbOwner, lb.getNetworkId()); + LoadBalancer result = null; if (result == null) { IpAddress ip = null; Network guestNetwork = _networkMgr.getNetwork(lb.getNetworkId());