Add basic Mocks for some managers

This commit is contained in:
Chiradeep Vittal 2011-08-23 23:26:52 -07:00
parent abf4754503
commit 2fc782b8ba
7 changed files with 1716 additions and 2 deletions

View File

@ -22,6 +22,7 @@ import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
import com.cloud.agent.api.SecurityIngressRulesCmd;
@ -36,6 +37,7 @@ import com.cloud.vm.VirtualMachine.State;
* Same as the base class -- except it uses the abstracted security group work queue
*
*/
@Local(value={ SecurityGroupManager.class, SecurityGroupService.class })
public class SecurityGroupManagerImpl2 extends SecurityGroupManagerImpl {
SecurityGroupWorkQueue _workQueue = new LocalSecurityGroupWorkQueue();
@ -73,8 +75,6 @@ public class SecurityGroupManagerImpl2 extends SecurityGroupManagerImpl {
_rulesetLogDao.createOrUpdate(workItems);
txn.commit();
_workQueue.submitWorkForVms(workItems);
notifyAll();
}
@Override

View File

@ -0,0 +1,269 @@
package com.cloud.agent;
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.Answer;
import com.cloud.agent.api.Command;
import com.cloud.agent.manager.AgentAttache;
import com.cloud.agent.manager.Commands;
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.OperationTimedoutException;
import com.cloud.host.Host;
import com.cloud.host.Host.Type;
import com.cloud.host.HostStats;
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.service.ServiceOfferingVO;
import com.cloud.template.VirtualMachineTemplate;
import com.cloud.user.User;
import com.cloud.utils.Pair;
@Local(value = { AgentManager.class })
public class MockAgentManagerImpl implements AgentManager {
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
// TODO Auto-generated method stub
return true;
}
@Override
public boolean start() {
return true;
}
@Override
public boolean stop() {
// TODO Auto-generated method stub
return false;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return null;
}
@Override
public Answer easySend(Long hostId, Command cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public Answer send(Long hostId, Command cmd, int timeout) throws AgentUnavailableException, OperationTimedoutException {
// TODO Auto-generated method stub
return null;
}
@Override
public Answer send(Long hostId, Command cmd) throws AgentUnavailableException, OperationTimedoutException {
// TODO Auto-generated method stub
return null;
}
@Override
public Answer[] send(Long hostId, Commands cmds) throws AgentUnavailableException, OperationTimedoutException {
// TODO Auto-generated method stub
return null;
}
@Override
public Answer[] send(Long hostId, Commands cmds, int timeout) throws AgentUnavailableException, OperationTimedoutException {
// TODO Auto-generated method stub
return null;
}
@Override
public long gatherStats(Long hostId, Command cmd, Listener listener) {
// TODO Auto-generated method stub
return 0;
}
@Override
public long send(Long hostId, Commands cmds, Listener listener) throws AgentUnavailableException {
// TODO Auto-generated method stub
return 0;
}
@Override
public int registerForHostEvents(Listener listener, boolean connections, boolean commands, boolean priority) {
// TODO Auto-generated method stub
return 0;
}
@Override
public int registerForInitialConnects(StartupCommandProcessor creator, boolean priority) {
// TODO Auto-generated method stub
return 0;
}
@Override
public void unregisterForHostEvents(int id) {
// TODO Auto-generated method stub
}
@Override
public Set<Long> getConnectedHosts() {
// TODO Auto-generated method stub
return null;
}
@Override
public void disconnect(long hostId, Event event, boolean investigate) {
// TODO Auto-generated method stub
}
@Override
public HostStats getHostStatistics(long hostId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Long getGuestOSCategoryId(long hostId) {
// TODO Auto-generated method stub
return null;
}
@Override
public String getHostTags(long hostId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<PodCluster> listByDataCenter(long dcId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<PodCluster> listByPod(long podId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Host addHost(long zoneId, ServerResource resource, Type hostType, Map<String, String> hostDetails) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean deleteHost(long hostId, boolean isForced, boolean forceDestroy, User caller) {
// TODO Auto-generated method stub
return false;
}
@Override
public Pair<HostPodVO, Long> findPod(VirtualMachineTemplate template, ServiceOfferingVO offering, DataCenterVO dc, long userId, Set<Long> avoids) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean maintain(long hostId) throws AgentUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean maintenanceFailed(long hostId) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean cancelMaintenance(long hostId) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean executeUserRequest(long hostId, Event event) throws AgentUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean reconnect(long hostId) throws AgentUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public Answer easySend(Long hostId, Command cmd, int timeout) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean isHostNativeHAEnabled(long hostId) {
// TODO Auto-generated method stub
return false;
}
@Override
public Answer sendTo(Long dcId, HypervisorType type, Command cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public void notifyAnswersToMonitors(long agentId, long seq, Answer[] answers) {
// TODO Auto-generated method stub
}
@Override
public AgentAttache simulateStart(Long id, ServerResource resource, Map<String, String> details, boolean old, List<String> hostTags, String allocationState, boolean forRebalance)
throws IllegalArgumentException {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean updateHostPassword(UpdateHostPasswordCmd upasscmd) {
// TODO Auto-generated method stub
return false;
}
@Override
public long sendToSecStorage(HostVO ssHost, Command cmd, Listener listener) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Answer sendToSecStorage(HostVO ssHost, Command cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public HostVO getSSAgent(HostVO ssHost) {
// TODO Auto-generated method stub
return null;
}
@Override
public void updateStatus(HostVO host, Event event) {
// TODO Auto-generated method stub
}
}

View File

@ -0,0 +1,459 @@
package com.cloud.network;
import java.util.List;
import java.util.Map;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
import com.cloud.api.commands.AssociateIPAddrCmd;
import com.cloud.api.commands.CreateNetworkCmd;
import com.cloud.api.commands.DisassociateIPAddrCmd;
import com.cloud.api.commands.ListNetworksCmd;
import com.cloud.api.commands.RestartNetworkCmd;
import com.cloud.dc.Vlan;
import com.cloud.dc.Vlan.VlanType;
import com.cloud.deploy.DeployDestination;
import com.cloud.deploy.DeploymentPlan;
import com.cloud.exception.ConcurrentOperationException;
import com.cloud.exception.InsufficientAddressCapacityException;
import com.cloud.exception.InsufficientCapacityException;
import com.cloud.exception.ResourceAllocationException;
import com.cloud.exception.ResourceUnavailableException;
import com.cloud.network.Network.Capability;
import com.cloud.network.Network.GuestIpType;
import com.cloud.network.Network.Service;
import com.cloud.network.Networks.TrafficType;
import com.cloud.network.addr.PublicIp;
import com.cloud.network.guru.NetworkGuru;
import com.cloud.network.rules.FirewallRule;
import com.cloud.network.vpn.PasswordResetElement;
import com.cloud.offering.NetworkOffering;
import com.cloud.offerings.NetworkOfferingVO;
import com.cloud.user.Account;
import com.cloud.user.AccountVO;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
import com.cloud.vm.Nic;
import com.cloud.vm.NicProfile;
import com.cloud.vm.ReservationContext;
import com.cloud.vm.VMInstanceVO;
import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachineProfile;
@Local(value = { NetworkManager.class, NetworkService.class })
public class MockNetworkManagerImpl implements NetworkManager, Manager, NetworkService {
@Override
public List<? extends Network> getVirtualNetworksOwnedByAccountInZone(String accountName, long domainId, long zoneId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends NetworkOffering> listNetworkOfferings() {
// TODO Auto-generated method stub
return null;
}
@Override
public IpAddress allocateIP(AssociateIPAddrCmd cmd) throws ResourceAllocationException, InsufficientAddressCapacityException, ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
@Override
public IpAddress associateIP(AssociateIPAddrCmd cmd) throws ResourceAllocationException, InsufficientAddressCapacityException, ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean disassociateIpAddress(DisassociateIPAddrCmd cmd) {
// TODO Auto-generated method stub
return false;
}
@Override
public Network createNetwork(CreateNetworkCmd cmd) throws InsufficientCapacityException, ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends Network> searchForNetworks(ListNetworksCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean deleteNetwork(long networkId) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean restartNetwork(RestartNetworkCmd cmd) throws ConcurrentOperationException, ResourceUnavailableException, InsufficientCapacityException {
// TODO Auto-generated method stub
return false;
}
@Override
public int getActiveNicsInNetwork(long networkId) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Network getNetwork(long networkId) {
// TODO Auto-generated method stub
return null;
}
@Override
public IpAddress getIp(long id) {
// TODO Auto-generated method stub
return null;
}
@Override
public NetworkProfile convertNetworkToNetworkProfile(long networkId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Map<Service, Map<Capability, String>> getZoneCapabilities(long zoneId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Map<Service, Map<Capability, String>> getNetworkCapabilities(long networkId, long zoneId) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean isNetworkAvailableInDomain(long networkId, long domainId) {
// TODO Auto-generated method stub
return false;
}
@Override
public Long getDedicatedNetworkDomain(long networkId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Network updateNetwork(long networkId, String name, String displayText, List<String> tags, Account caller, String domainSuffix) {
// TODO Auto-generated method stub
return null;
}
@Override
public Integer getNetworkRate(long networkId, Long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Network getSystemNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
return true;
}
@Override
public boolean start() {
return true;
}
@Override
public boolean stop() {
// TODO Auto-generated method stub
return false;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return null;
}
@Override
public PublicIp assignPublicIpAddress(long dcId, Long podId, Account owner, VlanType type, Long networkId) throws InsufficientAddressCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public PublicIp assignSourceNatIpAddress(Account owner, Network network, long callerId) throws ConcurrentOperationException, InsufficientAddressCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean releasePublicIpAddress(long id, long userId, Account caller) {
// TODO Auto-generated method stub
return false;
}
@Override
public List<IPAddressVO> listPublicIpAddressesInVirtualNetwork(long accountId, long dcId, Boolean sourceNat, Long associatedNetworkId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<NetworkVO> setupNetwork(Account owner, NetworkOfferingVO offering, DeploymentPlan plan, String name, String displayText, boolean isShared, boolean isDefault)
throws ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
@Override
public List<NetworkVO> setupNetwork(Account owner, NetworkOfferingVO offering, Network predefined, DeploymentPlan plan, String name, String displayText, boolean isShared, boolean isDefault,
boolean errorIfAlreadySetup, Long domainId, List<String> tags) throws ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
@Override
public List<NetworkOfferingVO> getSystemAccountNetworkOfferings(String... offeringNames) {
// TODO Auto-generated method stub
return null;
}
@Override
public void allocate(VirtualMachineProfile<? extends VMInstanceVO> vm, List<Pair<NetworkVO, NicProfile>> networks) throws InsufficientCapacityException, ConcurrentOperationException {
// TODO Auto-generated method stub
}
@Override
public void prepare(VirtualMachineProfile<? extends VMInstanceVO> profile, DeployDestination dest, ReservationContext context) throws InsufficientCapacityException, ConcurrentOperationException,
ResourceUnavailableException {
// TODO Auto-generated method stub
}
@Override
public void release(VirtualMachineProfile<? extends VMInstanceVO> vmProfile, boolean forced) {
// TODO Auto-generated method stub
}
@Override
public void cleanupNics(VirtualMachineProfile<? extends VMInstanceVO> vm) {
// TODO Auto-generated method stub
}
@Override
public void expungeNics(VirtualMachineProfile<? extends VMInstanceVO> vm) {
// TODO Auto-generated method stub
}
@Override
public List<? extends Nic> getNics(long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends Nic> getNicsIncludingRemoved(VirtualMachine vm) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<NicProfile> getNicProfiles(VirtualMachine vm) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<AccountVO> getAccountsUsingNetwork(long configurationId) {
// TODO Auto-generated method stub
return null;
}
@Override
public AccountVO getNetworkOwner(long configurationId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<NetworkVO> getNetworksforOffering(long offeringId, long dataCenterId, long accountId) {
// TODO Auto-generated method stub
return null;
}
@Override
public String getNextAvailableMacAddressInNetwork(long networkConfigurationId) throws InsufficientAddressCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean applyRules(List<? extends FirewallRule> rules, boolean continueOnError) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public PublicIpAddress getPublicIpAddress(long ipAddressId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends Vlan> listPodVlans(long podId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Pair<NetworkGuru, NetworkVO> implementNetwork(long networkId, DeployDestination dest, ReservationContext context) throws ConcurrentOperationException, ResourceUnavailableException,
InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public List<NetworkVO> listNetworksUsedByVm(long vmId, boolean isSystem) {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> void prepareNicForMigration(VirtualMachineProfile<T> vm, DeployDestination dest) {
// TODO Auto-generated method stub
}
@Override
public void shutdownNetwork(long networkId, ReservationContext context) {
// TODO Auto-generated method stub
}
@Override
public boolean destroyNetwork(long networkId, ReservationContext context) {
// TODO Auto-generated method stub
return false;
}
@Override
public Network createNetwork(long networkOfferingId, String name, String displayText, Boolean isShared, Boolean isDefault, Long zoneId, String gateway, String cidr, String vlanId,
String networkDomain, Account owner, boolean isSecurityGroupEnabled, Long domainId, List<String> tags) throws ConcurrentOperationException, InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean associateIpAddressListToAccount(long userId, long accountId, long zoneId, Long vlanId, Network networkToAssociateWith) throws InsufficientCapacityException,
ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public Nic getNicInNetwork(long vmId, long networkId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Nic getNicInNetworkIncludingRemoved(long vmId, long networkId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends Nic> getNicsForTraffic(long vmId, TrafficType type) {
// TODO Auto-generated method stub
return null;
}
@Override
public Network getDefaultNetworkForVm(long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Nic getDefaultNic(long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends PasswordResetElement> getPasswordResetElements() {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean zoneIsConfiguredForExternalNetworking(long zoneId) {
// TODO Auto-generated method stub
return false;
}
@Override
public Map<Capability, String> getServiceCapabilities(long zoneId, Long networkOfferingId, Service service) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean applyIpAssociations(Network network, boolean continueOnError) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isServiceSupported(long networkId, Service service) {
// TODO Auto-generated method stub
return false;
}
@Override
public NetworkVO getNetworkWithSecurityGroupEnabled(Long zoneId) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean startNetwork(long networkId, DeployDestination dest, ReservationContext context) throws ConcurrentOperationException, ResourceUnavailableException, InsufficientCapacityException {
// TODO Auto-generated method stub
return false;
}
@Override
public String getIpOfNetworkElementInVirtualNetwork(long accountId, long dataCenterId) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<NetworkVO> listNetworksForAccount(long accountId, long zoneId, GuestIpType guestType, Boolean isDefault) {
// TODO Auto-generated method stub
return null;
}
@Override
public IPAddressVO markIpAsUnavailable(long addrId) {
// TODO Auto-generated method stub
return null;
}
}

View File

@ -0,0 +1,83 @@
package com.cloud.network.security;
import java.util.ArrayList;
import java.util.List;
import junit.framework.TestCase;
import org.apache.log4j.Logger;
import org.junit.After;
import org.junit.Before;
import com.cloud.agent.MockAgentManagerImpl;
import com.cloud.configuration.DefaultInterceptorLibrary;
import com.cloud.configuration.dao.ConfigurationDaoImpl;
import com.cloud.domain.dao.DomainDaoImpl;
import com.cloud.network.MockNetworkManagerImpl;
import com.cloud.network.security.dao.IngressRuleDaoImpl;
import com.cloud.network.security.dao.SecurityGroupDaoImpl;
import com.cloud.network.security.dao.SecurityGroupRulesDaoImpl;
import com.cloud.network.security.dao.SecurityGroupVMMapDaoImpl;
import com.cloud.network.security.dao.SecurityGroupWorkDaoImpl;
import com.cloud.network.security.dao.VmRulesetLogDaoImpl;
import com.cloud.user.MockAccountManagerImpl;
import com.cloud.user.dao.AccountDaoImpl;
import com.cloud.utils.Profiler;
import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.component.MockComponentLocator;
import com.cloud.vm.MockUserVmManagerImpl;
import com.cloud.vm.MockVirtualMachineManagerImpl;
import com.cloud.vm.dao.UserVmDaoImpl;
import com.cloud.vm.dao.VMInstanceDaoImpl;
public class SecurityGroupManagerImpl2Test extends TestCase {
//private final static Logger s_logger = Logger.getLogger(SecurityGroupManagerImpl2Test.class);
@Override
@Before
public void setUp() {
MockComponentLocator locator = new MockComponentLocator("management-server");
locator.addDao("ConfigurationDao", ConfigurationDaoImpl.class);
locator.addDao("SecurityGroupDao", SecurityGroupDaoImpl.class);
locator.addDao("IngressRuleDao", IngressRuleDaoImpl.class);
locator.addDao("SecurityGroupVMMapDao", SecurityGroupVMMapDaoImpl.class);
locator.addDao("SecurityGroupRulesDao", SecurityGroupRulesDaoImpl.class);
locator.addDao("UserVmDao", UserVmDaoImpl.class);
locator.addDao("AccountDao", AccountDaoImpl.class);
locator.addDao("ConfigurationDao", ConfigurationDaoImpl.class);
locator.addDao("SecurityGroupWorkDao", SecurityGroupWorkDaoImpl.class);
locator.addDao("VmRulesetLogDao", VmRulesetLogDaoImpl.class);
locator.addDao("VMInstanceDao", VMInstanceDaoImpl.class);
locator.addDao("DomainDao", DomainDaoImpl.class);
locator.addManager("AgentManager", MockAgentManagerImpl.class);
locator.addManager("VirtualMachineManager", MockVirtualMachineManagerImpl.class);
locator.addManager("UserVmManager", MockUserVmManagerImpl.class);
locator.addManager("NetworkManager", MockNetworkManagerImpl.class);
locator.addManager("AccountManager", MockAccountManagerImpl.class);
locator.makeActive(new DefaultInterceptorLibrary());
}
@Override
@After
public void tearDown() throws Exception {
}
public void testSchedule() {
final int numVms = 100000;
System.out.println("Starting");
ComponentLocator locator = ComponentLocator.getCurrentLocator();
SecurityGroupManagerImpl2 sgMgr = ComponentLocator.inject(SecurityGroupManagerImpl2.class);
List<Long> work = new ArrayList<Long>();
for (long i=100; i <= numVms; i++) {
work.add(i);
}
Profiler profiler = new Profiler();
profiler.start();
sgMgr.scheduleRulesetUpdateToHosts(work, false, null);
profiler.stop();
System.out.println("Done " + numVms + " in " + profiler.getDuration() + " ms");
}
}

View File

@ -0,0 +1,340 @@
package com.cloud.user;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
import com.cloud.acl.ControlledEntity;
import com.cloud.api.commands.CreateAccountCmd;
import com.cloud.api.commands.CreateUserCmd;
import com.cloud.api.commands.DeleteAccountCmd;
import com.cloud.api.commands.DeleteUserCmd;
import com.cloud.api.commands.DisableAccountCmd;
import com.cloud.api.commands.DisableUserCmd;
import com.cloud.api.commands.EnableAccountCmd;
import com.cloud.api.commands.EnableUserCmd;
import com.cloud.api.commands.ListResourceLimitsCmd;
import com.cloud.api.commands.LockUserCmd;
import com.cloud.api.commands.UpdateAccountCmd;
import com.cloud.api.commands.UpdateResourceCountCmd;
import com.cloud.api.commands.UpdateResourceLimitCmd;
import com.cloud.api.commands.UpdateUserCmd;
import com.cloud.configuration.ResourceCount;
import com.cloud.configuration.ResourceLimit;
import com.cloud.configuration.ResourceLimitVO;
import com.cloud.configuration.ResourceCount.ResourceType;
import com.cloud.domain.Domain;
import com.cloud.domain.DomainVO;
import com.cloud.exception.ConcurrentOperationException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.exception.ResourceUnavailableException;
import com.cloud.server.Criteria;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;
@Local(value = { AccountManager.class, AccountService.class })
public class MockAccountManagerImpl implements Manager, AccountManager {
@Override
public UserAccount createAccount(CreateAccountCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean deleteUserAccount(DeleteAccountCmd cmd) {
// TODO Auto-generated method stub
return false;
}
@Override
public UserAccount disableUser(DisableUserCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserAccount enableUser(EnableUserCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserAccount lockUser(LockUserCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserAccount updateUser(UpdateUserCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public Account disableAccount(DisableAccountCmd cmd) throws ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
@Override
public Account enableAccount(EnableAccountCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public Account lockAccount(DisableAccountCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public Account updateAccount(UpdateAccountCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public ResourceLimit updateResourceLimit(UpdateResourceLimitCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends ResourceCount> updateResourceCount(UpdateResourceCountCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends ResourceLimit> searchForLimits(ListResourceLimitsCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public Account getSystemAccount() {
// TODO Auto-generated method stub
return null;
}
@Override
public User getSystemUser() {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean deleteUser(DeleteUserCmd deleteUserCmd) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isAdmin(short accountType) {
// TODO Auto-generated method stub
return false;
}
@Override
public Account finalizeOwner(Account caller, String accountName, Long domainId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Pair<String, Long> finalizeAccountDomainForList(Account caller, String accountName, Long domainId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Account getActiveAccount(String accountName, Long domainId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Account getActiveAccount(Long accountId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Account getAccount(Long accountId) {
// TODO Auto-generated method stub
return null;
}
@Override
public User getActiveUser(long userId) {
// TODO Auto-generated method stub
return null;
}
@Override
public User getUser(long userId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Domain getDomain(long id) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean isRootAdmin(short accountType) {
// TODO Auto-generated method stub
return false;
}
@Override
public User getActiveUserByRegistrationToken(String registrationToken) {
// TODO Auto-generated method stub
return null;
}
@Override
public void markUserRegistered(long userId) {
// TODO Auto-generated method stub
}
@Override
public Set<Long> getDomainParentIds(long domainId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Set<Long> getDomainChildrenIds(String parentDomainPath) {
// TODO Auto-generated method stub
return null;
}
@Override
public long findCorrectResourceLimit(AccountVO account, ResourceType type) {
// TODO Auto-generated method stub
return 0;
}
@Override
public long findCorrectResourceLimit(DomainVO domain, ResourceType type) {
// TODO Auto-generated method stub
return 0;
}
@Override
public long updateAccountResourceCount(long accountId, ResourceType type) {
// TODO Auto-generated method stub
return 0;
}
@Override
public long updateDomainResourceCount(long domainId, ResourceType type) {
// TODO Auto-generated method stub
return 0;
}
@Override
public void incrementResourceCount(long accountId, ResourceType type, Long... delta) {
// TODO Auto-generated method stub
}
@Override
public void decrementResourceCount(long accountId, ResourceType type, Long... delta) {
// TODO Auto-generated method stub
}
@Override
public boolean resourceLimitExceeded(Account account, ResourceType type, long... count) {
// TODO Auto-generated method stub
return false;
}
@Override
public long getResourceCount(AccountVO account, ResourceType type) {
// TODO Auto-generated method stub
return 0;
}
@Override
public List<ResourceLimitVO> searchForLimits(Criteria c) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean disableAccount(long accountId) throws ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean deleteAccount(AccountVO account, long callerUserId, Account caller) {
// TODO Auto-generated method stub
return false;
}
@Override
public void checkAccess(Account account, Domain domain) throws PermissionDeniedException {
// TODO Auto-generated method stub
}
@Override
public void checkAccess(Account account, ControlledEntity... entities) throws PermissionDeniedException {
// TODO Auto-generated method stub
}
@Override
public boolean cleanupAccount(AccountVO account, long callerUserId, Account caller) {
// TODO Auto-generated method stub
return false;
}
@Override
public UserVO createUser(CreateUserCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public Long checkAccessAndSpecifyAuthority(Account caller, Long zoneId) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
return true;
}
@Override
public boolean start() {
return true;
}
@Override
public boolean stop() {
// TODO Auto-generated method stub
return false;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return null;
}
}

View File

@ -0,0 +1,368 @@
package com.cloud.vm;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
import com.cloud.agent.api.StopAnswer;
import com.cloud.agent.api.VmStatsEntry;
import com.cloud.agent.manager.Commands;
import com.cloud.api.commands.AttachVolumeCmd;
import com.cloud.api.commands.CreateTemplateCmd;
import com.cloud.api.commands.CreateVMGroupCmd;
import com.cloud.api.commands.DeleteVMGroupCmd;
import com.cloud.api.commands.DeployVMCmd;
import com.cloud.api.commands.DestroyVMCmd;
import com.cloud.api.commands.DetachVolumeCmd;
import com.cloud.api.commands.ListVMsCmd;
import com.cloud.api.commands.RebootVMCmd;
import com.cloud.api.commands.RecoverVMCmd;
import com.cloud.api.commands.ResetVMPasswordCmd;
import com.cloud.api.commands.StartVMCmd;
import com.cloud.api.commands.UpdateVMCmd;
import com.cloud.api.commands.UpgradeVMCmd;
import com.cloud.dc.DataCenter;
import com.cloud.deploy.DeployDestination;
import com.cloud.exception.ConcurrentOperationException;
import com.cloud.exception.InsufficientCapacityException;
import com.cloud.exception.ManagementServerException;
import com.cloud.exception.ResourceAllocationException;
import com.cloud.exception.ResourceUnavailableException;
import com.cloud.exception.StorageUnavailableException;
import com.cloud.exception.VirtualMachineMigrationException;
import com.cloud.host.Host;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.offering.ServiceOffering;
import com.cloud.server.Criteria;
import com.cloud.storage.Volume;
import com.cloud.template.VirtualMachineTemplate;
import com.cloud.user.Account;
import com.cloud.uservm.UserVm;
import com.cloud.utils.component.Manager;
import com.cloud.utils.exception.ExecutionException;
@Local(value = { UserVmManager.class, UserVmService.class })
public class MockUserVmManagerImpl implements UserVmManager, UserVmService, Manager {
@Override
public UserVmVO findByName(String name) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVmVO findById(long id) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVmVO persist(UserVmVO vm) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean finalizeVirtualMachineProfile(VirtualMachineProfile<UserVmVO> profile, DeployDestination dest, ReservationContext context) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean finalizeDeployment(Commands cmds, VirtualMachineProfile<UserVmVO> profile, DeployDestination dest, ReservationContext context) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean finalizeStart(VirtualMachineProfile<UserVmVO> profile, long hostId, Commands cmds, ReservationContext context) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean finalizeCommandsOnStart(Commands cmds, VirtualMachineProfile<UserVmVO> profile) {
// TODO Auto-generated method stub
return false;
}
@Override
public void finalizeStop(VirtualMachineProfile<UserVmVO> profile, StopAnswer answer) {
// TODO Auto-generated method stub
}
@Override
public void finalizeExpunge(UserVmVO vm) {
// TODO Auto-generated method stub
}
@Override
public Long convertToId(String vmName) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<? extends UserVm> getVirtualMachines(long hostId) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVmVO getVirtualMachine(long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean attachISOToVM(long vmId, long isoId, boolean attach) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean stopVirtualMachine(long userId, long vmId) {
// TODO Auto-generated method stub
return false;
}
@Override
public HashMap<Long, VmStatsEntry> getVirtualMachineStatistics(long hostId, String hostName, List<Long> vmIds) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean deleteVmGroup(long groupId) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean addInstanceToGroup(long userVmId, String group) {
// TODO Auto-generated method stub
return false;
}
@Override
public InstanceGroupVO getGroupForVm(long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public void removeInstanceFromInstanceGroup(long vmId) {
// TODO Auto-generated method stub
}
@Override
public boolean expunge(UserVmVO vm, long callerUserId, Account caller) {
// TODO Auto-generated method stub
return false;
}
@Override
public List<UserVmVO> searchForUserVMs(Criteria c) {
// TODO Auto-generated method stub
return null;
}
@Override
public String getChecksum(Long hostId, String templatePath) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
return true;
}
@Override
public boolean start() {
return true;
}
@Override
public boolean stop() {
// TODO Auto-generated method stub
return false;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm destroyVm(DestroyVMCmd cmd) throws ResourceUnavailableException, ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm destroyVm(long vmId) throws ResourceUnavailableException, ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm resetVMPassword(ResetVMPasswordCmd cmd, String password) throws ResourceUnavailableException, InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public Volume attachVolumeToVM(AttachVolumeCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public Volume detachVolumeFromVM(DetachVolumeCmd cmmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm startVirtualMachine(StartVMCmd cmd) throws StorageUnavailableException, ExecutionException, ConcurrentOperationException, ResourceUnavailableException,
InsufficientCapacityException, ResourceAllocationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm rebootVirtualMachine(RebootVMCmd cmd) throws InsufficientCapacityException, ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm updateVirtualMachine(UpdateVMCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm recoverVirtualMachine(RecoverVMCmd cmd) throws ResourceAllocationException {
// TODO Auto-generated method stub
return null;
}
@Override
public VirtualMachineTemplate createPrivateTemplateRecord(CreateTemplateCmd cmd) throws ResourceAllocationException {
// TODO Auto-generated method stub
return null;
}
@Override
public VirtualMachineTemplate createPrivateTemplate(CreateTemplateCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm createBasicSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List<Long> securityGroupIdList, Account owner,
String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, String sshKeyPair) throws InsufficientCapacityException,
ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm createAdvancedSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List<Long> networkIdList,
List<Long> securityGroupIdList, Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData,
String sshKeyPair) throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm createAdvancedVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List<Long> networkIdList, Account owner, String hostName,
String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, String sshKeyPair) throws InsufficientCapacityException,
ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm startVirtualMachine(DeployVMCmd cmd) throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
@Override
public InstanceGroup createVmGroup(CreateVMGroupCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean deleteVmGroup(DeleteVMGroupCmd cmd) {
// TODO Auto-generated method stub
return false;
}
@Override
public UserVm upgradeVirtualMachine(UpgradeVMCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm stopVirtualMachine(long vmId, boolean forced) throws ConcurrentOperationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm startVirtualMachine(long vmId) throws ConcurrentOperationException, ResourceUnavailableException, InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public void deletePrivateTemplateRecord(Long templateId) {
// TODO Auto-generated method stub
}
@Override
public List<? extends UserVm> searchForUserVMs(ListVMsCmd cmd) {
// TODO Auto-generated method stub
return null;
}
@Override
public HypervisorType getHypervisorTypeOfUserVM(long vmid) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm createVirtualMachine(DeployVMCmd cmd) throws InsufficientCapacityException, ResourceUnavailableException, ConcurrentOperationException, StorageUnavailableException,
ResourceAllocationException {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm getUserVm(long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public UserVm migrateVirtualMachine(UserVm vm, Host destinationHost) throws ResourceUnavailableException, ConcurrentOperationException, ManagementServerException, VirtualMachineMigrationException {
// TODO Auto-generated method stub
return null;
}
}

View File

@ -0,0 +1,195 @@
package com.cloud.vm;
import java.util.List;
import java.util.Map;
import javax.ejb.Local;
import javax.naming.ConfigurationException;
import com.cloud.deploy.DeployDestination;
import com.cloud.deploy.DeploymentPlan;
import com.cloud.exception.AgentUnavailableException;
import com.cloud.exception.ConcurrentOperationException;
import com.cloud.exception.InsufficientCapacityException;
import com.cloud.exception.InsufficientServerCapacityException;
import com.cloud.exception.ManagementServerException;
import com.cloud.exception.OperationTimedoutException;
import com.cloud.exception.ResourceUnavailableException;
import com.cloud.exception.VirtualMachineMigrationException;
import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.network.NetworkVO;
import com.cloud.offering.ServiceOffering;
import com.cloud.service.ServiceOfferingVO;
import com.cloud.storage.DiskOfferingVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.uservm.UserVm;
import com.cloud.utils.Pair;
import com.cloud.utils.fsm.NoTransitionException;
import com.cloud.vm.VirtualMachine.Event;
import com.cloud.vm.VirtualMachine.Type;
import com.cloud.vm.VirtualMachineProfile.Param;
@Local(value = VirtualMachineManager.class)
public class MockVirtualMachineManagerImpl implements VirtualMachineManager {
@Override
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
return true;
}
@Override
public boolean start() {
return true;
}
@Override
public boolean stop() {
// TODO Auto-generated method stub
return false;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T allocate(T vm, VMTemplateVO template, ServiceOfferingVO serviceOffering, Pair<? extends DiskOfferingVO, Long> rootDiskOffering,
List<Pair<DiskOfferingVO, Long>> dataDiskOfferings, List<Pair<NetworkVO, NicProfile>> networks, Map<Param, Object> params, DeploymentPlan plan, HypervisorType hyperType, Account owner)
throws InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T allocate(T vm, VMTemplateVO template, ServiceOfferingVO serviceOffering, Long rootSize, Pair<DiskOfferingVO, Long> dataDiskOffering,
List<Pair<NetworkVO, NicProfile>> networks, DeploymentPlan plan, HypervisorType hyperType, Account owner) throws InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T allocate(T vm, VMTemplateVO template, ServiceOfferingVO serviceOffering, List<Pair<NetworkVO, NicProfile>> networkProfiles, DeploymentPlan plan,
HypervisorType hyperType, Account owner) throws InsufficientCapacityException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T start(T vm, Map<Param, Object> params, User caller, Account account) throws InsufficientCapacityException, ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T start(T vm, Map<Param, Object> params, User caller, Account account, DeploymentPlan planToDeploy) throws InsufficientCapacityException,
ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> boolean stop(T vm, User caller, Account account) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public <T extends VMInstanceVO> boolean expunge(T vm, User caller, Account account) throws ResourceUnavailableException {
// TODO Auto-generated method stub
return false;
}
@Override
public <T extends VMInstanceVO> void registerGuru(Type type, VirtualMachineGuru<T> guru) {
// TODO Auto-generated method stub
}
@Override
public boolean stateTransitTo(VMInstanceVO vm, Event e, Long hostId) throws NoTransitionException {
// TODO Auto-generated method stub
return false;
}
@Override
public <T extends VMInstanceVO> T advanceStart(T vm, Map<Param, Object> params, User caller, Account account) throws InsufficientCapacityException, ResourceUnavailableException,
ConcurrentOperationException, OperationTimedoutException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T advanceStart(T vm, Map<Param, Object> params, User caller, Account account, DeploymentPlan planToDeploy) throws InsufficientCapacityException,
ResourceUnavailableException, ConcurrentOperationException, OperationTimedoutException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> boolean advanceStop(T vm, boolean forced, User caller, Account account) throws ResourceUnavailableException, OperationTimedoutException,
ConcurrentOperationException {
// TODO Auto-generated method stub
return false;
}
@Override
public <T extends VMInstanceVO> boolean advanceExpunge(T vm, User caller, Account account) throws ResourceUnavailableException, OperationTimedoutException, ConcurrentOperationException {
// TODO Auto-generated method stub
return false;
}
@Override
public <T extends VMInstanceVO> boolean remove(T vm, User caller, Account account) {
// TODO Auto-generated method stub
return false;
}
@Override
public <T extends VMInstanceVO> boolean destroy(T vm, User caller, Account account) throws AgentUnavailableException, OperationTimedoutException, ConcurrentOperationException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean migrateAway(Type type, long vmid, long hostId) throws InsufficientServerCapacityException, VirtualMachineMigrationException {
// TODO Auto-generated method stub
return false;
}
@Override
public <T extends VMInstanceVO> T migrate(T vm, long srcHostId, DeployDestination dest) throws ResourceUnavailableException, ConcurrentOperationException, ManagementServerException,
VirtualMachineMigrationException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T reboot(T vm, Map<Param, Object> params, User caller, Account account) throws InsufficientCapacityException, ResourceUnavailableException {
// TODO Auto-generated method stub
return null;
}
@Override
public <T extends VMInstanceVO> T advanceReboot(T vm, Map<Param, Object> params, User caller, Account account) throws InsufficientCapacityException, ResourceUnavailableException,
ConcurrentOperationException, OperationTimedoutException {
// TODO Auto-generated method stub
return null;
}
@Override
public VMInstanceVO findById(Type type, long vmId) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean isVirtualMachineUpgradable(UserVm vm, ServiceOffering offering) {
// TODO Auto-generated method stub
return false;
}
}