diff --git a/framework/quota/src/main/java/org/apache/cloudstack/quota/dao/ServiceOfferingDao.java b/framework/quota/src/main/java/org/apache/cloudstack/quota/dao/ServiceOfferingDao.java deleted file mode 100644 index 8353977aa0d..00000000000 --- a/framework/quota/src/main/java/org/apache/cloudstack/quota/dao/ServiceOfferingDao.java +++ /dev/null @@ -1,25 +0,0 @@ -// 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 org.apache.cloudstack.quota.dao; - -import org.apache.cloudstack.quota.vo.ServiceOfferingVO; - -import com.cloud.utils.db.GenericDao; - -public interface ServiceOfferingDao extends GenericDao { - ServiceOfferingVO findServiceOffering(Long vmId, long serviceOfferingId); -} diff --git a/framework/quota/src/main/java/org/apache/cloudstack/quota/dao/ServiceOfferingDaoImpl.java b/framework/quota/src/main/java/org/apache/cloudstack/quota/dao/ServiceOfferingDaoImpl.java deleted file mode 100644 index 5b11cb3b7e9..00000000000 --- a/framework/quota/src/main/java/org/apache/cloudstack/quota/dao/ServiceOfferingDaoImpl.java +++ /dev/null @@ -1,83 +0,0 @@ -// 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 org.apache.cloudstack.quota.dao; - -import java.util.Map; - -import javax.inject.Inject; - -import org.apache.cloudstack.quota.vo.ServiceOfferingVO; -import org.apache.log4j.Logger; -import org.springframework.stereotype.Component; - -import com.cloud.event.UsageEventVO; -import com.cloud.utils.db.DB; -import com.cloud.utils.db.GenericDaoBase; -import com.cloud.utils.db.Transaction; -import com.cloud.utils.db.TransactionCallback; -import com.cloud.utils.db.TransactionLegacy; -import com.cloud.utils.db.TransactionStatus; -import com.cloud.utils.exception.CloudRuntimeException; - -@Component -@DB() -public class ServiceOfferingDaoImpl extends GenericDaoBase implements ServiceOfferingDao { - protected static final Logger s_logger = Logger.getLogger(ServiceOfferingDaoImpl.class); - - @Inject - UserVmDetailsDao userVmDetailsDao; - - @Override - public ServiceOfferingVO findServiceOffering(final Long vmId, final long serviceOfferingId) { - return Transaction.execute(TransactionLegacy.CLOUD_DB, new TransactionCallback() { - @Override - public ServiceOfferingVO doInTransaction(final TransactionStatus status) { - ServiceOfferingVO offering = findById(serviceOfferingId); - if (offering.isDynamic()) { - if (vmId == null) { - throw new CloudRuntimeException("missing argument vmId"); - } - offering.setDynamicFlag(true); - Map dynamicOffering = userVmDetailsDao.listDetailsKeyPairs(vmId); - return getcomputeOffering(offering, dynamicOffering); - } - return offering; - } - }); - } - - private ServiceOfferingVO getcomputeOffering(final ServiceOfferingVO serviceOffering, final Map customParameters) { - return Transaction.execute(TransactionLegacy.CLOUD_DB, new TransactionCallback() { - @Override - public ServiceOfferingVO doInTransaction(final TransactionStatus status) { - ServiceOfferingVO dummyoffering = new ServiceOfferingVO(serviceOffering); - dummyoffering.setDynamicFlag(true); - if (customParameters.containsKey(UsageEventVO.DynamicParameters.cpuNumber.name())) { - dummyoffering.setCpu(Integer.parseInt(customParameters.get(UsageEventVO.DynamicParameters.cpuNumber.name()))); - } - if (customParameters.containsKey(UsageEventVO.DynamicParameters.cpuSpeed.name())) { - dummyoffering.setSpeed(Integer.parseInt(customParameters.get(UsageEventVO.DynamicParameters.cpuSpeed.name()))); - } - if (customParameters.containsKey(UsageEventVO.DynamicParameters.memory.name())) { - dummyoffering.setRamSize(Integer.parseInt(customParameters.get(UsageEventVO.DynamicParameters.memory.name()))); - } - return dummyoffering; - } - }); - } - -} diff --git a/framework/quota/src/main/java/org/apache/cloudstack/quota/vo/ServiceOfferingVO.java b/framework/quota/src/main/java/org/apache/cloudstack/quota/vo/ServiceOfferingVO.java deleted file mode 100644 index b769e0aed35..00000000000 --- a/framework/quota/src/main/java/org/apache/cloudstack/quota/vo/ServiceOfferingVO.java +++ /dev/null @@ -1,388 +0,0 @@ -//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 org.apache.cloudstack.quota.vo; - -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; -import javax.persistence.Id; -import javax.persistence.GenerationType; -import javax.persistence.GeneratedValue; -import javax.persistence.TemporalType; -import javax.persistence.Temporal; -import javax.persistence.EnumType; -import javax.persistence.Enumerated; -import javax.persistence.Transient; - -import com.cloud.offering.ServiceOffering; -import com.cloud.utils.db.GenericDao; - -@Entity -@Table(name = "service_offering") -public class ServiceOfferingVO implements ServiceOffering { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id") - long id; - - @Column(name = "uuid") - private String uuid; - - @Column(name = "name") - private String name = null; - - @Column(name = "unique_name") - private String uniqueName; - - @Column(name = "display_text", length = 4096) - private String displayText = null; - - @Column(name = "customized") - private boolean customized; - - @Column(name = GenericDao.REMOVED_COLUMN) - @Temporal(TemporalType.TIMESTAMP) - private Date removed; - - @Column(name = GenericDao.CREATED_COLUMN) - private Date created; - - @Enumerated(EnumType.STRING) - @Column(name = "state") - ServiceOffering.State state = ServiceOffering.State.Active; - - @Column(name = "disk_offering_id") - private Long diskOfferingId; - - @Column(name = "disk_offering_strictness") - private boolean diskOfferingStrictness = false; - - @Column(name = "cpu") - private Integer cpu; - - @Column(name = "speed") - private Integer speed; - - @Column(name = "ram_size") - private Integer ramSize; - - @Column(name = "nw_rate") - private Integer rateMbps; - - @Column(name = "mc_rate") - private Integer multicastRateMbps; - - @Column(name = "ha_enabled") - private boolean offerHA; - - @Column(name = "limit_cpu_use") - private boolean limitCpuUse; - - @Column(name = "is_volatile") - private boolean volatileVm; - - @Column(name = "host_tag") - private String hostTag; - - @Column(name = "default_use") - private boolean defaultUse; - - @Column(name = "vm_type") - private String vmType; - - @Column(name = "sort_key") - int sortKey; - - @Column(name = "deployment_planner") - private String deploymentPlanner = null; - - @Column(name = "dynamic_scaling_enabled") - private boolean dynamicScalingEnabled; - - @Column(name = "system_use") - private boolean systemUse; - - @Transient - Map details = new HashMap(); - - @Transient - boolean isDynamic; - - protected ServiceOfferingVO() { - super(); - } - - public ServiceOfferingVO(ServiceOfferingVO offering) { - id = offering.getId(); - diskOfferingId = offering.getDiskOfferingId(); - name = offering.getName(); - displayText = offering.getDisplayText(); - customized = true; - cpu = offering.getCpu(); - ramSize = offering.getRamSize(); - speed = offering.getSpeed(); - rateMbps = offering.getRateMbps(); - multicastRateMbps = offering.getMulticastRateMbps(); - offerHA = offering.isOfferHA(); - limitCpuUse = offering.getLimitCpuUse(); - volatileVm = offering.isVolatileVm(); - hostTag = offering.getHostTag(); - vmType = offering.getSystemVmType(); - systemUse = offering.isSystemUse(); - dynamicScalingEnabled = offering.isDynamicScalingEnabled(); - diskOfferingStrictness = offering.diskOfferingStrictness; - } - - @Override - public boolean isOfferHA() { - return offerHA; - } - - public void setOfferHA(boolean offerHA) { - this.offerHA = offerHA; - } - - @Override - public boolean getLimitCpuUse() { - return limitCpuUse; - } - - public void setLimitResourceUse(boolean limitCpuUse) { - this.limitCpuUse = limitCpuUse; - } - - @Override - public boolean getDefaultUse() { - return defaultUse; - } - - @Override - public Integer getCpu() { - return cpu; - } - - public void setCpu(int cpu) { - this.cpu = cpu; - } - - public void setSpeed(int speed) { - this.speed = speed; - } - - public void setRamSize(int ramSize) { - this.ramSize = ramSize; - } - - @Override - public Integer getSpeed() { - return speed; - } - - @Override - public Integer getRamSize() { - return ramSize; - } - - public void setRateMbps(Integer rateMbps) { - this.rateMbps = rateMbps; - } - - @Override - public Integer getRateMbps() { - return rateMbps; - } - - public void setMulticastRateMbps(Integer multicastRateMbps) { - this.multicastRateMbps = multicastRateMbps; - } - - @Override - public Integer getMulticastRateMbps() { - return multicastRateMbps; - } - - public void setHostTag(String hostTag) { - this.hostTag = hostTag; - } - - @Override - public String getHostTag() { - return hostTag; - } - - @Override - public String getSystemVmType() { - return vmType; - } - - @Override - public void setSortKey(int key) { - sortKey = key; - } - - @Override - public int getSortKey() { - return sortKey; - } - - @Override - public boolean isVolatileVm() { - return volatileVm; - } - - @Override - public String getDeploymentPlanner() { - return deploymentPlanner; - } - - public Map getDetails() { - return details; - } - - public String getDetail(String name) { - return details.get(name); - } - - public void addDetail(String name, String value) { - details.put(name, value); - } - - public void setDetails(Map details) { - this.details = details; - } - - @Override - public boolean isDynamic() { - return cpu == null || speed == null || ramSize == null || isDynamic; - } - - public void setDynamicFlag(boolean isdynamic) { - isDynamic = isdynamic; - } - - @Override - public long getId() { - return id; - } - - public void setId(long id) { - this.id = id; - } - - @Override - public String getName() { - return name; - } - - @Override - public boolean isSystemUse() { - return systemUse; - } - - @Override - public void setName(String name) { - this.name = name; - } - - @Override - public String getUniqueName() { - return uniqueName; - } - - @Override - public void setUniqueName(String uniqueName) { - this.uniqueName = uniqueName; - } - - @Override - public String getDisplayText() { - return displayText; - } - - @Override - public void setDisplayText(String displayText) { - this.displayText = displayText; - } - - @Override - public boolean isCustomized() { - return customized; - } - - @Override - public void setCustomized(boolean customized) { - this.customized = customized; - } - - public void setRemoved(Date removed) { - this.removed = removed; - } - - @Override - public Date getRemoved() { - return removed; - } - - @Override - public Date getCreated() { - return created; - } - - @Override - public ServiceOffering.State getState() { - return state; - } - - @Override - public void setState(ServiceOffering.State state) { - this.state = state; - } - - @Override - public Long getDiskOfferingId() { - return diskOfferingId; - } - - @Override - public Boolean getDiskOfferingStrictness() { - return diskOfferingStrictness; - } - - @Override - public void setDiskOfferingStrictness(boolean diskOfferingStrictness) { - - } - - public void setDiskOfferingId(Long diskOfferingId) { - this.diskOfferingId = diskOfferingId; - } - - @Override - public String getUuid() { - return uuid; - } - - @Override - public boolean isDynamicScalingEnabled() { - return dynamicScalingEnabled; - } -} diff --git a/framework/quota/src/main/resources/META-INF/cloudstack/quota/spring-framework-quota-context.xml b/framework/quota/src/main/resources/META-INF/cloudstack/quota/spring-framework-quota-context.xml index 7704a1e8e48..5f1c274f049 100644 --- a/framework/quota/src/main/resources/META-INF/cloudstack/quota/spring-framework-quota-context.xml +++ b/framework/quota/src/main/resources/META-INF/cloudstack/quota/spring-framework-quota-context.xml @@ -25,7 +25,6 @@ -