This commit is contained in:
Alex Huang 2010-08-18 12:19:22 -07:00
parent d202ce4c7a
commit b250b985ec
101 changed files with 561 additions and 504 deletions

View File

@ -28,8 +28,8 @@ import org.apache.log4j.Logger;
import com.cloud.resource.DiskPreparer;
import com.cloud.storage.Volume;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.VirtualMachineTemplate.BootloaderType;
import com.cloud.storage.Volume.VolumeType;
import com.cloud.template.VirtualMachineTemplate.BootloaderType;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.script.Script;

View File

@ -17,12 +17,13 @@
*/
package com.cloud.deploy;
public class DataCenterDeployment implements DeploymentStrategy {
public class DataCenterDeployment implements DeploymentPlan {
long _dcId;
public DataCenterDeployment(long dataCenterId) {
_dcId = dataCenterId;
}
@Override
public long getDataCenterId() {
return _dcId;
}

View File

@ -21,6 +21,7 @@ package com.cloud.deploy;
* Describes how a VM should be deployed.
*
*/
public interface DeploymentStrategy {
public interface DeploymentPlan {
public long getDataCenterId();
}

View File

@ -17,8 +17,12 @@
*/
package com.cloud.storage;
import com.cloud.domain.PartOf;
import com.cloud.template.BasedOn;
import com.cloud.user.OwnedBy;
public interface Volume {
public interface Volume extends PartOf, OwnedBy, BasedOn {
enum VolumeType {UNKNOWN, ROOT, SWAP, DATADISK};
enum MirrorState {NOT_MIRRORED, ACTIVE, DEFUNCT};
@ -38,16 +42,6 @@ public interface Volume {
*/
String getName();
/**
* @return owner's account id
*/
long getAccountId();
/**
* @return id of the owning account's domain
*/
long getDomainId();
/**
* @return total size of the partition
*/

View File

@ -15,12 +15,11 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
package com.cloud.storage;
package com.cloud.template;
import com.cloud.async.AsyncInstanceCreateStatus;
import com.cloud.storage.Storage.FileSystem;
public interface VirtualMachineTemplate {
public interface VirtualMachineTemplate {
public static enum BootloaderType { PyGrub, HVM, External };

View File

@ -20,7 +20,22 @@ package com.cloud.user;
import java.util.Date;
public interface Account {
import com.cloud.domain.PartOf;
public interface Account extends PartOf {
public enum Type {
Normal,
Admin,
DomainAdmin,
CustomerCare
}
public enum State {
Disabled,
Enabled,
Locked
}
public static final short ACCOUNT_TYPE_NORMAL = 0;
public static final short ACCOUNT_TYPE_ADMIN = 1;
public static final short ACCOUNT_TYPE_DOMAIN_ADMIN = 2;
@ -32,14 +47,12 @@ public interface Account {
public static final long ACCOUNT_ID_SYSTEM = 1;
public Long getId();
public long getId();
public String getAccountName();
public void setAccountName(String accountId);
public short getType();
public void setType(short type);
public String getState();
public void setState(String state);
public Long getDomainId();
public void setDomainId(Long domainId);
public long getDomainId();
public Date getRemoved();
}

View File

@ -17,12 +17,14 @@
*/
package com.cloud.uservm;
import com.cloud.domain.PartOf;
import com.cloud.user.OwnedBy;
import com.cloud.vm.VirtualMachine;
/**
* This represents one running virtual machine instance.
*/
public interface UserVm extends VirtualMachine {
public interface UserVm extends VirtualMachine, OwnedBy, PartOf {
/**
* @return service offering id
@ -39,11 +41,6 @@ public interface UserVm extends VirtualMachine {
*/
String getVnet();
/**
* @return the account this vm instance belongs to.
*/
long getAccountId();
/**
* @return the domain this vm instance belongs to.
*/

View File

@ -9,32 +9,14 @@ import com.cloud.network.Network.Mode;
public class NetworkCharacteristics {
long id;
BroadcastDomainType type;
String ip4Address;
String netmask;
String gateway;
String cidr;
Mode mode;
String[] dns;
long vmId;
public BroadcastDomainType getType() {
return type;
}
public String[] getDns() {
return dns;
}
public String getIp4Address() {
return ip4Address;
}
public String getNetmask() {
return netmask;
}
public String getGateway() {
return gateway;
}
public Mode getMode() {
return mode;
}
@ -42,17 +24,19 @@ public class NetworkCharacteristics {
public long getNetworkId() {
return id;
}
public long getVirtualMachineId() {
return vmId;
}
public NetworkCharacteristics() {
}
public NetworkCharacteristics(long id, BroadcastDomainType type, String ip4Address, String netmask, String gateway, Mode mode, String[] dns) {
public NetworkCharacteristics(long id, BroadcastDomainType type, String cidr, Mode mode, long vmId) {
this.id = id;
this.type = type;
this.ip4Address = ip4Address;
this.netmask = netmask;
this.gateway = gateway;
this.cidr = cidr;
this.mode = mode;
this.dns = dns;
this.vmId = vmId;
}
}

View File

@ -15,12 +15,13 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
package com.cloud.agent.api.to;
package com.cloud.vm;
/**
* Transfer object to transfer network settings.
*/
public class NetworkTO {
private String uuid;
private String ip;
private String netmask;
private String gateway;

View File

@ -23,6 +23,7 @@ package com.cloud.vm;
*/
public interface Nic {
enum State {
Allocated,
AcquireIp,
IpAcquired,
}
@ -47,4 +48,6 @@ public interface Nic {
* @return the vm instance id that this nic belongs to.
*/
long getInstanceId();
long getDeviceId();
}

View File

@ -23,7 +23,7 @@ import java.util.Date;
* VirtualMachine describes the properties held by a virtual machine
*
*/
public interface VirtualMachine {
public interface VirtualMachine extends RunningOn {
public enum Event {
CreateRequested,
StartRequested,
@ -100,11 +100,6 @@ public interface VirtualMachine {
*/
public long getDataCenterId();
/**
* @return id of the host it is running on. If not running, returns null.
*/
public Long getHostId();
/**
* @return id of the host it was assigned last time.
*/

View File

@ -1,3 +1,3 @@
#Build Number for ANT. Do not edit!
#Mon Aug 16 18:14:16 PDT 2010
build.number=32
#Wed Aug 18 11:29:13 PDT 2010
build.number=64

View File

@ -39,7 +39,7 @@ import com.cloud.offering.ServiceOffering;
import com.cloud.service.ServiceOfferingVO;
import com.cloud.storage.StoragePoolVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.VirtualMachineTemplate;
import com.cloud.template.VirtualMachineTemplate;
import com.cloud.uservm.UserVm;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Manager;

View File

@ -21,7 +21,7 @@ package com.cloud.agent.api;
import java.util.List;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.VirtualMachineTemplate.BootloaderType;
import com.cloud.template.VirtualMachineTemplate.BootloaderType;
public abstract class AbstractStartCommand extends Command {

View File

@ -18,6 +18,7 @@
package com.cloud.agent.api.to;
import com.cloud.host.HostVO;
import com.cloud.vm.NetworkTO;
public class HostTO {
private String guid;

View File

@ -17,6 +17,7 @@
*/
package com.cloud.agent.api.to;
import com.cloud.vm.NetworkTO;
import com.cloud.vm.VMInstanceVO;
public class VmTO {

View File

@ -25,9 +25,11 @@ import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import com.cloud.user.OwnedBy;
@Entity
@Table(name="account_vlan_map")
public class AccountVlanMapVO {
public class AccountVlanMapVO implements OwnedBy {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@ -52,7 +54,8 @@ public class AccountVlanMapVO {
public Long getId() {
return id;
}
@Override
public long getAccountId() {
return accountId;
}

View File

@ -18,26 +18,24 @@
package com.cloud.domain;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import com.cloud.utils.db.GenericDao;
@Entity
@Table(name="domain")
public class DomainVO {
public static final long ROOT_DOMAIN = 1L;
public class DomainVO implements Domain {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private Long id = null;
private long id;
@Column(name="parent")
private Long parent = null;
@ -46,13 +44,13 @@ public class DomainVO {
private String name = null;
@Column(name="owner")
private Long owner = null;
private long accountId;
@Column(name="path")
private String path = null;
@Column(name="level")
private Integer level = null;
private int level;
@Column(name=GenericDao.REMOVED_COLUMN)
private Date removed;
@ -65,15 +63,15 @@ public class DomainVO {
public DomainVO() {}
public DomainVO(String name, Long owner, Long parentId) {
public DomainVO(String name, long owner, Long parentId) {
this.parent = parentId;
this.name = name;
this.owner = owner;
this.accountId = owner;
this.path ="";
this.level = 0;
}
public Long getId() {
public long getId() {
return id;
}
@ -100,8 +98,8 @@ public class DomainVO {
this.name = name;
}
public Long getOwner() {
return owner;
public long getAccountId() {
return accountId;
}
public Date getRemoved() {
@ -116,11 +114,11 @@ public class DomainVO {
this.path = path;
}
public Integer getLevel() {
public int getLevel() {
return level;
}
public void setLevel(Integer level) {
public void setLevel(int level) {
this.level = level;
}

View File

@ -211,7 +211,7 @@ public class DomainDaoImpl extends GenericDaoBase<DomainVO, Long> implements Dom
DomainVO d1 = domainPair.get(0);
DomainVO d2 = domainPair.get(1);
if (d1.getId().equals(parentId)) {
if (d1.getId() == parentId) {
result = d2.getPath().startsWith(d1.getPath());
} else {
result = d1.getPath().startsWith(d2.getPath());

View File

@ -18,24 +18,27 @@
package com.cloud.network;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.SecondaryTable;
import javax.persistence.Table;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.SecondaryTable;
import javax.persistence.Table;
import com.cloud.domain.PartOf;
import com.cloud.user.OwnedBy;
@Entity
@Table(name=("security_group"))
@SecondaryTable(name="account",
pkJoinColumns={@PrimaryKeyJoinColumn(name="account_id", referencedColumnName="id")})
public class SecurityGroupVO {
public class SecurityGroupVO implements PartOf, OwnedBy {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private Long id;
private long id;
@Column(name="name")
private String name;
@ -44,24 +47,24 @@ public class SecurityGroupVO {
private String description;
@Column(name="domain_id")
private Long domainId;
private long domainId;
@Column(name="account_id")
private Long accountId;
private long accountId;
@Column(name="account_name", table="account", insertable=false, updatable=false)
private String accountName = null;
public SecurityGroupVO() {}
public SecurityGroupVO(String name, String description, Long domainId, Long accountId) {
public SecurityGroupVO(String name, String description, long domainId, long accountId) {
this.name = name;
this.description = description;
this.domainId = domainId;
this.accountId = accountId;
}
public Long getId() {
public long getId() {
return id;
}
@ -73,11 +76,11 @@ public class SecurityGroupVO {
return description;
}
public Long getDomainId() {
public long getDomainId() {
return domainId;
}
public Long getAccountId() {
public long getAccountId() {
return accountId;
}

View File

@ -18,22 +18,23 @@
package com.cloud.network.security;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.SecondaryTable;
import javax.persistence.Table;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import com.cloud.domain.PartOf;
import com.cloud.user.OwnedBy;
@Entity
@Table(name=("network_group"))
public class NetworkGroupVO {
public class NetworkGroupVO implements PartOf, OwnedBy {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private Long id;
private long id;
@Column(name="name")
private String name;
@ -42,17 +43,17 @@ public class NetworkGroupVO {
private String description;
@Column(name="domain_id")
private Long domainId;
private long domainId;
@Column(name="account_id")
private Long accountId;
private long accountId;
@Column(name="account_name")
private String accountName = null;
public NetworkGroupVO() {}
public NetworkGroupVO(String name, String description, Long domainId, Long accountId, String accountName) {
public NetworkGroupVO(String name, String description, long domainId, long accountId, String accountName) {
this.name = name;
this.description = description;
this.domainId = domainId;
@ -60,7 +61,7 @@ public class NetworkGroupVO {
this.accountName = accountName;
}
public Long getId() {
public long getId() {
return id;
}
@ -72,11 +73,11 @@ public class NetworkGroupVO {
return description;
}
public Long getDomainId() {
public long getDomainId() {
return domainId;
}
public Long getAccountId() {
public long getAccountId() {
return accountId;
}

View File

@ -18,7 +18,7 @@
package com.cloud.resource;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.VirtualMachineTemplate.BootloaderType;
import com.cloud.template.VirtualMachineTemplate.BootloaderType;
import com.cloud.utils.component.Adapter;
/**

View File

@ -29,15 +29,15 @@ import com.cloud.async.AsyncJobResult;
import com.cloud.async.AsyncJobVO;
import com.cloud.capacity.CapacityVO;
import com.cloud.configuration.ConfigurationVO;
import com.cloud.configuration.ResourceLimitVO;
import com.cloud.configuration.ResourceCount.ResourceType;
import com.cloud.configuration.ResourceLimitVO;
import com.cloud.dc.ClusterVO;
import com.cloud.dc.DataCenterIpAddressVO;
import com.cloud.dc.DataCenterVO;
import com.cloud.dc.HostPodVO;
import com.cloud.dc.VlanVO;
import com.cloud.dc.Vlan.VlanType;
import com.cloud.domain.DomainVO;
import com.cloud.dc.VlanVO;
import com.cloud.domain.Domain;
import com.cloud.event.EventVO;
import com.cloud.exception.ConcurrentOperationException;
import com.cloud.exception.DiscoveryException;
@ -72,7 +72,6 @@ import com.cloud.storage.Snapshot;
import com.cloud.storage.SnapshotPolicyVO;
import com.cloud.storage.SnapshotScheduleVO;
import com.cloud.storage.SnapshotVO;
import com.cloud.storage.StoragePoolHostVO;
import com.cloud.storage.StoragePoolVO;
import com.cloud.storage.StorageStats;
import com.cloud.storage.VMTemplateHostVO;
@ -1521,9 +1520,9 @@ public interface ManagementServer {
* in a Criteria object.
* @return list of domains owned by the given user
*/
List<DomainVO> searchForDomains(Criteria c);
List<? extends Domain> searchForDomains(Criteria c);
List<DomainVO> searchForDomainChildren(Criteria c);
List<? extends Domain> searchForDomainChildren(Criteria c);
/**
* create a new domain
@ -1533,7 +1532,7 @@ public interface ManagementServer {
* @param parentId
*
*/
DomainVO createDomain(String name, Long ownerId, Long parentId);
Domain createDomain(String name, Long ownerId, Long parentId);
/**
* delete a domain with the given domainId
@ -1560,14 +1559,14 @@ public interface ManagementServer {
* find the domain by id
* @param domainId the id of the domainId
*/
DomainVO findDomainIdById(Long domainId);
Domain findDomainIdById(Long domainId);
/**
* find the domain by its path
* @param domainPath the path to use to lookup a domain
* @return domainVO the domain with the matching path, or null if no domain with the given path exists
* @return Domain the domain with the matching path, or null if no domain with the given path exists
*/
DomainVO findDomainByPath(String domainPath);
Domain findDomainByPath(String domainPath);
/**
* Finds accounts with account identifiers similar to the parameter

View File

@ -37,6 +37,7 @@ import com.cloud.storage.Storage.ImageFormat;
import com.cloud.utils.db.GenericDao;
import com.google.gson.annotations.Expose;
import com.cloud.storage.Storage;
import com.cloud.template.VirtualMachineTemplate;
@Entity
@Table(name="vm_template")

View File

@ -185,7 +185,7 @@ public class VMTemplateDaoImpl extends GenericDaoBase<VMTemplateVO, Long> implem
String accountId = null;
if (account != null) {
accountType = account.getType();
accountId = account.getId().toString();
accountId = Long.toString(account.getId());
} else {
accountType = Account.ACCOUNT_TYPE_ADMIN;
}

View File

@ -18,15 +18,15 @@
package com.cloud.user;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import com.cloud.utils.db.GenericDao;
@Entity
@ -35,7 +35,7 @@ public class AccountVO implements Account {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
private Long id = null;
private long id;
@Column(name="account_name")
private String accountName = null;
@ -44,7 +44,7 @@ public class AccountVO implements Account {
private short type = ACCOUNT_TYPE_NORMAL;
@Column(name="domain_id")
private Long domainId = null;
private long domainId;
@Column(name="state")
private String state;
@ -56,7 +56,7 @@ public class AccountVO implements Account {
private boolean needsCleanup = false;
public AccountVO() {}
public AccountVO(Long id) {
public AccountVO(long id) {
this.id = id;
}
@ -67,8 +67,9 @@ public class AccountVO implements Account {
public boolean getNeedsCleanup() {
return needsCleanup;
}
public Long getId() {
@Override
public long getId() {
return id;
}
@ -85,10 +86,11 @@ public class AccountVO implements Account {
this.type = type;
}
public Long getDomainId() {
public long getDomainId() {
return domainId;
}
public void setDomainId(Long domainId) {
}
public void setDomainId(long domainId) {
this.domainId = domainId;
}

View File

@ -18,9 +18,9 @@
package com.cloud.user;
import java.util.Date;
import java.util.Date;
public interface User {
public interface User extends OwnedBy {
public static final long UID_SYSTEM = 1;
public Long getId();
@ -45,8 +45,6 @@ public interface User {
public void setLastname(String lastname);
public long getAccountId();
public void setAccountId(long accountId);
public String getEmail();

View File

@ -36,8 +36,8 @@ import com.cloud.utils.db.Filter;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.db.Transaction;
import com.cloud.utils.db.SearchCriteria.Op;
import com.cloud.utils.db.Transaction;
@Local(value={AccountDao.class})
public class AccountDaoImpl extends GenericDaoBase<AccountVO, Long> implements AccountDao {
@ -94,7 +94,7 @@ public class AccountDaoImpl extends GenericDaoBase<AccountVO, Long> implements A
u.setSecretKey(rs.getString(4));
u.setState(rs.getString(5));
Account a = new AccountVO(rs.getLong(6));
AccountVO a = new AccountVO(rs.getLong(6));
a.setAccountName(rs.getString(7));
a.setType(rs.getShort(8));
a.setDomainId(rs.getLong(9));

View File

@ -116,7 +116,6 @@ import com.cloud.storage.Storage.StorageResourceType;
import com.cloud.storage.StoragePoolVO;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.VirtualMachineTemplate;
import com.cloud.storage.dao.GuestOSCategoryDao;
import com.cloud.storage.dao.StoragePoolDao;
import com.cloud.storage.dao.StoragePoolHostDao;
@ -124,6 +123,7 @@ import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VMTemplateHostDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.storage.resource.DummySecondaryStorageResource;
import com.cloud.template.VirtualMachineTemplate;
import com.cloud.user.dao.UserStatisticsDao;
import com.cloud.uservm.UserVm;
import com.cloud.utils.ActionDelegate;

View File

@ -22,7 +22,7 @@ import java.util.Set;
import com.cloud.dc.DataCenterVO;
import com.cloud.dc.HostPodVO;
import com.cloud.service.ServiceOfferingVO;
import com.cloud.storage.VirtualMachineTemplate;
import com.cloud.template.VirtualMachineTemplate;
import com.cloud.utils.Pair;
import com.cloud.utils.component.Adapter;

View File

@ -40,11 +40,11 @@ import com.cloud.offering.ServiceOffering;
import com.cloud.offering.ServiceOffering.GuestIpType;
import com.cloud.service.ServiceOfferingVO;
import com.cloud.service.dao.ServiceOfferingDao;
import com.cloud.storage.VirtualMachineTemplate;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.dao.VMTemplateHostDao;
import com.cloud.storage.dao.VMTemplatePoolDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.template.VirtualMachineTemplate;
import com.cloud.utils.DateUtil;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;

View File

@ -76,6 +76,7 @@ import org.apache.log4j.Logger;
import com.cloud.configuration.ConfigurationVO;
import com.cloud.configuration.dao.ConfigurationDao;
import com.cloud.domain.Domain;
import com.cloud.domain.DomainVO;
import com.cloud.maid.StackMaid;
import com.cloud.server.ManagementServer;
@ -402,7 +403,7 @@ public class ApiServer implements HttpRequestHandler {
if (account.getType() == Account.ACCOUNT_TYPE_NORMAL) {
requestParameters.put(BaseCmd.Properties.USER_ID.getName(), new String[] { user.getId().toString() });
requestParameters.put(BaseCmd.Properties.ACCOUNT.getName(), new String[] { account.getAccountName() });
requestParameters.put(BaseCmd.Properties.DOMAIN_ID.getName(), new String[] { account.getDomainId().toString() });
requestParameters.put(BaseCmd.Properties.DOMAIN_ID.getName(), new String[] { Long.toString(account.getDomainId()) });
requestParameters.put(BaseCmd.Properties.ACCOUNT_OBJ.getName(), new Object[] { account });
} else {
requestParameters.put(BaseCmd.Properties.USER_ID.getName(), new String[] { user.getId().toString() });
@ -446,7 +447,7 @@ public class ApiServer implements HttpRequestHandler {
if (domainPath == null || domainPath.trim().length() == 0) {
domainId = DomainVO.ROOT_DOMAIN;
} else {
DomainVO domainObj = _ms.findDomainByPath(domainPath);
Domain domainObj = _ms.findDomainByPath(domainPath);
if (domainObj != null) {
domainId = domainObj.getId();
} else { // if an unknown path is passed in, fail the login call
@ -501,7 +502,7 @@ public class ApiServer implements HttpRequestHandler {
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.LASTNAME.getName(), userAcct.getLastname()));
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.ACCOUNT_OBJ.getName(), account));
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.ACCOUNT.getName(), account.getAccountName()));
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), account.getDomainId().toString()));
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), Long.toString(account.getDomainId())));
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.TYPE.getName(), Short.valueOf(account.getType()).toString()));
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.NETWORK_TYPE.getName(), networkType));
loginParams.add(new Pair<String, Object>(BaseCmd.Properties.HYPERVISOR_TYPE.getName(), hypervisorType));

View File

@ -877,7 +877,7 @@ public abstract class BaseCmd {
Account account = getAccount(params);
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != targetAccountId) {
if (account.getId() != targetAccountId) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to find a " + targetDesc + " with id " + targetId + " for this account");
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), targetDomainId)) {

View File

@ -18,13 +18,13 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -98,7 +98,7 @@ public class AssignPortForwardingServiceCmd extends BaseCmd {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to apply port forwarding services " + StringUtils.join(sgIdList, ",") + " to instance " + vmId + ". Invalid list of port forwarding services for the given instance.");
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != validatedAccountId.longValue())) {
if (!isAdmin(account.getType()) && (account.getId() != validatedAccountId.longValue())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Permission denied applying port forwarding services " + StringUtils.join(sgIdList, ",") + " to instance " + vmId + ".");
} else {
Account validatedAccount = getManagementServer().findAccountById(validatedAccountId);

View File

@ -18,13 +18,13 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.network.LoadBalancerVO;
@ -97,7 +97,7 @@ public class AssignToLoadBalancerRuleCmd extends BaseCmd {
if (loadBalancer == null) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to find load balancer rule, with id " + loadBalancerId);
} else if (account != null) {
if (!isAdmin(account.getType()) && (loadBalancer.getAccountId() != account.getId().longValue())) {
if (!isAdmin(account.getType()) && (loadBalancer.getAccountId() != account.getId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Account " + account.getAccountName() + " does not own load balancer rule " + loadBalancer.getName() +
" (id:" + loadBalancer.getId() + ")");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), loadBalancer.getDomainId())) {

View File

@ -73,10 +73,10 @@ public class AttachIsoCmd extends BaseCmd {
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != vmInstanceCheck.getAccountId()) {
if (account.getId() != vmInstanceCheck.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to attach ISO " + iso.getName() + " to virtual machine " + vmInstanceCheck.getName() + " for this account");
}
if (!iso.isPublicTemplate() && (account.getId().longValue() != iso.getAccountId()) && (!iso.getName().startsWith("xs-tools"))) {
if (!iso.isPublicTemplate() && (account.getId() != iso.getAccountId()) && (!iso.getName().startsWith("xs-tools"))) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to attach ISO " + iso.getName() + " to virtual machine " + vmInstanceCheck.getName() + " for this account");
}
} else {

View File

@ -90,10 +90,10 @@ public class AttachVolumeCmd extends BaseCmd {
// If the account is not an admin, check that the volume and the virtual machine are owned by the account that was passed in
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != volume.getAccountId())
if (account.getId() != volume.getAccountId())
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to find volume with ID: " + volumeId + " for account: " + account.getAccountName());
if (account.getId().longValue() != vm.getAccountId())
if (account.getId() != vm.getAccountId())
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to find VM with ID: " + vmId + " for account: " + account.getAccountName());
} else {
if (!getManagementServer().isChildDomain(account.getDomainId(), volume.getDomainId()) ||

View File

@ -18,15 +18,15 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -63,9 +63,9 @@ public class CreateDomainCmd extends BaseCmd {
}
if (parentDomainId == null){
parentDomainId = DomainVO.ROOT_DOMAIN;
parentDomainId = Domain.ROOT_DOMAIN;
} else {
DomainVO parentDomain = null;
Domain parentDomain = null;
parentDomain = getManagementServer().findDomainIdById(parentDomainId);
if (parentDomain == null) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "unable to find parent domain " + parentDomainId);
@ -76,7 +76,7 @@ public class CreateDomainCmd extends BaseCmd {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Invalid parent domain " + parentDomainId + ", unable to create domain " + name);
}
DomainVO domain = null;
Domain domain = null;
try {
domain = getManagementServer().createDomain(name, account.getId(), parentDomainId);
} catch (IllegalArgumentException illArgEx) {
@ -96,7 +96,7 @@ public class CreateDomainCmd extends BaseCmd {
} else {
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), domain.getId()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.NAME.getName(), domain.getName()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.LEVEL.getName(), domain.getLevel().toString()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.LEVEL.getName(), Integer.toString(domain.getLevel())));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.PARENT_DOMAIN_ID.getName(), domain.getParent().toString()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.PARENT_DOMAIN_NAME.getName(),
getManagementServer().findDomainIdById(domain.getParent()).getName()));

View File

@ -98,7 +98,7 @@ public class CreateIPForwardingRuleCmd extends BaseCmd {
if (!getManagementServer().isChildDomain(account.getDomainId(), vmOwner.getDomainId())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to create port forwarding rule, IP address " + ipAddress + " to virtual machine " + vmId + ", permission denied.");
}
} else if (account.getId().longValue() != userVM.getAccountId()) {
} else if (account.getId() != userVM.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to create port forwarding rule, IP address " + ipAddress + " to virtual machine " + vmId + ", permission denied.");
}
}

View File

@ -26,8 +26,8 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.dc.VlanVO;
import com.cloud.dc.Vlan.VlanType;
import com.cloud.dc.VlanVO;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.network.IPAddressVO;
@ -102,7 +102,7 @@ public class CreateLoadBalancerRuleCmd extends BaseCmd {
Long accountId = accountByIp.getId();
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != accountId.longValue()) {
if (account.getId() != accountId.longValue()) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to create load balancer rule, account " + account.getAccountName() + " doesn't own ip address " + publicIP);
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), accountByIp.getDomainId())) {

View File

@ -110,7 +110,7 @@ public class CreateNetworkGroupCmd extends BaseCmd {
List<Pair<String, Object>> embeddedObject = new ArrayList<Pair<String, Object>>();
List<Pair<String, Object>> returnValues = new ArrayList<Pair<String, Object>>();
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), networkGroup.getId().toString()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), Long.toString(networkGroup.getId())));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.NAME.getName(), networkGroup.getName()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.DESCRIPTION.getName(), networkGroup.getDescription()));

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.network.SecurityGroupVO;
@ -107,7 +107,7 @@ public class CreatePortForwardingServiceCmd extends BaseCmd {
List<Pair<String, Object>> embeddedObject = new ArrayList<Pair<String, Object>>();
List<Pair<String, Object>> returnValues = new ArrayList<Pair<String, Object>>();
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), securityGroup.getId().toString()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), Long.toString(securityGroup.getId())));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.NAME.getName(), securityGroup.getName()));
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.DESCRIPTION.getName(), securityGroup.getDescription()));

View File

@ -78,7 +78,7 @@ public class CreatePortForwardingServiceRuleCmd extends BaseCmd {
if (!getManagementServer().isChildDomain(account.getDomainId(), sg.getDomainId())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to find rules for port forwarding service id = " + securityGroupId + ", permission denied.");
}
} else if (account.getId().longValue() != sg.getAccountId().longValue()) {
} else if (account.getId() != sg.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Invalid port forwarding service (" + securityGroupId + ") given, unable to create rule.");
}
}
@ -88,7 +88,7 @@ public class CreatePortForwardingServiceRuleCmd extends BaseCmd {
userId = Long.valueOf(1);
}
long jobId = getManagementServer().createOrUpdateRuleAsync(true, userId.longValue(), sg.getAccountId().longValue(), null, securityGroupId, null, publicPort, null, privatePort, protocol, null);
long jobId = getManagementServer().createOrUpdateRuleAsync(true, userId.longValue(), sg.getAccountId(), null, securityGroupId, null, publicPort, null, privatePort, protocol, null);
long ruleId = 0;
if (jobId == 0) {

View File

@ -26,8 +26,6 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.async.AsyncInstanceCreateStatus;
import com.cloud.async.AsyncJobResult;
import com.cloud.async.executor.CreatePrivateTemplateResultObject;
import com.cloud.serializer.SerializerHelper;
import com.cloud.server.Criteria;
@ -111,7 +109,7 @@ public class CreateTemplateCmd extends BaseCmd {
boolean isAdmin = ((account == null) || isAdmin(account.getType()));
if (!isAdmin) {
if (account.getId().longValue() != volume.getAccountId()) {
if (account.getId() != volume.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "unable to find a volume with id " + volumeId + " for this account");
}
} else if ((account != null) && !getManagementServer().isChildDomain(account.getDomainId(), volume.getDomainId())) {

View File

@ -165,7 +165,7 @@ public class CreateVolumeCmd extends BaseCmd {
if (!getManagementServer().isChildDomain(account.getDomainId(), snapshotOwner.getDomainId())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to create volume from snapshot with id " + snapshotId + ", permission denied.");
}
} else if (account.getId().longValue() != snapshotCheck.getAccountId()) {
} else if (account.getId() != snapshotCheck.getAccountId()) {
throw new ServerApiException(BaseCmd.SNAPSHOT_INVALID_PARAM_ERROR, "unable to find a snapshot with id " + snapshotId + " for this account");
}
}

View File

@ -18,15 +18,15 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -61,12 +61,12 @@ public class DeleteDomainCmd extends BaseCmd{
account = getManagementServer().findAccountById(Long.valueOf(1L));
}
if ((domainId.longValue() == DomainVO.ROOT_DOMAIN) || !getManagementServer().isChildDomain(account.getDomainId(), domainId)) {
if ((domainId.longValue() == Domain.ROOT_DOMAIN) || !getManagementServer().isChildDomain(account.getDomainId(), domainId)) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to delete domain " + domainId + ", permission denied.");
}
// check if domain exists in the system
DomainVO domain = getManagementServer().findDomainIdById(domainId);
Domain domain = getManagementServer().findDomainIdById(domainId);
if (domain == null) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "unable to find domain " + domainId);
}

View File

@ -18,22 +18,22 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.exception.InternalErrorException;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.network.FirewallRuleVO;
import com.cloud.network.IPAddressVO;
import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.utils.Pair;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.exception.InternalErrorException;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.network.FirewallRuleVO;
import com.cloud.network.IPAddressVO;
import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.utils.Pair;
public class DeleteIPForwardingRuleCmd extends BaseCmd {
public static final Logger s_logger = Logger.getLogger(DeleteIPForwardingRuleCmd.class.getName());
@ -85,13 +85,13 @@ public class DeleteIPForwardingRuleCmd extends BaseCmd {
if (!getManagementServer().isChildDomain(account.getDomainId(), ruleOwner.getDomainId())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to delete port forwarding rule " + ruleId + ", permission denied.");
}
} else if (account.getId().longValue() != ruleOwner.getId().longValue()) {
} else if (account.getId() != ruleOwner.getId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to delete port forwarding rule " + ruleId + ", permission denied.");
}
}
try {
getManagementServer().deleteRule(ruleId.longValue(), userId.longValue(), ruleOwner.getId().longValue());
getManagementServer().deleteRule(ruleId.longValue(), userId.longValue(), ruleOwner.getId());
} catch (InvalidParameterValueException ex1) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to delete port forwarding rule " + ruleId + ", internal error.");
} catch (PermissionDeniedException ex2) {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.storage.VMTemplateVO;
@ -74,7 +74,7 @@ public class DeleteIsoCmd extends BaseCmd {
if (account != null) {
if (!isAdmin(account.getType())) {
if (iso.getAccountId() != account.getId().longValue()) {
if (iso.getAccountId() != account.getId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to delete ISO with id " + isoId);
}
} else {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.network.LoadBalancerVO;
@ -64,7 +64,7 @@ public class DeleteLoadBalancerRuleCmd extends BaseCmd {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to find load balancer rule, with id " + loadBalancerId);
} else if (account != null) {
if (!isAdmin(account.getType())) {
if (loadBalancer.getAccountId() != account.getId().longValue()) {
if (loadBalancer.getAccountId() != account.getId()) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Account " + account.getAccountName() + " does not own load balancer rule " + loadBalancer.getName() + " (id:" + loadBalancerId + ")");
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), loadBalancer.getDomainId())) {

View File

@ -68,7 +68,7 @@ public class DeletePortForwardingServiceCmd extends BaseCmd {
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != sg.getAccountId()) {
if (account.getId() != sg.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "unable to find a port forwarding service with id " + id + " for this account");
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), sg.getDomainId())) {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -64,7 +64,7 @@ public class DestroyVMCmd extends BaseCmd {
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != vmInstance.getAccountId()) {
if (account.getId() != vmInstance.getAccountId()) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + "for this account");
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstance.getDomainId())) {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -66,7 +66,7 @@ public class DetachIsoCmd extends BaseCmd {
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != vmInstanceCheck.getAccountId()) {
if (account.getId() != vmInstanceCheck.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to detach ISO from virtual machine " + vmInstanceCheck.getName() + " for this account");
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstanceCheck.getDomainId())) {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -66,11 +66,11 @@ public class DisableAccountCmd extends BaseCmd {
}
// don't allow modify system account
if (account.getId().longValue() == Account.ACCOUNT_ID_SYSTEM) {
if (account.getId() == Account.ACCOUNT_ID_SYSTEM) {
throw new ServerApiException(BaseCmd.INTERNAL_ERROR, "can not disable system account");
}
long jobId = getManagementServer().disableAccountAsync(account.getId().longValue());
long jobId = getManagementServer().disableAccountAsync(account.getId());
if (jobId == 0) {
s_logger.warn("Unable to schedule async-job for DisableAccount comamnd");
} else {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -65,7 +65,7 @@ public class DisableUserCmd extends BaseCmd {
// If the user is a System user, return an error. We do not allow this
Account account = getManagementServer().findAccountById(user.getAccountId());
if ((account != null) && (account.getId().longValue() == Account.ACCOUNT_ID_SYSTEM)) {
if ((account != null) && (account.getId() == Account.ACCOUNT_ID_SYSTEM)) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "user id : " + id + " is a system user, disabling is not allowed");
}

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.exception.PermissionDeniedException;
@ -66,7 +66,7 @@ public class DisassociateIPAddrCmd extends BaseCmd {
Long accountId = accountByIp.getId();
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != accountId.longValue()) {
if (account.getId() != accountId.longValue()) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "account " + account.getAccountName() + " doesn't own ip address " + ipAddress);
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), accountByIp.getDomainId())) {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -67,13 +67,13 @@ public class EnableAccountCmd extends BaseCmd {
}
// don't allow modify system account
if (account.getId().longValue() == Account.ACCOUNT_ID_SYSTEM) {
if (account.getId() == Account.ACCOUNT_ID_SYSTEM) {
throw new ServerApiException(BaseCmd.INTERNAL_ERROR, "can not enable system account");
}
boolean success = true;
try {
success = getManagementServer().enableAccount(account.getId().longValue());
success = getManagementServer().enableAccount(account.getId());
} catch (Exception ex) {
s_logger.error("error enabling account " + accountName + " in domain " + domainId, ex);
throw new ServerApiException(BaseCmd.INTERNAL_ERROR, "Internal error enabling account " + accountName + " in domain " + domainId);

View File

@ -28,7 +28,7 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.configuration.ResourceCount.ResourceType;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.server.Criteria;
import com.cloud.user.Account;
import com.cloud.user.AccountVO;
@ -84,7 +84,7 @@ public class ListAccountsCmd extends BaseCmd{
isAdmin = true;
if (domainId == null) {
// default domainId to the admin's domain
domainId = ((account == null) ? DomainVO.ROOT_DOMAIN : account.getDomainId());
domainId = ((account == null) ? Domain.ROOT_DOMAIN : account.getDomainId());
} else if (account != null) {
if (!getManagementServer().isChildDomain(account.getDomainId(), domainId)) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid domain id (" + domainId + ") given, unable to list accounts");
@ -135,8 +135,8 @@ public class ListAccountsCmd extends BaseCmd{
accountData.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), Long.valueOf(accountO.getId()).toString()));
accountData.add(new Pair<String, Object>(BaseCmd.Properties.NAME.getName(), accountO.getAccountName()));
accountData.add(new Pair<String, Object>(BaseCmd.Properties.ACCOUNT_TYPE.getName(), Short.valueOf(accountO.getType()).toString()));
DomainVO domain = getManagementServer().findDomainIdById(accountO.getDomainId());
accountData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), domain.getId().toString()));
Domain domain = getManagementServer().findDomainIdById(accountO.getDomainId());
accountData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), Long.toString(domain.getId())));
accountData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN.getName(), domain.getName()));
//get network stat

View File

@ -26,7 +26,7 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.server.Criteria;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -101,16 +101,16 @@ public class ListDomainChildrenCmd extends BaseCmd {
}
// TODO : Recursive listing is not supported yet
List<DomainVO> domains = getManagementServer().searchForDomainChildren(c);
List<? extends Domain> domains = getManagementServer().searchForDomainChildren(c);
List<Pair<String, Object>> domainTags = new ArrayList<Pair<String, Object>>();
Object[] dTag = new Object[domains.size()];
int i = 0;
for (DomainVO domain : domains) {
for (Domain domain : domains) {
List<Pair<String, Object>> domainData = new ArrayList<Pair<String, Object>>();
domainData.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), Long.valueOf(domain.getId()).toString()));
domainData.add(new Pair<String, Object>(BaseCmd.Properties.NAME.getName(), domain.getName()));
domainData.add(new Pair<String, Object>(BaseCmd.Properties.LEVEL.getName(), domain.getLevel().toString()));
domainData.add(new Pair<String, Object>(BaseCmd.Properties.LEVEL.getName(), Integer.toString(domain.getLevel())));
domainData.add(new Pair<String, Object>(BaseCmd.Properties.HAS_CHILD.getName(),
(domain.getChildCount()) > 0 ? "true" : "false"));

View File

@ -26,7 +26,7 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.server.Criteria;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -95,16 +95,16 @@ public class ListDomainsCmd extends BaseCmd {
c.addCriteria(Criteria.LEVEL, level);
}
List<DomainVO> domains = getManagementServer().searchForDomains(c);
List<? extends Domain> domains = getManagementServer().searchForDomains(c);
List<Pair<String, Object>> domainTags = new ArrayList<Pair<String, Object>>();
Object[] dTag = new Object[domains.size()];
int i = 0;
for (DomainVO domain : domains) {
for (Domain domain : domains) {
List<Pair<String, Object>> domainData = new ArrayList<Pair<String, Object>>();
domainData.add(new Pair<String, Object>(BaseCmd.Properties.ID.getName(), Long.valueOf(domain.getId()).toString()));
domainData.add(new Pair<String, Object>(BaseCmd.Properties.NAME.getName(), domain.getName()));
domainData.add(new Pair<String, Object>(BaseCmd.Properties.LEVEL.getName(), domain.getLevel().toString()));
domainData.add(new Pair<String, Object>(BaseCmd.Properties.LEVEL.getName(), Integer.toString(domain.getLevel())));
if (domain.getParent() != null){
domainData.add(new Pair<String, Object>(BaseCmd.Properties.PARENT_DOMAIN_ID.getName(), domain.getParent().toString()));

View File

@ -18,13 +18,13 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.domain.DomainVO;
@ -165,7 +165,7 @@ public class ListEventsCmd extends BaseCmd {
Account acct = getManagementServer().findAccountById(Long.valueOf(event.getAccountId()));
if (acct != null) {
eventData.add(new Pair<String, Object>(BaseCmd.Properties.ACCOUNT.getName(), acct.getAccountName()));
eventData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), acct.getDomainId().toString()));
eventData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), Long.toString(acct.getDomainId())));
eventData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN.getName(), getManagementServer().findDomainIdById(acct.getDomainId()).getName()));
}
if (event.getCreateDate() != null) {

View File

@ -33,8 +33,8 @@ import com.cloud.domain.DomainVO;
import com.cloud.host.HostVO;
import com.cloud.storage.GuestOS;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.dao.VMTemplateDao.TemplateFilter;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -216,7 +216,7 @@ public class ListIsosCmd extends BaseCmd {
isoData.add(new Pair<String, Object>(BaseCmd.Properties.ZONE_NAME.getName(), datacenter.getName()));
// If the user is an admin, add the template download status
if (isAdmin || account.getId().longValue() == iso.getAccountId()) {
if (isAdmin || account.getId() == iso.getAccountId()) {
// add download status
if (isoHost.getDownloadState()!=Status.DOWNLOADED) {
String isoStatus = "Processing";

View File

@ -74,7 +74,7 @@ public class ListLoadBalancerRuleInstancesCmd extends BaseCmd {
if (!getManagementServer().isChildDomain(account.getDomainId(), userAccount.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid load balancer rule id (" + loadBalancerId + ") given, unable to list instances.");
}
} else if (account.getId().longValue() != lbAcctId) {
} else if (account.getId() != lbAcctId) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "account " + account.getAccountName() + " does not own load balancer rule " + loadBalancer.getName());
}
}

View File

@ -95,7 +95,7 @@ public class ListNetworkGroupsCmd extends BaseCmd {
if (account != null) {
// check that the user is the owner of the VM (admin case was already verified
if (account.getId().longValue() != userVM.getAccountId()) {
if (account.getId() != userVM.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to list network groups for virtual machine instance " + vmId + "; permission denied.");
}
}

View File

@ -77,7 +77,7 @@ public class ListPortForwardingRulesCmd extends BaseCmd {
}
} else {
if (account != null) {
if ((ipAddressVO.getAccountId() == null) || (account.getId().longValue() != ipAddressVO.getAccountId().longValue())) {
if ((ipAddressVO.getAccountId() == null) || (account.getId() != ipAddressVO.getAccountId().longValue())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to list port forwarding rules for address " + ipAddress + ", permission denied for account " + account.getId());
}
addrOwner = account;

View File

@ -85,7 +85,7 @@ public class ListPortForwardingServiceRulesCmd extends BaseCmd {
if ((groupId != null) && (accountId != null)) {
SecurityGroupVO sg = getManagementServer().findSecurityGroupById(groupId);
if (sg != null) {
if ((sg.getAccountId() != null) && sg.getAccountId().longValue() != accountId.longValue()) {
if (sg.getAccountId() != accountId.longValue()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to list port forwarding service rules, account " + accountId + " does not own port forwarding service " + groupId);
}
} else {

View File

@ -18,10 +18,10 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.storage.SnapshotScheduleVO;
@ -65,7 +65,7 @@ public class ListRecurringSnapshotScheduleCmd extends BaseCmd {
if (!getManagementServer().isChildDomain(account.getDomainId(), userAccount.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid volume id (" + volumeId + ") given, unable to list snapshots.");
}
} else if (account.getId().longValue() != volAcctId) {
} else if (account.getId() != volAcctId) {
throw new ServerApiException(BaseCmd.SNAPSHOT_INVALID_PARAM_ERROR, "account " + account.getAccountName() + " does not own volume id " + volAcctId);
}
}

View File

@ -94,7 +94,7 @@ public class ListServiceOfferingsCmd extends BaseCmd {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId);
}
if ((account != null) && !isAdmin(account.getType())) {
if (account.getId().longValue() != vmInstance.getAccountId()) {
if (account.getId() != vmInstance.getAccountId()) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + " for this account");
}
}

View File

@ -30,9 +30,9 @@ import com.cloud.async.AsyncJobVO;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.server.Criteria;
import com.cloud.storage.Snapshot;
import com.cloud.storage.Snapshot.SnapshotType;
import com.cloud.storage.SnapshotVO;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.Snapshot.SnapshotType;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -141,7 +141,7 @@ public class ListSnapshotsCmd extends BaseCmd {
Account acct = getManagementServer().findAccountById(Long.valueOf(snapshot.getAccountId()));
if (acct != null) {
snapshotData.add(new Pair<String, Object>(BaseCmd.Properties.ACCOUNT.getName(), acct.getAccountName()));
snapshotData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), acct.getDomainId().toString()));
snapshotData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), Long.toString(acct.getDomainId())));
snapshotData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN.getName(), getManagementServer().findDomainIdById(acct.getDomainId()).getName()));
}
volumeId = snapshot.getVolumeId();

View File

@ -8,7 +8,7 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.storage.VMTemplateVO;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -86,9 +86,9 @@ public class ListTemplateOrIsoPermissionsCmd extends BaseCmd {
if (account.getType() == Account.ACCOUNT_TYPE_NORMAL && template.getAccountId() != accountId) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "unable to list permissions for " + getMediaType() + " with id " + id);
} else if (account.getType() == Account.ACCOUNT_TYPE_DOMAIN_ADMIN) {
DomainVO accountDomain = getManagementServer().findDomainIdById(account.getDomainId());
Domain accountDomain = getManagementServer().findDomainIdById(account.getDomainId());
Account templateAccount = getManagementServer().findAccountById(template.getAccountId());
DomainVO templateDomain = getManagementServer().findDomainIdById(templateAccount.getDomainId());
Domain templateDomain = getManagementServer().findDomainIdById(templateAccount.getDomainId());
if (!templateDomain.getPath().contains(accountDomain.getPath())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "unable to list permissions for " + getMediaType() + " with id " + id);
}

View File

@ -31,8 +31,8 @@ import com.cloud.dc.DataCenterVO;
import com.cloud.host.HostVO;
import com.cloud.storage.GuestOS;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.dao.VMTemplateDao.TemplateFilter;
import com.cloud.storage.template.TemplateConstants;
import com.cloud.user.Account;
@ -196,7 +196,7 @@ public class ListTemplatesCmd extends BaseCmd {
templateData.add(new Pair<String, Object>(BaseCmd.Properties.ZONE_NAME.getName(), datacenter.getName()));
// If the user is an admin, add the template download status
if (isAdmin || account.getId().longValue() == template.getAccountId()) {
if (isAdmin || account.getId() == template.getAccountId()) {
// add download status
if (templateHostRef.getDownloadState()!=Status.DOWNLOADED) {
String templateStatus = "Processing";

View File

@ -185,7 +185,7 @@ public class ListVMsCmd extends BaseCmd {
Account acct = getManagementServer().findAccountById(Long.valueOf(vmInstance.getAccountId()));
if (acct != null) {
vmData.add(new Pair<String, Object>(BaseCmd.Properties.ACCOUNT.getName(), acct.getAccountName()));
vmData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), acct.getDomainId().toString()));
vmData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN_ID.getName(), Long.toString(acct.getDomainId())));
vmData.add(new Pair<String, Object>(BaseCmd.Properties.DOMAIN.getName(), getManagementServer().findDomainIdById(acct.getDomainId()).getName()));
}
vmData.add(new Pair<String, Object>(BaseCmd.Properties.HA_ENABLE.getName(), Boolean.valueOf(vmInstance.isHaEnabled()).toString()));

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.dc.DataCenterVO;
@ -62,7 +62,7 @@ public class ListZonesByCmd extends BaseCmd {
if (available != null && available) {
dataCenters = getManagementServer().listDataCenters();
} else {
dataCenters = getManagementServer().listDataCentersBy(account.getId().longValue());
dataCenters = getManagementServer().listDataCentersBy(account.getId());
}
} else {
// available is kinda useless in this case because we can't exactly list by

View File

@ -17,16 +17,16 @@
*/
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
public class LockAccountCmd extends BaseCmd {
public static final Logger s_logger = Logger.getLogger(LockAccountCmd.class.getName());
@ -63,11 +63,11 @@ public class LockAccountCmd extends BaseCmd {
}
// don't allow modify system account
if (account.getId().longValue() == Account.ACCOUNT_ID_SYSTEM) {
if (account.getId() == Account.ACCOUNT_ID_SYSTEM) {
throw new ServerApiException(BaseCmd.INTERNAL_ERROR, "can not lock system account");
}
boolean success = getManagementServer().lockAccount(account.getId().longValue());
boolean success = getManagementServer().lockAccount(account.getId());
List<Pair<String, Object>> returnValues = new ArrayList<Pair<String, Object>>();
returnValues.add(new Pair<String, Object>(BaseCmd.Properties.SUCCESS.getName(), Boolean.valueOf(success).toString()));
return returnValues;

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -62,7 +62,7 @@ public class RebootVMCmd extends BaseCmd {
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != vmInstance.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != vmInstance.getAccountId())) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstance.getDomainId())) {
// the domain in which the VM lives is not in the admin's domain tree

View File

@ -27,11 +27,11 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.dc.DataCenterVO;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.Storage.FileSystem;
import com.cloud.storage.Storage.ImageFormat;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
import com.cloud.storage.VMTemplateVO;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -86,7 +86,7 @@ public class RegisterIsoCmd extends BaseCmd {
long accountId = 1L; // default to system account
if (account != null) {
accountId = account.getId().longValue();
accountId = account.getId();
}
Account accountObj;

View File

@ -105,7 +105,7 @@ public class RegisterTemplateCmd extends BaseCmd {
long accountId = 1L; // default to system account
if (account != null) {
accountId = account.getId().longValue();
accountId = account.getId();
}
Account accountObj;

View File

@ -18,13 +18,13 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.network.LoadBalancerVO;
@ -92,7 +92,7 @@ public class RemoveFromLoadBalancerRuleCmd extends BaseCmd {
if (loadBalancer == null) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Unable to find load balancer rule with id " + loadBalancerId);
} else if (account != null) {
if (!isAdmin(account.getType()) && (loadBalancer.getAccountId() != account.getId().longValue())) {
if (!isAdmin(account.getType()) && (loadBalancer.getAccountId() != account.getId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Account " + account.getAccountName() + " does not own load balancer rule " + loadBalancer.getName() +
" (id:" + loadBalancer.getId() + ")");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), loadBalancer.getDomainId())) {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.network.SecurityGroupVO;
@ -66,7 +66,7 @@ public class RemovePortForwardingServiceCmd extends BaseCmd {
if (securityG == null) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "unable to find a port forwarding service with id " + securityGroupId);
} else if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != securityG.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != securityG.getAccountId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "unable to find a port forwarding service with id " + securityGroupId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), securityG.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid port forwarding service id (" + securityGroupId + ") given, unable to remove port forwarding service.");
@ -78,7 +78,7 @@ public class RemovePortForwardingServiceCmd extends BaseCmd {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId);
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != vmInstance.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != vmInstance.getAccountId())) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstance.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid virtual machine id (" + vmId + ") given, unable to remove port forwarding service.");
@ -96,7 +96,7 @@ public class RemovePortForwardingServiceCmd extends BaseCmd {
Long accountId = ipAddrAccount.getId();
if ((account != null) && !isAdmin(account.getType())) {
if (account.getId().longValue() != accountId) {
if (account.getId() != accountId) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "account " + account.getAccountName() + " doesn't own ip address " + publicIp);
}
}

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.storage.VMTemplateVO;
@ -65,7 +65,7 @@ public class ResetVMPasswordCmd extends BaseCmd {
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != vmInstance.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != vmInstance.getAccountId())) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstance.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid virtual machine id (" + vmId + ") given, unable to reset password.");

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -72,7 +72,7 @@ public class StartVMCmd extends BaseCmd {
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != vmInstanceCheck.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != vmInstanceCheck.getAccountId())) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstanceCheck.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid virtual machine id (" + vmId + ") given, unable to start virtual machine.");

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -63,7 +63,7 @@ public class StopVMCmd extends BaseCmd {
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != vmInstance.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != vmInstance.getAccountId())) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstance.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid virtual machine id (" + vmId + ") given, unable to sop virtual machine.");

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -70,7 +70,7 @@ public class UpdateAccountCmd extends BaseCmd{
}
// don't allow modify system account
if (account.getId().longValue() == Account.ACCOUNT_ID_SYSTEM) {
if (account.getId() == Account.ACCOUNT_ID_SYSTEM) {
throw new ServerApiException(BaseCmd.INTERNAL_ERROR, "can not modify system account");
}

View File

@ -26,7 +26,7 @@ import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
@ -58,7 +58,7 @@ public class UpdateDomainCmd extends BaseCmd{
Boolean editDomainResult = false;
//check if domain exists in the system
DomainVO domain = getManagementServer().findDomainIdById(domainId);
Domain domain = getManagementServer().findDomainIdById(domainId);
if (domain == null) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "unable to find domain " + domainId);
} else if (domain.getParent() == null) {

View File

@ -103,7 +103,7 @@ public class UpdateIPForwardingRuleCmd extends BaseCmd {
if (!getManagementServer().isChildDomain(account.getDomainId(), ipAddressVO.getDomainId())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to update port forwarding rule on IP address " + publicIp + ", permission denied.");
}
} else if (account.getId().longValue() != ipAddressVO.getAccountId()) {
} else if (account.getId() != ipAddressVO.getAccountId()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to update port forwarding rule on IP address " + publicIp + ", permission denied.");
}
}

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.storage.Storage;
@ -73,7 +73,7 @@ public class UpdateIsoCmd extends BaseCmd {
if (account != null) {
Long isoOwner = iso.getAccountId();
if (!isAdmin(account.getType())) {
if ((isoOwner == null) || (account.getId().longValue() != isoOwner.longValue())) {
if ((isoOwner == null) || (account.getId() != isoOwner.longValue())) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to modify ISO with id " + isoId);
}
} else if (account.getType() != Account.ACCOUNT_TYPE_ADMIN) {

View File

@ -63,7 +63,7 @@ public class UpdateLoadBalancerRuleCmd extends BaseCmd {
Long accountId = lbOwner.getId();
if (account != null) {
if (!isAdmin(account.getType())) {
if (account.getId().longValue() != accountId.longValue()) {
if (account.getId() != accountId.longValue()) {
throw new ServerApiException(BaseCmd.ACCOUNT_ERROR, "Unable to update load balancer rule, permission denied");
}
} else if (!getManagementServer().isChildDomain(account.getDomainId(), lbOwner.getDomainId())) {

View File

@ -18,12 +18,12 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.user.Account;
@ -80,7 +80,7 @@ public class UpdateVMCmd extends BaseCmd{
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != vmInstance.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != vmInstance.getAccountId())) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + vmId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstance.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid virtual machine id (" + vmId + ") given, unable to update virtual machine.");

View File

@ -18,16 +18,15 @@
package com.cloud.api.commands;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.service.ServiceOfferingVO;
import com.cloud.user.Account;
import com.cloud.user.User;
import com.cloud.utils.Pair;
@ -71,7 +70,7 @@ public class UpgradeVMCmd extends BaseCmd {
}
if (account != null) {
if (!isAdmin(account.getType()) && (account.getId().longValue() != vmInstance.getAccountId())) {
if (!isAdmin(account.getType()) && (account.getId() != vmInstance.getAccountId())) {
throw new ServerApiException(BaseCmd.VM_INVALID_PARAM_ERROR, "unable to find a virtual machine with id " + virtualMachineId + " for this account");
} else if (!getManagementServer().isChildDomain(account.getDomainId(), vmInstance.getDomainId())) {
throw new ServerApiException(BaseCmd.PARAM_ERROR, "Invalid virtual machine id (" + virtualMachineId + ") given, unable to upgrade virtual machine.");

View File

@ -27,14 +27,13 @@ import com.cloud.async.AsyncJobResult;
import com.cloud.async.AsyncJobVO;
import com.cloud.async.BaseAsyncJobExecutor;
import com.cloud.dc.DataCenterVO;
import com.cloud.domain.DomainVO;
import com.cloud.domain.Domain;
import com.cloud.serializer.GsonHelper;
import com.cloud.server.ManagementServer;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
import com.cloud.storage.VMTemplateVO;
import com.cloud.user.Account;
import com.cloud.utils.Pair;
import com.google.gson.Gson;
public class CopyTemplateExecutor extends BaseAsyncJobExecutor {
@ -58,7 +57,7 @@ public class CopyTemplateExecutor extends BaseAsyncJobExecutor {
VMTemplateHostVO templateHostRef = managementServer.findTemplateHostRef(param.getTemplateId(), destZone.getId());
long guestOsId = template.getGuestOSId();
Account owner = managementServer.findAccountById(template.getAccountId());
DomainVO domain = managementServer.findDomainIdById(owner.getDomainId());
Domain domain = managementServer.findDomainIdById(owner.getDomainId());
String guestOSName = managementServer.findGuestOSById(guestOsId).getName();
asyncMgr.completeAsyncJob(getJob().getId(), AsyncJobResult.STATUS_SUCCEEDED, 0, composeResultObject(template, templateHostRef, destZone,guestOSName, owner, domain));
} else {
@ -82,7 +81,7 @@ public class CopyTemplateExecutor extends BaseAsyncJobExecutor {
public void processTimeout(VMOperationListener listener, long agentId, long seq) {
}
private CopyTemplateResultObject composeResultObject(VMTemplateVO template, VMTemplateHostVO templateHostRef, DataCenterVO destZone, String guestOSName, Account owner, DomainVO domain) {
private CopyTemplateResultObject composeResultObject(VMTemplateVO template, VMTemplateHostVO templateHostRef, DataCenterVO destZone, String guestOSName, Account owner, Domain domain) {
CopyTemplateResultObject resultObject = new CopyTemplateResultObject();
@ -92,7 +91,7 @@ public class CopyTemplateExecutor extends BaseAsyncJobExecutor {
if(owner.getType() == Account.ACCOUNT_TYPE_ADMIN)
isAdmin = true;
if (isAdmin || owner.getId().longValue() == template.getAccountId()) {
if (isAdmin || owner.getId() == template.getAccountId()) {
// add download status
if (templateHostRef.getDownloadState()!=Status.DOWNLOADED) {
String templateStatus = "Processing";

View File

@ -72,8 +72,8 @@ import com.cloud.configuration.dao.ResourceLimitDao;
import com.cloud.dc.DataCenterVO;
import com.cloud.dc.HostPodVO;
import com.cloud.dc.Vlan;
import com.cloud.dc.VlanVO;
import com.cloud.dc.Vlan.VlanType;
import com.cloud.dc.VlanVO;
import com.cloud.dc.dao.DataCenterDao;
import com.cloud.dc.dao.HostPodDao;
import com.cloud.dc.dao.VlanDao;
@ -136,14 +136,14 @@ import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.exception.ExecutionException;
import com.cloud.utils.net.NetUtils;
import com.cloud.vm.DomainRouter;
import com.cloud.vm.DomainRouter.Role;
import com.cloud.vm.DomainRouterVO;
import com.cloud.vm.State;
import com.cloud.vm.UserVmVO;
import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachine.Event;
import com.cloud.vm.VirtualMachineManager;
import com.cloud.vm.VirtualMachineName;
import com.cloud.vm.DomainRouter.Role;
import com.cloud.vm.VirtualMachine.Event;
import com.cloud.vm.dao.DomainRouterDao;
import com.cloud.vm.dao.UserVmDao;
@ -588,7 +588,7 @@ public class NetworkManagerImpl implements NetworkManager, VirtualMachineManager
guestIpAddress,
guestNetmask,
accountId,
account.getDomainId().longValue(),
account.getDomainId(),
publicMacAddress,
publicIpAddress,
vlanNetmask,

View File

@ -29,6 +29,7 @@ import javax.persistence.Table;
import com.cloud.network.Network.BroadcastDomainType;
import com.cloud.network.Network.Mode;
import com.cloud.network.Network.TrafficType;
import com.cloud.user.OwnedBy;
/**
* NetworkProfileVO contains information about a specific network.
@ -36,7 +37,7 @@ import com.cloud.network.Network.TrafficType;
*/
@Entity
@Table(name="network_profile")
public class NetworkProfileVO {
public class NetworkProfileVO implements OwnedBy {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
long id;
@ -81,6 +82,7 @@ public class NetworkProfileVO {
this.mode = mode;
}
@Override
public long getAccountId() {
return accountId;
}

View File

@ -105,7 +105,7 @@ public class NetworkGroupManagerImpl implements NetworkGroupManager {
Comparator<NetworkGroupVO> {
@Override
public int compare(NetworkGroupVO o1, NetworkGroupVO o2) {
return o1.getId().compareTo(o2.getId());
return o1.getId() == o2.getId() ? 0 : o1.getId() < o2.getId() ? -1 : 1;
}
}

View File

@ -101,15 +101,15 @@ import com.cloud.async.executor.SecurityGroupParam;
import com.cloud.async.executor.UpdateLoadBalancerParam;
import com.cloud.async.executor.UpgradeVMParam;
import com.cloud.async.executor.VMOperationParam;
import com.cloud.async.executor.VolumeOperationParam;
import com.cloud.async.executor.VMOperationParam.VmOp;
import com.cloud.async.executor.VolumeOperationParam;
import com.cloud.async.executor.VolumeOperationParam.VolumeOp;
import com.cloud.capacity.CapacityVO;
import com.cloud.capacity.dao.CapacityDao;
import com.cloud.configuration.ConfigurationManager;
import com.cloud.configuration.ConfigurationVO;
import com.cloud.configuration.ResourceLimitVO;
import com.cloud.configuration.ResourceCount.ResourceType;
import com.cloud.configuration.ResourceLimitVO;
import com.cloud.configuration.dao.ConfigurationDao;
import com.cloud.configuration.dao.ResourceLimitDao;
import com.cloud.consoleproxy.ConsoleProxyManager;
@ -119,8 +119,8 @@ import com.cloud.dc.DataCenterIpAddressVO;
import com.cloud.dc.DataCenterVO;
import com.cloud.dc.HostPodVO;
import com.cloud.dc.PodVlanMapVO;
import com.cloud.dc.VlanVO;
import com.cloud.dc.Vlan.VlanType;
import com.cloud.dc.VlanVO;
import com.cloud.dc.dao.AccountVlanMapDao;
import com.cloud.dc.dao.ClusterDao;
import com.cloud.dc.dao.DataCenterDao;
@ -128,6 +128,7 @@ import com.cloud.dc.dao.DataCenterIpAddressDaoImpl;
import com.cloud.dc.dao.HostPodDao;
import com.cloud.dc.dao.PodVlanMapDao;
import com.cloud.dc.dao.VlanDao;
import com.cloud.domain.Domain;
import com.cloud.domain.DomainVO;
import com.cloud.domain.dao.DomainDao;
import com.cloud.event.EventState;
@ -186,10 +187,13 @@ import com.cloud.storage.GuestOSCategoryVO;
import com.cloud.storage.GuestOSVO;
import com.cloud.storage.LaunchPermissionVO;
import com.cloud.storage.Snapshot;
import com.cloud.storage.Snapshot.SnapshotType;
import com.cloud.storage.SnapshotPolicyVO;
import com.cloud.storage.SnapshotScheduleVO;
import com.cloud.storage.SnapshotVO;
import com.cloud.storage.Storage;
import com.cloud.storage.Storage.FileSystem;
import com.cloud.storage.Storage.ImageFormat;
import com.cloud.storage.StorageManager;
import com.cloud.storage.StoragePoolHostVO;
import com.cloud.storage.StoragePoolVO;
@ -197,12 +201,9 @@ import com.cloud.storage.StorageStats;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateStorageResourceAssoc;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.Volume.VolumeType;
import com.cloud.storage.VolumeStats;
import com.cloud.storage.VolumeVO;
import com.cloud.storage.Snapshot.SnapshotType;
import com.cloud.storage.Storage.FileSystem;
import com.cloud.storage.Storage.ImageFormat;
import com.cloud.storage.Volume.VolumeType;
import com.cloud.storage.dao.DiskOfferingDao;
import com.cloud.storage.dao.DiskTemplateDao;
import com.cloud.storage.dao.GuestOSCategoryDao;
@ -213,9 +214,9 @@ import com.cloud.storage.dao.SnapshotPolicyDao;
import com.cloud.storage.dao.StoragePoolDao;
import com.cloud.storage.dao.StoragePoolHostDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VMTemplateDao.TemplateFilter;
import com.cloud.storage.dao.VMTemplateHostDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.storage.dao.VMTemplateDao.TemplateFilter;
import com.cloud.storage.preallocatedlun.PreallocatedLunVO;
import com.cloud.storage.preallocatedlun.dao.PreallocatedLunDao;
import com.cloud.storage.secondary.SecondaryStorageVmManager;
@ -237,12 +238,12 @@ import com.cloud.user.dao.UserDao;
import com.cloud.user.dao.UserStatisticsDao;
import com.cloud.uservm.UserVm;
import com.cloud.utils.DateUtil;
import com.cloud.utils.DateUtil.IntervalType;
import com.cloud.utils.EnumUtils;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.Pair;
import com.cloud.utils.PasswordGenerator;
import com.cloud.utils.StringUtils;
import com.cloud.utils.DateUtil.IntervalType;
import com.cloud.utils.component.Adapters;
import com.cloud.utils.component.ComponentLocator;
import com.cloud.utils.concurrency.NamedThreadFactory;
@ -979,7 +980,7 @@ public class ManagementServerImpl implements ManagementServer {
_securityGroupVMMapDao.delete(sc);
// now clean the network rules and security groups themselves
_networkRuleConfigDao.deleteBySecurityGroup(securityGroup.getId().longValue());
_networkRuleConfigDao.deleteBySecurityGroup(securityGroup.getId());
_securityGroupDao.remove(securityGroup.getId());
}
}
@ -1450,7 +1451,7 @@ public class ManagementServerImpl implements ManagementServer {
txn.start();
List<String> ipAddrsList = new ArrayList<String>();
for (VlanVO vlan : vlansForAccount){
ipAddrsList.addAll(_publicIpAddressDao.assignAcccountSpecificIps(accountId, account.getDomainId().longValue(), vlan.getId(), false));
ipAddrsList.addAll(_publicIpAddressDao.assignAcccountSpecificIps(accountId, account.getDomainId(), vlan.getId(), false));
long size = ipAddrsList.size();
_accountMgr.incrementResourceCount(accountId, ResourceType.public_ip, size);
@ -2472,7 +2473,7 @@ public class ManagementServerImpl implements ManagementServer {
if (!BaseCmd.isAdmin(account.getType()) && ((templateOwner == null) || (templateOwner.longValue() != accountId))) {
// since the current account is not the owner of the template, check the launch permissions table to see if the
// account can launch a VM from this template
LaunchPermissionVO permission = _launchPermissionDao.findByTemplateAndAccount(templateId, account.getId().longValue());
LaunchPermissionVO permission = _launchPermissionDao.findByTemplateAndAccount(templateId, account.getId());
if (permission == null) {
throw new PermissionDeniedException("Account " + account.getAccountName() + " does not have permission to launch instances from template " + template.getName());
}
@ -3570,7 +3571,7 @@ public class ManagementServerImpl implements ManagementServer {
SecurityGroupVO sg = _securityGroupDao.findById(netRule.getSecurityGroupId());
if (account != null) {
if (!BaseCmd.isAdmin(account.getType())) {
if ((sg.getAccountId() == null) || (sg.getAccountId().longValue() != account.getId().longValue())) {
if ((sg.getAccountId() != account.getId())) {
throw new PermissionDeniedException("Unable to delete port forwarding service rule " + networkRuleId + "; account: " + account.getAccountName() + " is not the owner");
}
} else if (!isChildDomain(account.getDomainId(), sg.getDomainId())) {
@ -3578,7 +3579,7 @@ public class ManagementServerImpl implements ManagementServer {
}
}
if (sg != null) {
accountId = sg.getAccountId().longValue();
accountId = sg.getAccountId();
}
} else {
return 0L; // failed to delete due to netRule not found
@ -6183,7 +6184,7 @@ public class ManagementServerImpl implements ManagementServer {
return _consoleProxyDao.findById(instanceId);
}
public List<DomainVO> searchForDomains(Criteria c) {
public List<? extends Domain> searchForDomains(Criteria c) {
Filter searchFilter = new Filter(DomainVO.class, c.getOrderBy(), c.getAscending(), c.getOffset(), c.getLimit());
Long domainId = (Long) c.getCriteria(Criteria.ID);
String domainName = (String) c.getCriteria(Criteria.NAME);
@ -6222,7 +6223,7 @@ public class ManagementServerImpl implements ManagementServer {
return _domainDao.search(sc, searchFilter);
}
public List<DomainVO> searchForDomainChildren(Criteria c) {
public List<? extends Domain> searchForDomainChildren(Criteria c) {
Filter searchFilter = new Filter(DomainVO.class, c.getOrderBy(), c.getAscending(), c.getOffset(), c.getLimit());
Long domainId = (Long) c.getCriteria(Criteria.ID);
String domainName = (String) c.getCriteria(Criteria.NAME);
@ -6323,7 +6324,7 @@ public class ManagementServerImpl implements ManagementServer {
// cleanup sub-domains first
for (DomainVO domain : domains) {
success = (success && cleanupDomain(domain.getId(), domain.getOwner()));
success = (success && cleanupDomain(domain.getId(), domain.getAccountId()));
}
}
@ -6360,10 +6361,10 @@ public class ManagementServerImpl implements ManagementServer {
if ((domains == null) || domains.isEmpty()) {
_domainDao.update(domainId, domainName);
DomainVO domain = _domainDao.findById(domainId);
saveEvent(new Long(1), domain.getOwner(), EventVO.LEVEL_INFO, EventTypes.EVENT_DOMAIN_UPDATE, "Domain, " + domainName + " was updated");
saveEvent(new Long(1), domain.getAccountId(), EventVO.LEVEL_INFO, EventTypes.EVENT_DOMAIN_UPDATE, "Domain, " + domainName + " was updated");
} else {
DomainVO domain = _domainDao.findById(domainId);
saveEvent(new Long(1), domain.getOwner(), EventVO.LEVEL_ERROR, EventTypes.EVENT_DOMAIN_UPDATE, "Failed to update domain " + domain.getName() + " with name " + domainName + ", name in use.");
saveEvent(new Long(1), domain.getAccountId(), EventVO.LEVEL_ERROR, EventTypes.EVENT_DOMAIN_UPDATE, "Failed to update domain " + domain.getName() + " with name " + domainName + ", name in use.");
}
}
@ -6705,12 +6706,12 @@ public class ManagementServerImpl implements ManagementServer {
for (String accountName : accountNames) {
Account permittedAccount = _accountDao.findActiveAccount(accountName, domainId);
if (permittedAccount != null) {
if (permittedAccount.getId().longValue() == account.getId().longValue()) {
if (permittedAccount.getId() == account.getId()) {
continue; // don't grant permission to the template owner, they implicitly have permission
}
LaunchPermissionVO existingPermission = _launchPermissionDao.findByTemplateAndAccount(templateId, permittedAccount.getId().longValue());
LaunchPermissionVO existingPermission = _launchPermissionDao.findByTemplateAndAccount(templateId, permittedAccount.getId());
if (existingPermission == null) {
LaunchPermissionVO launchPermission = new LaunchPermissionVO(templateId, permittedAccount.getId().longValue());
LaunchPermissionVO launchPermission = new LaunchPermissionVO(templateId, permittedAccount.getId());
_launchPermissionDao.persist(launchPermission);
}
} else {

View File

@ -18,23 +18,23 @@
package com.cloud.servlet;
import java.io.IOException;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.log4j.Logger;
import com.cloud.api.BaseCmd;
import com.cloud.host.HostVO;
import com.cloud.server.ManagementServer;
@ -297,7 +297,7 @@ public class ConsoleProxyServlet extends HttpServlet {
{
case User :
userVm = _ms.findUserVMInstanceById(vmId);
if(userVm.getAccountId() != accountObj.getId().longValue() && accountObj.getType() != Account.ACCOUNT_TYPE_ADMIN) {
if(userVm.getAccountId() != accountObj.getId() && accountObj.getType() != Account.ACCOUNT_TYPE_ADMIN) {
if(s_logger.isDebugEnabled())
s_logger.debug("VM access is denied. VM owner account " + userVm.getAccountId()
+ " does not match the account id in session " + accountObj.getId());
@ -411,7 +411,7 @@ public class ConsoleProxyServlet extends HttpServlet {
if (account.getType() == Account.ACCOUNT_TYPE_NORMAL) {
requestParameters.put(BaseCmd.Properties.USER_ID.getName(), new String[] { user.getId().toString() });
requestParameters.put(BaseCmd.Properties.ACCOUNT.getName(), new String[] { account.getAccountName() });
requestParameters.put(BaseCmd.Properties.DOMAIN_ID.getName(), new String[] { account.getDomainId().toString() });
requestParameters.put(BaseCmd.Properties.DOMAIN_ID.getName(), new String[] { Long.toString(account.getDomainId()) });
requestParameters.put(BaseCmd.Properties.ACCOUNT_OBJ.getName(), new Object[] { account });
} else {
requestParameters.put(BaseCmd.Properties.USER_ID.getName(), new String[] { user.getId().toString() });

View File

@ -489,7 +489,7 @@ public class StorageManagerImpl implements StorageManager {
volume.setDataCenterId(dc.getId());
volume.setPodId(null);
volume.setAccountId(accountId);
volume.setDomainId(account.getDomainId().longValue());
volume.setDomainId(account.getDomainId());
volume.setMirrorState(MirrorState.NOT_MIRRORED);
if (diskOffering != null) {
volume.setDiskOfferingId(diskOffering.getId());
@ -573,7 +573,7 @@ public class StorageManagerImpl implements StorageManager {
createdVolume.setPoolType(pool.getPoolType());
createdVolume.setFolder(volumeFolder);
createdVolume.setPath(volumeUUID);
createdVolume.setDomainId(account.getDomainId().longValue());
createdVolume.setDomainId(account.getDomainId());
} else {
createdVolume.setStatus(AsyncInstanceCreateStatus.Corrupted);
createdVolume.setDestroyed(true);
@ -1577,14 +1577,14 @@ public class StorageManagerImpl implements StorageManager {
volume.setDataCenterId(dc.getId());
volume.setPodId(null);
volume.setAccountId(accountId);
volume.setDomainId(account.getDomainId().longValue());
volume.setDomainId(account.getDomainId());
volume.setMirrorState(MirrorState.NOT_MIRRORED);
volume.setDiskOfferingId(diskOffering.getId());
volume.setStorageResourceType(Storage.StorageResourceType.STORAGE_POOL);
volume.setInstanceId(null);
volume.setUpdated(new Date());
volume.setStatus(AsyncInstanceCreateStatus.Creating);
volume.setDomainId(account.getDomainId().longValue());
volume.setDomainId(account.getDomainId());
volume = _volsDao.persist(volume);
AsyncJobExecutor asyncExecutor = BaseAsyncJobExecutor.getCurrentExecutor();

View File

@ -102,4 +102,6 @@ public interface AccountManager extends Manager {
AccountVO getSystemAccount();
}

View File

@ -18,6 +18,7 @@
package com.cloud.vm;
import java.util.List;
import java.util.Map;
import javax.ejb.Local;
@ -35,15 +36,25 @@ public class MauriceMoss implements VmManager {
@Inject private StorageManager _storageMgr;
@Inject private NetworkManager _networkMgr;
@Override
public VMInstanceVO allocate(VMInstanceVO vm,
ServiceOfferingVO serviceOffering,
NetworkOfferingVO[] networkOfferings,
DiskOfferingVO[] diskOffering,
ServiceOfferingVO serviceOffering,
Long rootSize,
List<NetworkOfferingVO> networkOfferings,
Map<DiskOfferingVO, Long> diskOfferings,
DataCenterVO dc,
AccountVO account) {
return null;
AccountVO owner) {
return null;
}
public VMInstanceVO allocate(VMInstanceVO vm,
ServiceOfferingVO serviceOffering,
Long rootSize,
List<NetworkOfferingVO> networkOfferings,
DiskOfferingVO dataOffering,
Long dataSize,
DataCenterVO dc,
AccountVO owner) {
return null;
}
@Override

View File

@ -69,6 +69,15 @@ public class NicVO implements Nic {
@Column(name="state")
@Enumerated(value=EnumType.STRING)
State state;
@Column(name="name")
String conciergeName;
@Column(name="reservation_id")
String reservationId;
@Column(name="device_id")
int deviceId;
@Override
public String getIp4Address() {
@ -103,4 +112,29 @@ public class NicVO implements Nic {
public long getNetworkProfileId() {
return networkProfileId;
}
@Override
public long getDeviceId() {
return deviceId;
}
public String getConciergeName() {
return conciergeName;
}
public String getReservationId() {
return reservationId;
}
public void setReservationId(String id) {
this.reservationId = id;
}
public void setConciergeName(String conciergeName) {
this.conciergeName = conciergeName;
}
public void setDeviceId(int deviceId) {
this.deviceId = deviceId;
}
}

View File

@ -137,7 +137,6 @@ import com.cloud.storage.StoragePoolVO;
import com.cloud.storage.VMTemplateHostVO;
import com.cloud.storage.VMTemplateStorageResourceAssoc.Status;
import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.VirtualMachineTemplate.BootloaderType;
import com.cloud.storage.Volume;
import com.cloud.storage.Volume.VolumeType;
import com.cloud.storage.VolumeVO;
@ -151,6 +150,7 @@ import com.cloud.storage.dao.StoragePoolHostDao;
import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.storage.dao.VMTemplateHostDao;
import com.cloud.storage.dao.VolumeDao;
import com.cloud.template.VirtualMachineTemplate.BootloaderType;
import com.cloud.user.AccountManager;
import com.cloud.user.AccountVO;
import com.cloud.user.User;
@ -1444,7 +1444,7 @@ public class UserVmManagerImpl implements UserVmManager {
while ((pod = _agentMgr.findPod(template, offering, dc, account.getId(), podsToAvoid)) != null) {
if (vm == null) {
vm = new UserVmVO(vmId, name, template.getId(), guestOSId, accountId, account.getDomainId().longValue(),
vm = new UserVmVO(vmId, name, template.getId(), guestOSId, accountId, account.getDomainId(),
serviceOfferingId, null, null, router.getGuestNetmask(),
null,null,null,
routerId, pod.first().getId(), dataCenterId,
@ -2651,7 +2651,7 @@ public class UserVmManagerImpl implements UserVmManager {
}
routerId = router.getId();
}
String guestIp = _ipAddressDao.assignIpAddress(accountId, account.getDomainId().longValue(), guestVlan.getId(), false);
String guestIp = _ipAddressDao.assignIpAddress(accountId, account.getDomainId(), guestVlan.getId(), false);
if (guestIp == null) {
s_logger.debug("No guest IP available in pod id=" + pod.first().getId());
avoids.add(pod.first().getId());
@ -2662,7 +2662,7 @@ public class UserVmManagerImpl implements UserVmManager {
String externalMacAddress = macAddresses[1];
Long externalVlanDbId = null;
vm = new UserVmVO(vmId, name, templateId, guestOSId, accountId, account.getDomainId().longValue(),
vm = new UserVmVO(vmId, name, templateId, guestOSId, accountId, account.getDomainId(),
serviceOfferingId, guestMacAddress, guestIp, guestVlan.getVlanNetmask(),
null, externalMacAddress, externalVlanDbId,
routerId, pod.first().getId(), dataCenterId,
@ -2820,7 +2820,7 @@ public class UserVmManagerImpl implements UserVmManager {
publicIpAddr = publicIp.ipaddr;
publicIpNetMask = publicIp.netMask;
}
vm = new UserVmVO(vmId, name, templateId, guestOSId, accountId, account.getDomainId().longValue(),
vm = new UserVmVO(vmId, name, templateId, guestOSId, accountId, account.getDomainId(),
serviceOfferingId, guestMacAddress, publicIpAddr, publicIpNetMask,
null, externalMacAddress, null,
routerId, pod.first().getId(), dataCenterId,

View File

@ -18,6 +18,7 @@
package com.cloud.vm;
import java.util.List;
import java.util.Map;
import com.cloud.dc.DataCenterVO;
import com.cloud.offerings.NetworkOfferingVO;
@ -31,11 +32,22 @@ import com.cloud.user.AccountVO;
public interface VmManager {
VMInstanceVO allocate(VMInstanceVO vm,
ServiceOfferingVO serviceOffering,
NetworkOfferingVO[] networkOfferings,
DiskOfferingVO[] diskOffering,
ServiceOfferingVO serviceOffering,
Long rootSize,
List<NetworkOfferingVO> networkOfferings,
Map<DiskOfferingVO, Long> diskOfferings,
DataCenterVO dc,
AccountVO owner);
VMInstanceVO allocate(VMInstanceVO vm,
ServiceOfferingVO serviceOffering,
Long rootSize,
List<NetworkOfferingVO> networkOfferings,
DiskOfferingVO dataOffering,
Long dataSize,
DataCenterVO dc,
AccountVO account);
AccountVO owner);
void create(VmCharacteristics vm, List<DiskCharacteristics> disks, List<NetworkCharacteristics> networks);

Some files were not shown because too many files have changed in this diff Show More