// 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.util.Date; 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.Temporal; import javax.persistence.TemporalType; import org.apache.cloudstack.api.Identity; import org.apache.cloudstack.api.InternalIdentity; import com.cloud.host.Host.Type; import com.cloud.host.Status; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.org.Cluster; import com.cloud.resource.ResourceState; import com.cloud.utils.db.GenericDao; import org.apache.cloudstack.outofbandmanagement.OutOfBandManagement; /** * Host DB view. * */ @Entity @Table(name = "host_view") public class HostJoinVO extends BaseViewVO implements InternalIdentity, Identity { @Id @Column(name = "id") private long id; @Column(name = "uuid") private String uuid; @Column(name = "name") private String name; @Column(name = "status") private Status status = null; @Column(name = "type") @Enumerated(value = EnumType.STRING) private Type type; @Column(name = "private_ip_address") private String privateIpAddress; @Column(name = "disconnected") @Temporal(value = TemporalType.TIMESTAMP) private Date disconnectedOn; @Column(name = "version") private String version; @Column(name = "hypervisor_type") @Enumerated(value = EnumType.STRING) private HypervisorType hypervisorType; @Column(name = "hypervisor_version") private String hypervisorVersion; @Column(name = "capabilities") private String caps; @Column(name = "last_ping") private long lastPinged; @Column(name = GenericDao.CREATED_COLUMN) private Date created; @Column(name = GenericDao.REMOVED_COLUMN) private Date removed; @Column(name = "oobm_enabled") private boolean outOfBandManagementEnabled = false; @Column(name = "oobm_power_state") @Enumerated(value = EnumType.STRING) private OutOfBandManagement.PowerState outOfBandManagementPowerState; @Column(name = "resource_state") @Enumerated(value = EnumType.STRING) private ResourceState resourceState; @Column(name = "mgmt_server_id") private Long managementServerId; @Column(name = "cpu_sockets") private Integer cpuSockets; @Column(name = "cpus") private Integer cpus; @Column(name = "speed") private Long speed; @Column(name = "ram") private long totalMemory; @Column(name = "cluster_id") private long clusterId; @Column(name = "cluster_uuid") private String clusterUuid; @Column(name = "cluster_name") private String clusterName; @Column(name = "cluster_type") @Enumerated(value = EnumType.STRING) Cluster.ClusterType clusterType; @Column(name = "data_center_id") private long zoneId; @Column(name = "data_center_uuid") private String zoneUuid; @Column(name = "data_center_name") private String zoneName; @Column(name = "pod_id") private long podId; @Column(name = "pod_uuid") private String podUuid; @Column(name = "pod_name") private String podName; @Column(name = "guest_os_category_id") private long osCategoryId; @Column(name = "guest_os_category_uuid") private String osCategoryUuid; @Column(name = "guest_os_category_name") private String osCategoryName; @Column(name = "tag") private String tag; @Column(name = "memory_used_capacity") private long memUsedCapacity; @Column(name = "memory_reserved_capacity") private long memReservedCapacity; @Column(name = "cpu_used_capacity") private long cpuUsedCapacity; @Column(name = "cpu_reserved_capacity") private long cpuReservedCapacity; @Column(name = "job_id") private Long jobId; @Column(name = "job_uuid") private String jobUuid; @Column(name = "job_status") private int jobStatus; @Override public long getId() { return this.id; } @Override public String getUuid() { return uuid; } public String getVersion() { return version; } public long getZoneId() { return zoneId; } public String getZoneUuid() { return zoneUuid; } public String getZoneName() { return zoneName; } public String getName() { return name; } public Status getStatus() { return status; } public Type getType() { return type; } public String getPrivateIpAddress() { return privateIpAddress; } public Date getDisconnectedOn() { return disconnectedOn; } public HypervisorType getHypervisorType() { return hypervisorType; } public String getHypervisorVersion() { return hypervisorVersion; } public String getCapabilities() { return caps; } public long getLastPinged() { return lastPinged; } public Date getCreated() { return created; } public Date getRemoved() { return removed; } public boolean isOutOfBandManagementEnabled() { return outOfBandManagementEnabled; } public OutOfBandManagement.PowerState getOutOfBandManagementPowerState() { return outOfBandManagementPowerState; } public ResourceState getResourceState() { return resourceState; } public Long getManagementServerId() { return managementServerId; } public Integer getCpuSockets() { return cpuSockets; } public Integer getCpus() { return cpus; } public Long getSpeed() { return speed; } public long getTotalMemory() { return totalMemory; } public long getClusterId() { return clusterId; } public String getClusterUuid() { return clusterUuid; } public String getClusterName() { return clusterName; } public Cluster.ClusterType getClusterType() { return clusterType; } public long getOsCategoryId() { return osCategoryId; } public String getOsCategoryUuid() { return osCategoryUuid; } public String getOsCategoryName() { return osCategoryName; } public Long getJobId() { return jobId; } public String getJobUuid() { return jobUuid; } public int getJobStatus() { return jobStatus; } public long getPodId() { return podId; } public String getPodUuid() { return podUuid; } public String getPodName() { return podName; } public long getMemUsedCapacity() { return memUsedCapacity; } public long getMemReservedCapacity() { return memReservedCapacity; } public long getCpuUsedCapacity() { return cpuUsedCapacity; } public long getCpuReservedCapacity() { return cpuReservedCapacity; } public String getTag() { return tag; } }