| // 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.capacity; | |
| 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 javax.persistence.Temporal; | |
| import javax.persistence.TemporalType; | |
| import javax.persistence.Transient; | |
| import com.cloud.utils.db.GenericDao; | |
| @Entity | |
| @Table(name = "op_host_capacity") | |
| public class CapacityVO implements Capacity { | |
| @Id | |
| @GeneratedValue(strategy = GenerationType.IDENTITY) | |
| @Column(name = "id") | |
| private long id; | |
| @Column(name = "host_id") | |
| private Long hostOrPoolId; | |
| @Column(name = "data_center_id") | |
| private Long dataCenterId; | |
| @Column(name = "pod_id") | |
| private Long podId; | |
| @Column(name = "cluster_id") | |
| private Long clusterId; | |
| @Column(name = "used_capacity") | |
| private long usedCapacity; | |
| @Column(name = "reserved_capacity") | |
| private long reservedCapacity; | |
| @Column(name = "total_capacity") | |
| private long totalCapacity; | |
| @Column(name = "capacity_type") | |
| private short capacityType; | |
| @Column(name = "capacity_state") | |
| private CapacityState capacityState; | |
| @Column(name = GenericDao.CREATED_COLUMN) | |
| protected Date created; | |
| @Column(name = "update_time", updatable = true, nullable = true) | |
| @Temporal(value = TemporalType.TIMESTAMP) | |
| protected Date updateTime; | |
| @Transient | |
| private Float usedPercentage; | |
| public CapacityVO() { | |
| } | |
| public CapacityVO(Long hostId, Long dataCenterId, Long podId, Long clusterId, long usedCapacity, long totalCapacity, short capacityType) { | |
| this.hostOrPoolId = hostId; | |
| this.dataCenterId = dataCenterId; | |
| this.podId = podId; | |
| this.clusterId = clusterId; | |
| this.usedCapacity = usedCapacity; | |
| this.totalCapacity = totalCapacity; | |
| this.capacityType = capacityType; | |
| this.updateTime = new Date(); | |
| this.capacityState = CapacityState.Enabled; | |
| } | |
| public CapacityVO(Long dataCenterId, Long podId, Long clusterId, short capacityType, float usedPercentage) { | |
| this.dataCenterId = dataCenterId; | |
| this.podId = podId; | |
| this.clusterId = clusterId; | |
| this.capacityType = capacityType; | |
| this.usedPercentage = usedPercentage; | |
| this.capacityState = CapacityState.Enabled; | |
| } | |
| @Override | |
| public long getId() { | |
| return id; | |
| } | |
| @Override | |
| public Long getHostOrPoolId() { | |
| return hostOrPoolId; | |
| } | |
| public void setHostId(Long hostId) { | |
| this.hostOrPoolId = hostId; | |
| } | |
| @Override | |
| public Long getDataCenterId() { | |
| return dataCenterId; | |
| } | |
| public void setDataCenterId(Long dataCenterId) { | |
| this.dataCenterId = dataCenterId; | |
| } | |
| @Override | |
| public Long getPodId() { | |
| return podId; | |
| } | |
| public void setPodId(long podId) { | |
| this.podId = new Long(podId); | |
| } | |
| @Override | |
| public Long getClusterId() { | |
| return clusterId; | |
| } | |
| public void setClusterId(long clusterId) { | |
| this.clusterId = new Long(clusterId); | |
| } | |
| @Override | |
| public long getUsedCapacity() { | |
| return usedCapacity; | |
| } | |
| public void setUsedCapacity(long usedCapacity) { | |
| this.usedCapacity = usedCapacity; | |
| this.setUpdateTime(new Date()); | |
| } | |
| @Override | |
| public long getReservedCapacity() { | |
| return reservedCapacity; | |
| } | |
| public void setReservedCapacity(long reservedCapacity) { | |
| this.reservedCapacity = reservedCapacity; | |
| this.setUpdateTime(new Date()); | |
| } | |
| @Override | |
| public long getTotalCapacity() { | |
| return totalCapacity; | |
| } | |
| public void setTotalCapacity(long totalCapacity) { | |
| this.totalCapacity = totalCapacity; | |
| this.setUpdateTime(new Date()); | |
| } | |
| @Override | |
| public short getCapacityType() { | |
| return capacityType; | |
| } | |
| public void setCapacityType(short capacityType) { | |
| this.capacityType = capacityType; | |
| } | |
| public CapacityState getCapacityState() { | |
| return capacityState; | |
| } | |
| public void setCapacityState(CapacityState capacityState) { | |
| this.capacityState = capacityState; | |
| } | |
| public Date getCreated() { | |
| return created; | |
| } | |
| public Date getUpdateTime() { | |
| return updateTime; | |
| } | |
| public void setUpdateTime(Date updateTime) { | |
| this.updateTime = updateTime; | |
| } | |
| @Override | |
| public Float getUsedPercentage() { | |
| return usedPercentage; | |
| } | |
| public void setUsedPercentage(float usedPercentage) { | |
| this.usedPercentage = usedPercentage; | |
| } | |
| @Override | |
| public String getUuid() { | |
| return null; //To change body of implemented methods use File | Settings | File Templates. | |
| } | |
| } |