// Licensed to the Apache Software Foundation (ASF) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information // regarding copyright ownership. The ASF licenses this file // to you under the Apache License, Version 2.0 (the // "License"); you may not use this file except in compliance // with the License. You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, // software distributed under the License is distributed on an // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. package com.cloud.api.query.vo; import java.net.URI; import java.util.Date; import java.util.Map; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.EnumType; import javax.persistence.Enumerated; import javax.persistence.Id; import javax.persistence.Table; import javax.persistence.Transient; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.network.Network.GuestType; import com.cloud.network.Networks.TrafficType; import com.cloud.server.ResourceTag.TaggedResourceType; import com.cloud.storage.Volume; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.utils.db.Encrypt; import com.cloud.utils.db.GenericDao; import com.cloud.vm.VirtualMachine; import com.cloud.vm.VirtualMachine.State; @Entity @Table(name="user_vm_view") public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity { @Id @Column(name="id", updatable=false, nullable = false) private long id; @Column(name="name", updatable=false, nullable=false, length=255) private String name = null; @Column(name="display_name", updatable=false, nullable=false, length=255) private String displayName = null; @Column(name="account_id") private long accountId; @Column(name="account_uuid") private String accountUuid; @Column(name="account_name") private String accountName = null; @Column(name="account_type") private short accountType; @Column(name="domain_id") private long domainId; @Column(name="domain_uuid") private String domainUuid; @Column(name="domain_name") private String domainName = null; @Column(name="domain_path") private String domainPath = null; @Column(name="instance_group_id") private long instanceGroupId; @Column(name="instance_group_uuid") private String instanceGroupUuid; @Column(name="instance_group_name") private String instanceGroupName; @Column(name="vm_type", updatable=false, nullable=false, length=32) @Enumerated(value=EnumType.STRING) protected VirtualMachine.Type type; /** * Note that state is intentionally missing the setter. Any updates to * the state machine needs to go through the DAO object because someone * else could be updating it as well. */ @Enumerated(value=EnumType.STRING) @Column(name="state", updatable=true, nullable=false, length=32) private State state = null; @Column(name=GenericDao.CREATED_COLUMN) private Date created; @Column(name=GenericDao.REMOVED_COLUMN) private Date removed; @Column(name="instance_name", updatable=true, nullable=false) private String instanceName; @Column(name="guest_os_id", nullable=false, length=17) private long guestOsId; @Column(name="guest_os_uuid") private String guestOsUuid; @Column(name="hypervisor_type") @Enumerated(value=EnumType.STRING) private HypervisorType hypervisorType; @Column(name="ha_enabled", updatable=true, nullable=true) private boolean haEnabled; @Encrypt @Column(name="vnc_password", updatable=true, nullable=false, length=255) protected String vncPassword; @Column(name="limit_cpu_use", updatable=true, nullable=true) private boolean limitCpuUse; @Column(name="last_host_id", updatable=true, nullable=true) private Long lastHostId; @Column(name="private_ip_address", updatable=true) private String privateIpAddress; @Column(name="private_mac_address", updatable=true, nullable=true) private String privateMacAddress; @Column(name="pod_id", updatable=true, nullable=false) private Long podId; @Column(name="pod_uuid") private String podUuid; @Column(name="data_center_id") private long dataCenterId; @Column(name="data_center_uuid") private String dataCenterUuid; @Column(name="data_center_name") private String dataCenterName = null; @Column(name="security_group_enabled") private boolean securityGroupEnabled; @Column(name="host_id", updatable=true, nullable=true) private long hostId; @Column(name="host_uuid") private String hostUuid; @Column(name="host_name", nullable=false) private String hostName; @Column(name="template_id", updatable=true, nullable=true, length=17) private long templateId; @Column(name="template_uuid") private String templateUuid; @Column(name="template_name") private String templateName; @Column(name="template_display_text", length=4096) private String templateDisplayText; @Column(name="password_enabled") private boolean passwordEnabled; @Column(name="iso_id", updatable=true, nullable=true, length=17) private long isoId; @Column(name="iso_uuid") private String isoUuid; @Column(name="iso_name") private String isoName; @Column(name="iso_display_text", length=4096) private String isoDisplayText; @Column(name="service_offering_id") private long serviceOfferingId; @Column(name="service_offering_uuid") private String serviceOfferingUuid; @Column(name="service_offering_name") private String serviceOfferingName; @Column(name="cpu") private int cpu; @Column(name="speed") private int speed; @Column(name="ram_size") private int ramSize; @Column(name="pool_id", updatable=false, nullable = false) private long poolId; @Column(name="pool_uuid") private String poolUuid; @Column(name="pool_type", updatable=false, nullable=false, length=32) @Enumerated(value=EnumType.STRING) private StoragePoolType poolType; @Column(name = "volume_id") private long volume_id; @Column(name = "volume_uuid") private String volume_uuid; @Column(name = "volume_device_id") private Long volumeDeviceId = null; @Column(name = "volume_type") @Enumerated(EnumType.STRING) private Volume.Type volumeType; @Column(name = "security_group_id") private long securityGroupId; @Column(name = "security_group_uuid") private String securityGroupUuid; @Column(name = "security_group_name") private String securityGroupName; @Column(name = "security_group_description") private String securityGroupDescription; @Column(name = "vpc_id") private long vpcId; @Column(name = "vpc_uuid") private String vpcUuid; @Column(name = "nic_id") private long nicId; @Column(name = "nic_uuid") private String nicUuid; @Column(name = "is_default_nic") private boolean isDefaultNic; @Column(name = "ip_address") private String ipAddress; @Column(name = "gateway") private String gateway; @Column(name = "netmask") private String netmask; @Column(name = "ip6_address") private String ip6Address; @Column(name = "ip6_gateway") private String ip6Gateway; @Column(name = "ip6_cidr") private String ip6Cidr; @Column(name = "mac_address") private String macAddress; @Column(name = "broadcast_uri") private URI broadcastUri; @Column(name = "isolation_uri") private URI isolationUri; @Column(name="network_id") private long networkId; @Column(name="network_uuid") private String networkUuid; @Column(name="traffic_type") @Enumerated(value=EnumType.STRING) private TrafficType trafficType; @Column(name="guest_type") @Enumerated(value=EnumType.STRING) private GuestType guestType; @Column(name = "public_ip_id") private long publicIpId; @Column(name = "public_ip_uuid") private String publicIpUuid; @Column(name = "public_ip_address") private String publicIpAddress; @Column(name="user_data", updatable=true, nullable=true, length=2048) private String userData; @Column(name="project_id") private long projectId; @Column(name="project_uuid") private String projectUuid; @Column(name="project_name") private String projectName; @Column(name="keypair_name") private String keypairName; @Column(name="job_id") private long jobId; @Column(name="job_uuid") private String jobUuid; @Column(name="job_status") private int jobStatus; @Column(name="tag_id") private long tagId; @Column(name="tag_uuid") private String tagUuid; @Column(name="tag_key") private String tagKey; @Column(name="tag_value") private String tagValue; @Column(name="tag_domain_id") private long tagDomainId; @Column(name="tag_account_id") private long tagAccountId; @Column(name="tag_resource_id") private long tagResourceId; @Column(name="tag_resource_uuid") private String tagResourceUuid; @Column(name="tag_resource_type") @Enumerated(value=EnumType.STRING) private TaggedResourceType tagResourceType; @Column(name="tag_customer") private String tagCustomer; transient String password; @Transient Map details; @Column(name="uuid") private String uuid; public UserVmJoinVO() { } @Override public long getId() { return id; } @Override public void setId(long id) { this.id = id; } @Override public String getUuid() { return uuid; } public void setUuid(String uuid) { this.uuid = uuid; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getDisplayName() { return displayName; } public void setDisplayName(String displayName) { this.displayName = displayName; } @Override public long getAccountId() { return accountId; } public void setAccountId(long accountId) { this.accountId = accountId; } @Override public String getAccountUuid() { return accountUuid; } public void setAccountUuid(String accountUuid) { this.accountUuid = accountUuid; } @Override public String getAccountName() { return accountName; } public void setAccountName(String accountName) { this.accountName = accountName; } @Override public short getAccountType() { return accountType; } public void setAccountType(short accountType) { this.accountType = accountType; } @Override public long getDomainId() { return domainId; } public void setDomainId(long domainId) { this.domainId = domainId; } @Override public String getDomainUuid() { return domainUuid; } public void setDomainUuid(String domainUuid) { this.domainUuid = domainUuid; } @Override public String getDomainName() { return domainName; } public void setDomainName(String domainName) { this.domainName = domainName; } @Override public String getDomainPath() { return domainPath; } public void setDomainPath(String domainPath) { this.domainPath = domainPath; } public long getInstanceGroupId() { return instanceGroupId; } public void setInstanceGroupId(long instanceGroupId) { this.instanceGroupId = instanceGroupId; } public String getInstanceGroupUuid() { return instanceGroupUuid; } public void setInstanceGroupUuid(String instanceGroupUuid) { this.instanceGroupUuid = instanceGroupUuid; } public String getInstanceGroupName() { return instanceGroupName; } public void setInstanceGroupName(String instanceGroupName) { this.instanceGroupName = instanceGroupName; } public VirtualMachine.Type getType() { return type; } public void setType(VirtualMachine.Type type) { this.type = type; } public State getState() { return state; } public void setState(State state) { this.state = state; } public Date getCreated() { return created; } public void setCreated(Date created) { this.created = created; } public Date getRemoved() { return removed; } public void setRemoved(Date removed) { this.removed = removed; } public String getInstanceName() { return instanceName; } public void setInstanceName(String instanceName) { this.instanceName = instanceName; } public long getGuestOSId() { return guestOsId; } public void setGuestOSId(long guestOSId) { this.guestOsId = guestOSId; } public String getGuestOsUuid() { return guestOsUuid; } public void setGuestOsUuid(String guestOsUuid) { this.guestOsUuid = guestOsUuid; } public HypervisorType getHypervisorType() { return hypervisorType; } public void setHypervisorType(HypervisorType hypervisorType) { this.hypervisorType = hypervisorType; } public boolean isHaEnabled() { return haEnabled; } public void setHaEnabled(boolean haEnabled) { this.haEnabled = haEnabled; } public void setVncPassword(String vncPassword) { this.vncPassword = vncPassword; } public String getVncPassword() { return vncPassword; } public String getPrivateIpAddress() { return privateIpAddress; } public void setPrivateIpAddress(String privateIpAddress) { this.privateIpAddress = privateIpAddress; } public String getPrivateMacAddress() { return privateMacAddress; } public void setPrivateMacAddress(String privateMacAddress) { this.privateMacAddress = privateMacAddress; } public Long getLastHostId() { return lastHostId; } public void setLastHostId(Long lastHostId) { this.lastHostId = lastHostId; } public Long getPodId() { return podId; } public void setPodId(Long podIdToDeployIn) { this.podId = podIdToDeployIn; } public String getPodUuid() { return podUuid; } public void setPodUuid(String podUuid) { this.podUuid = podUuid; } public long getDataCenterId() { return dataCenterId; } public void setDataCenterId(long dataCenterIdToDeployIn) { this.dataCenterId = dataCenterIdToDeployIn; } public boolean limitCpuUse() { return limitCpuUse; } public void setLimitCpuUse(boolean value) { limitCpuUse = value; } public String getDataCenterUuid() { return dataCenterUuid; } public void setDataCenterUuid(String zoneUuid) { this.dataCenterUuid = zoneUuid; } public String getDataCenterName() { return dataCenterName; } public void setDataCenterName(String zoneName) { this.dataCenterName = zoneName; } public boolean isSecurityGroupEnabled() { return securityGroupEnabled; } public void setSecurityGroupEnabled(boolean securityGroupEnabled) { this.securityGroupEnabled = securityGroupEnabled; } public Long getHostId() { return hostId; } public void setHostId(long hostId) { this.hostId = hostId; } public String getHostUuid() { return hostUuid; } public void setHostUuid(String hostUuid) { this.hostUuid = hostUuid; } public String getHostName() { return hostName; } public void setHostName(String hostName) { this.hostName = hostName; } public long getTemplateId() { return templateId; } public void setTemplateId(long templateId) { this.templateId = templateId; } public String getTemplateUuid() { return templateUuid; } public void setTemplateUuid(String templateUuid) { this.templateUuid = templateUuid; } public String getTemplateName() { return templateName; } public void setTemplateName(String templateName) { this.templateName = templateName; } public String getTemplateDisplayText() { return templateDisplayText; } public void setTemplateDisplayText(String templateDisplayText) { this.templateDisplayText = templateDisplayText; } public boolean isPasswordEnabled() { return passwordEnabled; } public void setPasswordEnabled(boolean passwordEnabled) { this.passwordEnabled = passwordEnabled; } public Long getIsoId() { return isoId; } public void setIsoId(long isoId) { this.isoId = isoId; } public String getIsoUuid() { return isoUuid; } public void setIsoUuid(String isoUuid) { this.isoUuid = isoUuid; } public String getIsoName() { return isoName; } public void setIsoName(String isoName) { this.isoName = isoName; } public String getIsoDisplayText() { return isoDisplayText; } public void setIsoDisplayText(String isoDisplayText) { this.isoDisplayText = isoDisplayText; } public String getServiceOfferingUuid() { return serviceOfferingUuid; } public void setServiceOfferingUuid(String serviceOfferingUuid) { this.serviceOfferingUuid = serviceOfferingUuid; } public String getServiceOfferingName() { return serviceOfferingName; } public void setServiceOfferingName(String serviceOfferingName) { this.serviceOfferingName = serviceOfferingName; } public int getCpu() { return cpu; } public void setCpu(int cpu) { this.cpu = cpu; } public int getSpeed() { return speed; } public void setSpeed(int speed) { this.speed = speed; } public int getRamSize() { return ramSize; } public void setRamSize(int ramSize) { this.ramSize = ramSize; } public long getPoolId() { return poolId; } public void setPoolId(long poolId) { this.poolId = poolId; } public StoragePoolType getPoolType() { return poolType; } public void setPoolType(StoragePoolType poolType) { this.poolType = poolType; } public long getVolume_id() { return volume_id; } public void setVolume_id(long volume_id) { this.volume_id = volume_id; } public Long getVolumeDeviceId() { return volumeDeviceId; } public void setVolumeDeviceId(Long volumeDeviceId) { this.volumeDeviceId = volumeDeviceId; } public Volume.Type getVolumeType() { return volumeType; } public void setVolumeType(Volume.Type volumeType) { this.volumeType = volumeType; } public long getSecurityGroupId() { return securityGroupId; } public void setSecurityGroupId(long securityGroupId) { this.securityGroupId = securityGroupId; } public String getSecurityGroupName() { return securityGroupName; } public void setSecurityGroupName(String securityGroupName) { this.securityGroupName = securityGroupName; } public String getSecurityGroupDescription() { return securityGroupDescription; } public void setSecurityGroupDescription(String securityGroupDescription) { this.securityGroupDescription = securityGroupDescription; } public long getVpcId() { return vpcId; } public void setVpcId(long vpcId) { this.vpcId = vpcId; } public long getNicId() { return nicId; } public void setNicId(long nicId) { this.nicId = nicId; } public boolean isDefaultNic() { return isDefaultNic; } public void setDefaultNic(boolean isDefaultNic) { this.isDefaultNic = isDefaultNic; } public String getIpAddress() { return ipAddress; } public void setIpAddress(String ipAddress) { this.ipAddress = ipAddress; } public String getGateway() { return gateway; } public void setGateway(String gateway) { this.gateway = gateway; } public String getNetmask() { return netmask; } public void setNetmask(String netmask) { this.netmask = netmask; } public String getMacAddress() { return macAddress; } public void setMacAddress(String macAddress) { this.macAddress = macAddress; } public URI getBroadcastUri() { return broadcastUri; } public void setBroadcastUri(URI broadcastUri) { this.broadcastUri = broadcastUri; } public URI getIsolationUri() { return isolationUri; } public void setIsolationUri(URI isolationUri) { this.isolationUri = isolationUri; } public long getNetworkId() { return networkId; } public void setNetworkId(long networkId) { this.networkId = networkId; } public TrafficType getTrafficType() { return trafficType; } public void setTrafficType(TrafficType trafficType) { this.trafficType = trafficType; } public GuestType getGuestType() { return guestType; } public void setGuestType(GuestType guestType) { this.guestType = guestType; } public long getPublicIpId() { return publicIpId; } public void setPublicIpId(long publicIpId) { this.publicIpId = publicIpId; } public String getPublicIpAddress() { return publicIpAddress; } public void setPublicIpAddress(String publicIpAddress) { this.publicIpAddress = publicIpAddress; } public long getServiceOfferingId() { return serviceOfferingId; } public void setServiceOfferingId(long serviceOfferingId) { this.serviceOfferingId = serviceOfferingId; } public Map getDetails() { return details; } public String getDetail(String name) { assert (details != null) : "Did you forget to load the details?"; return details != null ? details.get(name) : null; } public void setDetail(String name, String value) { assert (details != null) : "Did you forget to load the details?"; details.put(name, value); } public void setDetails(Map details) { this.details = details; } public void setUserData(String userData) { this.userData = userData; } public String getUserData() { return userData; } public long getGuestOsId() { return guestOsId; } public void setGuestOsId(long guestOsId) { this.guestOsId = guestOsId; } public long getProjectId() { return projectId; } public void setProjectId(long projectId) { this.projectId = projectId; } @Override public String getProjectUuid() { return projectUuid; } public void setProjectUuid(String projectUuid) { this.projectUuid = projectUuid; } @Override public String getProjectName() { return projectName; } public void setProjectName(String projectName) { this.projectName = projectName; } public String getKeypairName() { return keypairName; } public void setKeypairName(String keypairName) { this.keypairName = keypairName; } public long getTagId() { return tagId; } public void setTagId(long tagId) { this.tagId = tagId; } public String getTagUuid() { return tagUuid; } public void setTagUuid(String tagUuid) { this.tagUuid = tagUuid; } public String getTagKey() { return tagKey; } public void setTagKey(String tagKey) { this.tagKey = tagKey; } public String getTagValue() { return tagValue; } public void setTagValue(String tagValue) { this.tagValue = tagValue; } public long getTagDomainId() { return tagDomainId; } public void setTagDomainId(long tagDomainId) { this.tagDomainId = tagDomainId; } public long getTagAccountId() { return tagAccountId; } public void setTagAccountId(long tagAccountId) { this.tagAccountId = tagAccountId; } public long getTagResourceId() { return tagResourceId; } public void setTagResourceId(long tagResourceId) { this.tagResourceId = tagResourceId; } public String getTagResourceUuid() { return tagResourceUuid; } public void setTagResourceUuid(String tagResourceUuid) { this.tagResourceUuid = tagResourceUuid; } public TaggedResourceType getTagResourceType() { return tagResourceType; } public void setTagResourceType(TaggedResourceType tagResourceType) { this.tagResourceType = tagResourceType; } public String getTagCustomer() { return tagCustomer; } public void setTagCustomer(String tagCustomer) { this.tagCustomer = tagCustomer; } public boolean isLimitCpuUse() { return limitCpuUse; } public String getPoolUuid() { return poolUuid; } public void setPoolUuid(String poolUuid) { this.poolUuid = poolUuid; } public String getVolume_uuid() { return volume_uuid; } public void setVolume_uuid(String volume_uuid) { this.volume_uuid = volume_uuid; } public String getSecurityGroupUuid() { return securityGroupUuid; } public void setSecurityGroupUuid(String securityGroupUuid) { this.securityGroupUuid = securityGroupUuid; } public String getVpcUuid() { return vpcUuid; } public void setVpcUuid(String vpcUuid) { this.vpcUuid = vpcUuid; } public String getNicUuid() { return nicUuid; } public void setNicUuid(String nicUuid) { this.nicUuid = nicUuid; } public String getNetworkUuid() { return networkUuid; } public void setNetworkUuid(String networkUuid) { this.networkUuid = networkUuid; } public String getPublicIpUuid() { return publicIpUuid; } public void setPublicIpUuid(String publicIpUuid) { this.publicIpUuid = publicIpUuid; } public long getJobId() { return jobId; } public void setJobId(long jobId) { this.jobId = jobId; } public String getJobUuid() { return jobUuid; } public void setJobUuid(String jobUuid) { this.jobUuid = jobUuid; } public int getJobStatus() { return jobStatus; } public void setJobStatus(int jobStatus) { this.jobStatus = jobStatus; } transient String toString; @Override public String toString() { if (toString == null) { toString = new StringBuilder("VM[").append(id).append("|").append(hostName).append("]").toString(); } return toString; } public String getIp6Address() { return ip6Address; } public void setIp6Address(String ip6Address) { this.ip6Address = ip6Address; } public String getIp6Gateway() { return ip6Gateway; } public void setIp6Gateway(String ip6Gateway) { this.ip6Gateway = ip6Gateway; } public String getIp6Cidr() { return ip6Cidr; } public void setIp6Cidr(String ip6Cidr) { this.ip6Cidr = ip6Cidr; } }