diff --git a/awsapi/src/com/cloud/bridge/persist/dao/CloudStackSvcOfferingDao.java b/awsapi/src/com/cloud/bridge/persist/dao/CloudStackSvcOfferingDao.java index 96c6ec721e7..922d5e1da42 100644 --- a/awsapi/src/com/cloud/bridge/persist/dao/CloudStackSvcOfferingDao.java +++ b/awsapi/src/com/cloud/bridge/persist/dao/CloudStackSvcOfferingDao.java @@ -15,10 +15,10 @@ */ package com.cloud.bridge.persist.dao; +import java.util.List; import org.apache.log4j.Logger; import com.cloud.bridge.persist.EntityDao; -import com.cloud.stack.models.CloudStackConfiguration; import com.cloud.stack.models.CloudStackServiceOffering; @@ -29,10 +29,9 @@ public class CloudStackSvcOfferingDao extends EntityDao getSvcOfferingByName( String name ){ + return queryEntities("from CloudStackServiceOffering where name=?", new Object[] {name}); + } public CloudStackServiceOffering getSvcOfferingById( String id ){ return queryEntity("from CloudStackServiceOffering where id=?", new Object[] {id}); diff --git a/awsapi/src/com/cloud/bridge/service/core/ec2/EC2Engine.java b/awsapi/src/com/cloud/bridge/service/core/ec2/EC2Engine.java index fd54eb4d61f..449eaecee5a 100644 --- a/awsapi/src/com/cloud/bridge/service/core/ec2/EC2Engine.java +++ b/awsapi/src/com/cloud/bridge/service/core/ec2/EC2Engine.java @@ -1775,8 +1775,12 @@ public class EC2Engine { if (null == instanceType) instanceType = "m1.small"; CloudStackSvcOfferingDao dao = new CloudStackSvcOfferingDao(); - return dao.getSvcOfferingByName(instanceType); - + List svcOfferingList = dao.getSvcOfferingByName(instanceType); + for (CloudStackServiceOffering svcOffering : svcOfferingList) { + if (svcOffering.getRemoved() == null) + return svcOffering; + } + return null; } catch(Exception e) { logger.error( "Error while retrieving ServiceOffering information by name - ", e); throw new EC2ServiceException(ServerError.InternalError, e.getMessage()); diff --git a/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.hbm.xml b/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.hbm.xml index f3c5d4d17f3..e9c73b82434 100644 --- a/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.hbm.xml +++ b/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.hbm.xml @@ -11,6 +11,9 @@ + + + diff --git a/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.java b/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.java index 9dde25a553a..e3df1aaed8d 100644 --- a/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.java +++ b/awsapi/src/com/cloud/stack/models/CloudStackServiceOffering.java @@ -57,6 +57,8 @@ public class CloudStackServiceOffering { private String systemVmType; @SerializedName(ApiConstants.TAGS) private String tags; + @SerializedName(ApiConstants.REMOVED) + private String removed; /** * @@ -196,4 +198,14 @@ public class CloudStackServiceOffering { return tags; } + /** + * @return the removed + */ + public String getRemoved() { + return removed; + } + + public void setRemoved(String removed) { + this.removed = removed; + } }