Network-refactor: verify injection is correct. Verify that dhcp service providers and ip deployers get injected independently in addition to the list of network elements

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
This commit is contained in:
Chiradeep Vittal 2013-01-08 23:49:32 -08:00
parent 88df984ff3
commit e0578180c5
7 changed files with 1419 additions and 2 deletions

View File

@ -0,0 +1,87 @@
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package com.cloud.alert;
import java.util.Map;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
@Local(value = {AlertManager.class})
public class MockAlertManagerImpl implements AlertManager {
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#configure(java.lang.String, java.util.Map)
*/
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#start()
*/
@Override
public boolean start() {
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#stop()
*/
@Override
public boolean stop() {
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#getName()
*/
@Override
public String getName() {
return "MockAlertManagerImpl";
}
/* (non-Javadoc)
* @see com.cloud.alert.AlertManager#clearAlert(short, long, long)
*/
@Override
public void clearAlert(short alertType, long dataCenterId, long podId) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.alert.AlertManager#sendAlert(short, long, java.lang.Long, java.lang.String, java.lang.String)
*/
@Override
public void sendAlert(short alertType, long dataCenterId, Long podId, String subject, String body) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.alert.AlertManager#recalculateCapacity()
*/
@Override
public void recalculateCapacity() {
// TODO Auto-generated method stub
}
}

View File

@ -0,0 +1,53 @@
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package com.cloud.network;
import junit.framework.Assert;
import org.junit.Test;
import com.cloud.network.element.DhcpServiceProvider;
import com.cloud.network.element.IpDeployer;
import com.cloud.network.firewall.FirewallManagerImpl;
import com.cloud.network.rules.FirewallManager;
import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.testcase.ComponentSetup;
import com.cloud.utils.testcase.ComponentTestCase;
@ComponentSetup(managerName="management-server", setupXml="network-mgr-component.xml")
public class NetworkManagerTest extends ComponentTestCase {
@Test
public void testInjected() {
NetworkManagerImpl networkMgr = (NetworkManagerImpl)ComponentLocator.getCurrentLocator().getManager(NetworkManager.class);
Assert.assertTrue(networkMgr._ipDeployers.enumeration().hasMoreElements());
Assert.assertTrue(networkMgr._networkElements.enumeration().hasMoreElements());
Assert.assertTrue(networkMgr._dhcpProviders.enumeration().hasMoreElements());
Assert.assertNotNull(networkMgr._networkModel);
Assert.assertNotNull(networkMgr._ipDeployers.get("VirtualRouter"));
Assert.assertNotNull(networkMgr._dhcpProviders.get("VirtualRouter"));
Assert.assertTrue(networkMgr._ipDeployers.get("VirtualRouter") instanceof IpDeployer);
Assert.assertTrue(networkMgr._dhcpProviders.get("VirtualRouter") instanceof DhcpServiceProvider);
}
}

View File

@ -0,0 +1,104 @@
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package com.cloud.network;
import com.cloud.agent.MockAgentManagerImpl;
import com.cloud.alert.AlertManagerImpl;
import com.cloud.alert.MockAlertManagerImpl;
import com.cloud.baremetal.ExternalDhcpManagerImpl;
import com.cloud.configuration.ConfigurationManagerImpl;
import com.cloud.configuration.DefaultComponentLibrary;
import com.cloud.network.as.AutoScaleManagerImpl;
import com.cloud.network.firewall.FirewallManagerImpl;
import com.cloud.network.lb.LoadBalancingRulesManagerImpl;
import com.cloud.network.router.VpcVirtualNetworkApplianceManagerImpl;
import com.cloud.network.rules.RulesManagerImpl;
import com.cloud.network.security.SecurityGroupManagerImpl2;
import com.cloud.network.vpc.NetworkACLManagerImpl;
import com.cloud.network.vpc.VpcManagerImpl;
import com.cloud.network.vpn.RemoteAccessVpnManagerImpl;
import com.cloud.network.vpn.Site2SiteVpnManagerImpl;
import com.cloud.projects.MockProjectManagerImpl;
import com.cloud.projects.ProjectManagerImpl;
import com.cloud.resource.MockResourceManagerImpl;
import com.cloud.resource.ResourceManagerImpl;
import com.cloud.resourcelimit.ResourceLimitManagerImpl;
import com.cloud.storage.s3.S3ManagerImpl;
import com.cloud.storage.secondary.SecondaryStorageManagerImpl;
import com.cloud.storage.swift.SwiftManagerImpl;
import com.cloud.tags.TaggedResourceManagerImpl;
import com.cloud.template.TemplateManagerImpl;
import com.cloud.user.AccountManagerImpl;
import com.cloud.user.DomainManagerImpl;
import com.cloud.user.MockAccountManagerImpl;
import com.cloud.user.MockDomainManagerImpl;
import com.cloud.vm.MockVirtualMachineManagerImpl;
import com.cloud.vpc.MockConfigurationManagerImpl;
import com.cloud.vpc.MockResourceLimitManagerImpl;
import com.cloud.vpc.MockVpcManagerImpl;
import com.cloud.vpc.MockVpcVirtualNetworkApplianceManager;
public class NetworkManagerTestComponentLibrary extends DefaultComponentLibrary {
/* (non-Javadoc)
* @see com.cloud.configuration.DefaultComponentLibrary#populateManagers()
*/
@Override
protected void populateManagers() {
addManager("configuration manager", MockConfigurationManagerImpl.class);
addManager("account manager", MockAccountManagerImpl.class);
addManager("domain manager", MockDomainManagerImpl.class);
addManager("resource limit manager", MockResourceLimitManagerImpl.class);
addManager("network service", NetworkServiceImpl.class);
addManager("network manager", NetworkManagerImpl.class);
addManager("network model", NetworkModelImpl.class);
addManager("LoadBalancingRulesManager", LoadBalancingRulesManagerImpl.class);
//addManager("AutoScaleManager", AutoScaleManagerImpl.class);
addManager("RulesManager", RulesManagerImpl.class);
addManager("RemoteAccessVpnManager", RemoteAccessVpnManagerImpl.class);
addManager("FirewallManager", FirewallManagerImpl.class);
addManager("StorageNetworkManager", StorageNetworkManagerImpl.class);
addManager("VPC Manager", MockVpcManagerImpl.class);
addManager("VpcVirtualRouterManager", MockVpcVirtualNetworkApplianceManager.class);
addManager("NetworkACLManager", NetworkACLManagerImpl.class);
addManager("Site2SiteVpnManager", Site2SiteVpnManagerImpl.class);
addManager("Alert Manager", MockAlertManagerImpl.class);
addManager("ProjectManager", MockProjectManagerImpl.class);
//addManager("SwiftManager", SwiftManagerImpl.class);
//addManager("S3Manager", S3ManagerImpl.class);
//addManager("SecondaryStorageManager", SecondaryStorageManagerImpl.class);
//addManager("SecurityGroupManager", SecurityGroupManagerImpl2.class);
addManager("AgentManager", MockAgentManagerImpl.class);
addManager("ExternalLoadBalancerUsageManager", ExternalLoadBalancerUsageManagerImpl.class);
//addManager("TemplateManager", TemplateManagerImpl.class);
//addManager("VirtualMachineManager", MockVirtualMachineManagerImpl.class);
addManager("ResourceManager", MockResourceManagerImpl.class);
addManager("ExternalDhcpManager", ExternalDhcpManagerImpl.class);
}
@Override
protected void populateAdapters() {
//no-op
}
}

View File

@ -0,0 +1,607 @@
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package com.cloud.resource;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
import com.cloud.agent.api.StartupCommand;
import com.cloud.agent.api.StartupRoutingCommand;
import com.cloud.api.commands.AddClusterCmd;
import com.cloud.api.commands.AddHostCmd;
import com.cloud.api.commands.AddS3Cmd;
import com.cloud.api.commands.AddSecondaryStorageCmd;
import com.cloud.api.commands.AddSwiftCmd;
import com.cloud.api.commands.CancelMaintenanceCmd;
import com.cloud.api.commands.DeleteClusterCmd;
import com.cloud.api.commands.ListS3sCmd;
import com.cloud.api.commands.ListSwiftsCmd;
import com.cloud.api.commands.PrepareForMaintenanceCmd;
import com.cloud.api.commands.ReconnectHostCmd;
import com.cloud.api.commands.UpdateHostCmd;
import com.cloud.api.commands.UpdateHostPasswordCmd;
import com.cloud.dc.DataCenterVO;
import com.cloud.dc.HostPodVO;
import com.cloud.dc.PodCluster;
import com.cloud.exception.AgentUnavailableException;
import com.cloud.exception.DiscoveryException;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.ResourceInUseException;
import com.cloud.host.Host;
import com.cloud.host.HostStats;
import com.cloud.host.HostVO;
import com.cloud.host.Status;
import com.cloud.host.Host.Type;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.org.Cluster;
import com.cloud.resource.ResourceState.Event;
import com.cloud.service.ServiceOfferingVO;
import com.cloud.storage.S3;
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.fsm.NoTransitionException;
@Local(value = {ResourceManager.class})
public class MockResourceManagerImpl implements ResourceManager, Manager {
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#updateHost(com.cloud.api.commands.UpdateHostCmd)
*/
@Override
public Host updateHost(UpdateHostCmd cmd) throws NoTransitionException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#cancelMaintenance(com.cloud.api.commands.CancelMaintenanceCmd)
*/
@Override
public Host cancelMaintenance(CancelMaintenanceCmd cmd) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#reconnectHost(com.cloud.api.commands.ReconnectHostCmd)
*/
@Override
public Host reconnectHost(ReconnectHostCmd cmd) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#discoverCluster(com.cloud.api.commands.AddClusterCmd)
*/
@Override
public List<? extends Cluster> discoverCluster(AddClusterCmd cmd) throws IllegalArgumentException,
DiscoveryException, ResourceInUseException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#deleteCluster(com.cloud.api.commands.DeleteClusterCmd)
*/
@Override
public boolean deleteCluster(DeleteClusterCmd cmd) {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#updateCluster(com.cloud.org.Cluster, java.lang.String, java.lang.String, java.lang.String, java.lang.String)
*/
@Override
public Cluster updateCluster(Cluster cluster, String clusterType, String hypervisor, String allocationState,
String managedstate) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#discoverHosts(com.cloud.api.commands.AddHostCmd)
*/
@Override
public List<? extends Host> discoverHosts(AddHostCmd cmd) throws IllegalArgumentException, DiscoveryException,
InvalidParameterValueException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#discoverHosts(com.cloud.api.commands.AddSecondaryStorageCmd)
*/
@Override
public List<? extends Host> discoverHosts(AddSecondaryStorageCmd cmd) throws IllegalArgumentException,
DiscoveryException, InvalidParameterValueException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#maintain(com.cloud.api.commands.PrepareForMaintenanceCmd)
*/
@Override
public Host maintain(PrepareForMaintenanceCmd cmd) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#updateHostPassword(com.cloud.api.commands.UpdateHostPasswordCmd)
*/
@Override
public boolean updateHostPassword(UpdateHostPasswordCmd upasscmd) {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#getHost(long)
*/
@Override
public Host getHost(long hostId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#getCluster(java.lang.Long)
*/
@Override
public Cluster getCluster(Long clusterId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#discoverSwift(com.cloud.api.commands.AddSwiftCmd)
*/
@Override
public Swift discoverSwift(AddSwiftCmd addSwiftCmd) throws DiscoveryException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#discoverS3(com.cloud.api.commands.AddS3Cmd)
*/
@Override
public S3 discoverS3(AddS3Cmd cmd) throws DiscoveryException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#getSupportedHypervisorTypes(long, boolean, java.lang.Long)
*/
@Override
public List<HypervisorType> getSupportedHypervisorTypes(long zoneId, boolean forVirtualRouter, Long podId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#listSwifts(com.cloud.api.commands.ListSwiftsCmd)
*/
@Override
public List<? extends Swift> listSwifts(ListSwiftsCmd cmd) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceService#listS3s(com.cloud.api.commands.ListS3sCmd)
*/
@Override
public List<? extends S3> listS3s(ListS3sCmd cmd) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#registerResourceEvent(java.lang.Integer, com.cloud.resource.ResourceListener)
*/
@Override
public void registerResourceEvent(Integer event, ResourceListener listener) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#unregisterResourceEvent(com.cloud.resource.ResourceListener)
*/
@Override
public void unregisterResourceEvent(ResourceListener listener) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#registerResourceStateAdapter(java.lang.String, com.cloud.resource.ResourceStateAdapter)
*/
@Override
public void registerResourceStateAdapter(String name, ResourceStateAdapter adapter) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#unregisterResourceStateAdapter(java.lang.String)
*/
@Override
public void unregisterResourceStateAdapter(String name) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#createHostAndAgent(java.lang.Long, com.cloud.resource.ServerResource, java.util.Map, boolean, java.util.List, boolean)
*/
@Override
public Host createHostAndAgent(Long hostId, ServerResource resource, Map<String, String> details, boolean old,
List<String> hostTags, boolean forRebalance) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#addHost(long, com.cloud.resource.ServerResource, com.cloud.host.Host.Type, java.util.Map)
*/
@Override
public Host addHost(long zoneId, ServerResource resource, Type hostType, Map<String, String> hostDetails) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#createHostVOForConnectedAgent(com.cloud.agent.api.StartupCommand[])
*/
@Override
public HostVO createHostVOForConnectedAgent(StartupCommand[] cmds) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#checkCIDR(com.cloud.dc.HostPodVO, com.cloud.dc.DataCenterVO, java.lang.String, java.lang.String)
*/
@Override
public void checkCIDR(HostPodVO pod, DataCenterVO dc, String serverPrivateIP, String serverPrivateNetmask) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#fillRoutingHostVO(com.cloud.host.HostVO, com.cloud.agent.api.StartupRoutingCommand, com.cloud.hypervisor.Hypervisor.HypervisorType, java.util.Map, java.util.List)
*/
@Override
public HostVO fillRoutingHostVO(HostVO host, StartupRoutingCommand ssCmd, HypervisorType hyType,
Map<String, String> details, List<String> hostTags) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#deleteRoutingHost(com.cloud.host.HostVO, boolean, boolean)
*/
@Override
public void deleteRoutingHost(HostVO host, boolean isForced, boolean forceDestroyStorage)
throws UnableDeleteHostException {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#executeUserRequest(long, com.cloud.resource.ResourceState.Event)
*/
@Override
public boolean executeUserRequest(long hostId, Event event) throws AgentUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#resourceStateTransitTo(com.cloud.host.Host, com.cloud.resource.ResourceState.Event, long)
*/
@Override
public boolean resourceStateTransitTo(Host host, Event event, long msId) throws NoTransitionException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#umanageHost(long)
*/
@Override
public boolean umanageHost(long hostId) {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#maintenanceFailed(long)
*/
@Override
public boolean maintenanceFailed(long hostId) {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#maintain(long)
*/
@Override
public boolean maintain(long hostId) throws AgentUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#deleteHost(long, boolean, boolean)
*/
@Override
public boolean deleteHost(long hostId, boolean isForced, boolean isForceDeleteStorage) {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#findDirectlyConnectedHosts()
*/
@Override
public List<HostVO> findDirectlyConnectedHosts() {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAllUpAndEnabledHosts(com.cloud.host.Host.Type, java.lang.Long, java.lang.Long, long)
*/
@Override
public List<HostVO> listAllUpAndEnabledHosts(Type type, Long clusterId, Long podId, long dcId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAllHostsInCluster(long)
*/
@Override
public List<HostVO> listAllHostsInCluster(long clusterId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listHostsInClusterByStatus(long, com.cloud.host.Status)
*/
@Override
public List<HostVO> listHostsInClusterByStatus(long clusterId, Status status) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAllUpAndEnabledHostsInOneZoneByType(com.cloud.host.Host.Type, long)
*/
@Override
public List<HostVO> listAllUpAndEnabledHostsInOneZoneByType(Type type, long dcId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAllHostsInOneZoneByType(com.cloud.host.Host.Type, long)
*/
@Override
public List<HostVO> listAllHostsInOneZoneByType(Type type, long dcId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAllHostsInAllZonesByType(com.cloud.host.Host.Type)
*/
@Override
public List<HostVO> listAllHostsInAllZonesByType(Type type) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAvailHypervisorInZone(java.lang.Long, java.lang.Long)
*/
@Override
public List<HypervisorType> listAvailHypervisorInZone(Long hostId, Long zoneId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#findHostByGuid(java.lang.String)
*/
@Override
public HostVO findHostByGuid(String guid) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#findHostByName(java.lang.String)
*/
@Override
public HostVO findHostByName(String name) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listHostsByNameLike(java.lang.String)
*/
@Override
public List<HostVO> listHostsByNameLike(String name) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#findPod(com.cloud.template.VirtualMachineTemplate, com.cloud.service.ServiceOfferingVO, com.cloud.dc.DataCenterVO, long, java.util.Set)
*/
@Override
public Pair<HostPodVO, Long> findPod(VirtualMachineTemplate template, ServiceOfferingVO offering, DataCenterVO dc,
long accountId, Set<Long> avoids) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#getHostStatistics(long)
*/
@Override
public HostStats getHostStatistics(long hostId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#getGuestOSCategoryId(long)
*/
@Override
public Long getGuestOSCategoryId(long hostId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#getHostTags(long)
*/
@Override
public String getHostTags(long hostId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listByDataCenter(long)
*/
@Override
public List<PodCluster> listByDataCenter(long dcId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAllNotInMaintenanceHostsInOneZone(com.cloud.host.Host.Type, java.lang.Long)
*/
@Override
public List<HostVO> listAllNotInMaintenanceHostsInOneZone(Type type, Long dcId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#getDefaultHypervisor(long)
*/
@Override
public HypervisorType getDefaultHypervisor(long zoneId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#getAvailableHypervisor(long)
*/
@Override
public HypervisorType getAvailableHypervisor(long zoneId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#getMatchingDiscover(com.cloud.hypervisor.Hypervisor.HypervisorType)
*/
@Override
public Discoverer getMatchingDiscover(HypervisorType hypervisorType) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#findHostByGuid(long, java.lang.String)
*/
@Override
public List<HostVO> findHostByGuid(long dcId, String guid) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.resource.ResourceManager#listAllUpAndEnabledNonHAHosts(com.cloud.host.Host.Type, java.lang.Long, java.lang.Long, long)
*/
@Override
public List<HostVO> listAllUpAndEnabledNonHAHosts(Type type, Long clusterId, Long podId, long dcId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#configure(java.lang.String, java.util.Map)
*/
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
// TODO Auto-generated method stub
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#start()
*/
@Override
public boolean start() {
// TODO Auto-generated method stub
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#stop()
*/
@Override
public boolean stop() {
// TODO Auto-generated method stub
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#getName()
*/
@Override
public String getName() {
// TODO Auto-generated method stub
return "MockResourceManagerImpl";
}
}

View File

@ -31,8 +31,8 @@ import com.cloud.exception.PermissionDeniedException;
import com.cloud.utils.component.Manager;
import com.cloud.utils.Pair;
@Local(value = { DomainManager.class })
public class MockDomainManagerImpl implements Manager, DomainManager {
@Local(value = { DomainManager.class, DomainService.class })
public class MockDomainManagerImpl implements Manager, DomainManager, DomainService {
@Override
public Domain createDomain(String name, Long parentId, String networkDomain) {

View File

@ -0,0 +1,390 @@
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package com.cloud.vpc;
import java.util.List;
import java.util.Map;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
import com.cloud.api.commands.UpgradeRouterCmd;
import com.cloud.deploy.DeployDestination;
import com.cloud.exception.ConcurrentOperationException;
import com.cloud.exception.InsufficientCapacityException;
import com.cloud.exception.ResourceUnavailableException;
import com.cloud.network.Network;
import com.cloud.network.PublicIpAddress;
import com.cloud.network.RemoteAccessVpn;
import com.cloud.network.Site2SiteVpnConnection;
import com.cloud.network.VpcVirtualNetworkApplianceService;
import com.cloud.network.VpnUser;
import com.cloud.network.router.VirtualRouter;
import com.cloud.network.router.VpcVirtualNetworkApplianceManager;
import com.cloud.network.rules.FirewallRule;
import com.cloud.network.rules.StaticNat;
import com.cloud.network.vpc.PrivateGateway;
import com.cloud.network.vpc.StaticRouteProfile;
import com.cloud.network.vpc.Vpc;
import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.uservm.UserVm;
import com.cloud.utils.component.Manager;
import com.cloud.vm.DomainRouterVO;
import com.cloud.vm.NicProfile;
import com.cloud.vm.VirtualMachineProfile;
import com.cloud.vm.VirtualMachineProfile.Param;
@Local(value = {VpcVirtualNetworkApplianceManager.class, VpcVirtualNetworkApplianceService.class})
public class MockVpcVirtualNetworkApplianceManager implements VpcVirtualNetworkApplianceManager,
VpcVirtualNetworkApplianceService, Manager {
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#sendSshKeysToHost(java.lang.Long, java.lang.String, java.lang.String)
*/
@Override
public boolean sendSshKeysToHost(Long hostId, String pubKey, String prvKey) {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#savePasswordToRouter(com.cloud.network.Network, com.cloud.vm.NicProfile, com.cloud.vm.VirtualMachineProfile, java.util.List)
*/
@Override
public boolean savePasswordToRouter(Network network, NicProfile nic, VirtualMachineProfile<UserVm> profile,
List<? extends VirtualRouter> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#saveUserDataToRouter(com.cloud.network.Network, com.cloud.vm.NicProfile, com.cloud.vm.VirtualMachineProfile, java.util.List)
*/
@Override
public boolean saveUserDataToRouter(Network network, NicProfile nic, VirtualMachineProfile<UserVm> profile,
List<? extends VirtualRouter> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#deployVirtualRouterInGuestNetwork(com.cloud.network.Network, com.cloud.deploy.DeployDestination, com.cloud.user.Account, java.util.Map, boolean)
*/
@Override
public List<DomainRouterVO> deployVirtualRouterInGuestNetwork(Network guestNetwork, DeployDestination dest,
Account owner, Map<Param, Object> params, boolean isRedundant) throws InsufficientCapacityException,
ResourceUnavailableException, ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#startRemoteAccessVpn(com.cloud.network.Network, com.cloud.network.RemoteAccessVpn, java.util.List)
*/
@Override
public boolean startRemoteAccessVpn(Network network, RemoteAccessVpn vpn, List<? extends VirtualRouter> routers)
throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#deleteRemoteAccessVpn(com.cloud.network.Network, com.cloud.network.RemoteAccessVpn, java.util.List)
*/
@Override
public boolean deleteRemoteAccessVpn(Network network, RemoteAccessVpn vpn, List<? extends VirtualRouter> routers)
throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#associatePublicIP(com.cloud.network.Network, java.util.List, java.util.List)
*/
@Override
public boolean associatePublicIP(Network network, List<? extends PublicIpAddress> ipAddress,
List<? extends VirtualRouter> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#applyFirewallRules(com.cloud.network.Network, java.util.List, java.util.List)
*/
@Override
public boolean applyFirewallRules(Network network, List<? extends FirewallRule> rules,
List<? extends VirtualRouter> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#getRoutersForNetwork(long)
*/
@Override
public List<VirtualRouter> getRoutersForNetwork(long networkId) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#applyVpnUsers(com.cloud.network.Network, java.util.List, java.util.List)
*/
@Override
public String[] applyVpnUsers(Network network, List<? extends VpnUser> users, List<DomainRouterVO> routers)
throws ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#stop(com.cloud.network.router.VirtualRouter, boolean, com.cloud.user.User, com.cloud.user.Account)
*/
@Override
public VirtualRouter stop(VirtualRouter router, boolean forced, User callingUser, Account callingAccount)
throws ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#getDnsBasicZoneUpdate()
*/
@Override
public String getDnsBasicZoneUpdate() {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#applyStaticNats(com.cloud.network.Network, java.util.List, java.util.List)
*/
@Override
public boolean applyStaticNats(Network network, List<? extends StaticNat> rules,
List<? extends VirtualRouter> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#applyDhcpEntry(com.cloud.network.Network, com.cloud.vm.NicProfile, com.cloud.vm.VirtualMachineProfile, com.cloud.deploy.DeployDestination, java.util.List)
*/
@Override
public boolean applyDhcpEntry(Network config, NicProfile nic, VirtualMachineProfile<UserVm> vm,
DeployDestination dest, List<DomainRouterVO> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VirtualNetworkApplianceManager#applyUserData(com.cloud.network.Network, com.cloud.vm.NicProfile, com.cloud.vm.VirtualMachineProfile, com.cloud.deploy.DeployDestination, java.util.List)
*/
@Override
public boolean applyUserData(Network config, NicProfile nic, VirtualMachineProfile<UserVm> vm,
DeployDestination dest, List<DomainRouterVO> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.VirtualNetworkApplianceService#startRouter(long, boolean)
*/
@Override
public VirtualRouter startRouter(long routerId, boolean reprogramNetwork) throws ConcurrentOperationException,
ResourceUnavailableException, InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.VirtualNetworkApplianceService#rebootRouter(long, boolean)
*/
@Override
public VirtualRouter rebootRouter(long routerId, boolean reprogramNetwork) throws ConcurrentOperationException,
ResourceUnavailableException, InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.VirtualNetworkApplianceService#upgradeRouter(com.cloud.api.commands.UpgradeRouterCmd)
*/
@Override
public VirtualRouter upgradeRouter(UpgradeRouterCmd cmd) {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.VirtualNetworkApplianceService#stopRouter(long, boolean)
*/
@Override
public VirtualRouter stopRouter(long routerId, boolean forced) throws ResourceUnavailableException,
ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.VirtualNetworkApplianceService#startRouter(long)
*/
@Override
public VirtualRouter startRouter(long id) throws ResourceUnavailableException, InsufficientCapacityException,
ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.VirtualNetworkApplianceService#destroyRouter(long, com.cloud.user.Account, java.lang.Long)
*/
@Override
public VirtualRouter destroyRouter(long routerId, Account caller, Long callerUserId)
throws ResourceUnavailableException, ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#configure(java.lang.String, java.util.Map)
*/
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#start()
*/
@Override
public boolean start() {
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#stop()
*/
@Override
public boolean stop() {
return true;
}
/* (non-Javadoc)
* @see com.cloud.utils.component.Manager#getName()
*/
@Override
public String getName() {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.VpcVirtualNetworkApplianceService#addVpcRouterToGuestNetwork(com.cloud.network.router.VirtualRouter, com.cloud.network.Network, boolean)
*/
@Override
public boolean addVpcRouterToGuestNetwork(VirtualRouter router, Network network, boolean isRedundant)
throws ConcurrentOperationException, ResourceUnavailableException, InsufficientCapacityException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.VpcVirtualNetworkApplianceService#removeVpcRouterFromGuestNetwork(com.cloud.network.router.VirtualRouter, com.cloud.network.Network, boolean)
*/
@Override
public boolean removeVpcRouterFromGuestNetwork(VirtualRouter router, Network network, boolean isRedundant)
throws ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VpcVirtualNetworkApplianceManager#deployVirtualRouterInVpc(com.cloud.network.vpc.Vpc, com.cloud.deploy.DeployDestination, com.cloud.user.Account, java.util.Map)
*/
@Override
public List<DomainRouterVO> deployVirtualRouterInVpc(Vpc vpc, DeployDestination dest, Account owner,
Map<Param, Object> params) throws InsufficientCapacityException, ConcurrentOperationException,
ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VpcVirtualNetworkApplianceManager#applyNetworkACLs(com.cloud.network.Network, java.util.List, java.util.List)
*/
@Override
public boolean applyNetworkACLs(Network network, List<? extends FirewallRule> rules,
List<? extends VirtualRouter> routers) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VpcVirtualNetworkApplianceManager#setupPrivateGateway(com.cloud.network.vpc.PrivateGateway, com.cloud.network.router.VirtualRouter)
*/
@Override
public boolean setupPrivateGateway(PrivateGateway gateway, VirtualRouter router)
throws ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VpcVirtualNetworkApplianceManager#destroyPrivateGateway(com.cloud.network.vpc.PrivateGateway, com.cloud.network.router.VirtualRouter)
*/
@Override
public boolean destroyPrivateGateway(PrivateGateway gateway, VirtualRouter router)
throws ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VpcVirtualNetworkApplianceManager#applyStaticRoutes(java.util.List, java.util.List)
*/
@Override
public boolean applyStaticRoutes(List<StaticRouteProfile> routes, List<DomainRouterVO> routers)
throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VpcVirtualNetworkApplianceManager#startSite2SiteVpn(com.cloud.network.Site2SiteVpnConnection, com.cloud.network.router.VirtualRouter)
*/
@Override
public boolean startSite2SiteVpn(Site2SiteVpnConnection conn, VirtualRouter router)
throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
/* (non-Javadoc)
* @see com.cloud.network.router.VpcVirtualNetworkApplianceManager#stopSite2SiteVpn(com.cloud.network.Site2SiteVpnConnection, com.cloud.network.router.VirtualRouter)
*/
@Override
public boolean stopSite2SiteVpn(Site2SiteVpnConnection conn, VirtualRouter router)
throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
}

View File

@ -0,0 +1,176 @@
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!--
components.xml is the configuration file for the VM Ops
insertion servers. Someone can quickly pull together an
insertion server by selecting the correct adapters to use.
Here are some places to look for information.
- To find out the general functionality that each Manager
or Adapter provide, look at the javadoc for the interface
that it implements. The interface is usually the
"key" attribute in the declaration.
- To find specific implementation of each Manager or
Adapter, look at the javadoc for the actual class. The
class can be found in the <class> element.
- To find out the configuration parameters for each Manager
or Adapter, look at the javadoc for the actual implementation
class. It should be documented in the description of the
class.
- To know more about the components.xml in general, look for
the javadoc for ComponentLocator.java.
If you found that the Manager or Adapter are not properly
documented, please contact the author.
-->
<components.xml>
<interceptor library="com.cloud.configuration.DefaultInterceptorLibrary"/>
<management-server class="com.cloud.network.NetworkManagerImpl" library="com.cloud.network.NetworkManagerTestComponentLibrary">
<dao name="Configuration configuration server" class="com.cloud.configuration.dao.ConfigurationDaoImpl">
<param name="premium">true</param>
</dao>
<adapters key="com.cloud.network.guru.NetworkGuru">
<!--
NOTE: The order of those gurus implicates priority of network traffic types the guru implements.
The upper the higher priority. It effects listTafficTypeImplementors API which returns impelmentor
of a specific network traffic.
A fair question is, if two gurus implement the same two network traffic types, but these traffic types
have cross priority, how to rank them? For example:
GuruA (TrafficTypeA, TrafficTypeB)
GuruB (TrafficTypeA, TrafficTypeB)
we want GuruB.TrafficTypeB > GuruA.TrafficTypeB and GuruB.TrafficTypeA < GuruA.TrafficTypeA. As the priority
implicated by order can not map to multiple traffic type, you have to do implement GuruC which inherits GuruB
for TrafficTypeB. Then ranking them in order of:
GuruC (TrafficTypeB)
GuruA (TrafficTypeA, TrafficTypeB)
GuruB (TrafficTypeA, TrafficTypeB)
now GuruC represents TrafficTypeB with highest priority while GuruA represents TrafficTypeA with highest pirority.
However, above case barely happens.
-->
<adapter name="StorageNetworkGuru" class="com.cloud.network.guru.StorageNetworkGuru"/>
<adapter name="ExternalGuestNetworkGuru" class="com.cloud.network.guru.ExternalGuestNetworkGuru"/>
<adapter name="PublicNetworkGuru" class="com.cloud.network.guru.PublicNetworkGuru"/>
<adapter name="PodBasedNetworkGuru" class="com.cloud.network.guru.PodBasedNetworkGuru"/>
<adapter name="ControlNetworkGuru" class="com.cloud.network.guru.ControlNetworkGuru"/>
<adapter name="DirectNetworkGuru" class="com.cloud.network.guru.DirectNetworkGuru"/>
<adapter name="DirectPodBasedNetworkGuru" class="com.cloud.network.guru.DirectPodBasedNetworkGuru"/>
<!--<adapter name="OvsGuestNetworkGuru" class="com.cloud.network.guru.OvsGuestNetworkGuru"/> -->
<adapter name="PrivateNetworkGuru" class="com.cloud.network.guru.PrivateNetworkGuru"/>
<!--<adapter name="NiciraNvpGuestNetworkGuru" class="com.cloud.network.guru.NiciraNvpGuestNetworkGuru"/> -->
</adapters>
<adapters key="com.cloud.network.IpAddrAllocator">
<adapter name="Basic" class="com.cloud.network.ExteralIpAddressAllocator"/>
</adapters>
<adapters key="com.cloud.network.element.NetworkElement">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
<!--<adapter name="Ovs" class="com.cloud.network.element.OvsElement"/> -->
<!--<adapter name="ExternalDhcpServer" class="com.cloud.network.element.ExternalDhcpElement"/>-->
<adapter name="BareMetal" class="com.cloud.network.element.BareMetalElement"/>
<adapter name="SecurityGroupProvider" class="com.cloud.network.element.SecurityGroupElement"/>
<adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
<!--<adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
</adapters>
<adapters key="com.cloud.network.element.FirewallServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
</adapters>
<adapters key="com.cloud.network.element.DhcpServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
<adapter name="ExternalDhcpElement" class="com.cloud.network.element.ExternalDhcpElement"/>
</adapters>
<adapters key="com.cloud.network.element.UserDataServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
</adapters>
<adapters key="com.cloud.network.element.SourceNatServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
<!--<adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
</adapters>
<adapters key="com.cloud.network.element.StaticNatServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
<!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
</adapters>
<adapters key="com.cloud.network.element.PortForwardingServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
<!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
</adapters>
<adapters key="com.cloud.network.element.LoadBalancingServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
</adapters>
<adapters key="com.cloud.network.element.RemoteAccessVPNServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
</adapters>
<adapters key="com.cloud.network.element.Site2SiteVpnServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement" />
</adapters>
<adapters key="com.cloud.network.element.IpDeployer">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
<!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
</adapters>
<adapters key="com.cloud.network.element.ConnectivityProvider">
<!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
</adapters>
<adapters key="com.cloud.network.element.NetworkACLServiceProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
</adapters>
<adapters key="com.cloud.network.element.VpcProvider">
<adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
</adapters>
<!--<manager name="OvsTunnelManager" key="com.cloud.network.ovs.OvsTunnelManager" class="com.cloud.network.ovs.OvsTunnelManagerImpl"/>-->
<!--<manager name="ElasticLoadBalancerManager" key="com.cloud.network.lb.ElasticLoadBalancerManager" class="com.cloud.network.lb.ElasticLoadBalancerManagerImpl"/>-->
<pluggableservice name="VirtualRouterElementService" key="com.cloud.network.element.VirtualRouterElementService" class="com.cloud.network.element.VirtualRouterElement"/>
<!-- <pluggableservice name="NiciraNvpElementService" key="com.cloud.network.element.NiciraNvpElementService" class="com.cloud.network.element.NiciraNvpElement"/> -->
<!--<dao name="OvsTunnelInterfaceDao" class="com.cloud.network.ovs.dao.OvsTunnelInterfaceDaoImpl" singleton="false"/> -->
<!--<dao name="OvsTunnelAccountDao" class="com.cloud.network.ovs.dao.OvsTunnelNetworkDaoImpl" singleton="false"/> -->
<!--<dao name="NiciraNvpDao" class="com.cloud.network.dao.NiciraNvpDaoImpl" singleton="false"/> -->
<!--<dao name="NiciraNvpNicMappingDao" class="com.cloud.network.dao.NiciraNvpNicMappingDaoImpl" singleton="false"/> -->
<!--<dao name="NiciraNvpRouterMappingDao" class="com.cloud.network.dao.NiciraNvpRouterMappingDaoImpl" singleton="false"/> -->
<!--<dao name="ElasticLbVmMapDao" class="com.cloud.network.lb.dao.ElasticLbVmMapDaoImpl" singleton="false"/> -->
</management-server>
<configuration-server class="com.cloud.server.ConfigurationServerImpl">
<dao name="Configuration configuration server" class="com.cloud.configuration.dao.ConfigurationDaoImpl" singleton="false">
<param name="premium">true</param>
</dao>
<dao name="Snapshot policy defaults" class="com.cloud.storage.dao.SnapshotPolicyDaoImpl" singleton="false"/>
<dao name="DiskOffering configuration server" class="com.cloud.storage.dao.DiskOfferingDaoImpl" singleton="false"/>
<dao name="ServiceOffering configuration server" class="com.cloud.service.dao.ServiceOfferingDaoImpl" singleton="false"/>
<dao name="host zone configuration server" class="com.cloud.dc.dao.DataCenterDaoImpl" singleton="false"/>
<dao name="host pod configuration server" class="com.cloud.dc.dao.HostPodDaoImpl" singleton="false"/>
<dao name="DomainDao" class="com.cloud.domain.dao.DomainDaoImpl" singleton="false"/>
<dao name="NetworkOfferingDao" class="com.cloud.offerings.dao.NetworkOfferingDaoImpl" singleton="false"/>
<dao name="DataCenterDao" class="com.cloud.dc.dao.DataCenterDaoImpl" singleton="false"/>
<dao name="NetworkDao" class="com.cloud.network.dao.NetworkDaoImpl" singleton="false"/>
<dao name="IpAddressDao" class="com.cloud.network.dao.IPAddressDaoImpl" singleton="false"/>
<dao name="VlanDao" class="com.cloud.dc.dao.VlanDaoImpl" singleton="false"/>
<dao name="ResouceCountDao" class="com.cloud.configuration.dao.ResourceCountDaoImpl" singleton="false"/>
<dao name="AccountDao" class="com.cloud.user.dao.AccountDaoImpl" singleton="false"/>
<dao name="UserDao" class="com.cloud.user.dao.UserDaoImpl" singleton="false"/>
<dao name="NetworkOfferingServiceDao" class="com.cloud.offerings.dao.NetworkOfferingServiceMapDaoImpl" singleton="false"/>
<dao name="VirtualRouterProviderDao" class="com.cloud.network.dao.VirtualRouterProviderDaoImpl" singleton="false"/>
<dao name="IdentityDao" class="com.cloud.uuididentity.dao.IdentityDaoImpl" singleton="false"/>
<dao name="Site2SiteCustomerGatewayDao" class="com.cloud.network.dao.Site2SiteCustomerGatewayDaoImpl" singleton="false"/>
<dao name="Site2SiteVpnGatewayDao" class="com.cloud.network.dao.Site2SiteVpnGatewayDaoImpl" singleton="false"/>
<dao name="Site2SiteVpnConnectionDao" class="com.cloud.network.dao.Site2SiteVpnConnectionDaoImpl" singleton="false"/>
</configuration-server>
</components.xml>