diff --git a/plugins/network-elements/cisco-vnmc/build.xml b/plugins/network-elements/cisco-vnmc/build.xml deleted file mode 100755 index c9eca5d108b..00000000000 --- a/plugins/network-elements/cisco-vnmc/build.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - Cloud Stack ant build file - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/plugins/network-elements/cisco-vnmc/pom.xml b/plugins/network-elements/cisco-vnmc/pom.xml index d69cd64f5e6..0a8d2423524 100644 --- a/plugins/network-elements/cisco-vnmc/pom.xml +++ b/plugins/network-elements/cisco-vnmc/pom.xml @@ -24,7 +24,7 @@ org.apache.cloudstack cloudstack-plugins - 4.0.0-SNAPSHOT + 4.1.0-SNAPSHOT ../../pom.xml diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/AddCiscoVnmcResourceCmd.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/AddCiscoVnmcResourceCmd.java index aa41611745b..b20eed9676c 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/AddCiscoVnmcResourceCmd.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/AddCiscoVnmcResourceCmd.java @@ -16,28 +16,29 @@ // under the License. package com.cloud.api.commands; +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +import org.apache.cloudstack.api.BaseAsyncCmd; +import org.apache.cloudstack.api.BaseCmd; +import org.apache.cloudstack.api.Parameter; +import org.apache.cloudstack.api.PlugService; +import org.apache.cloudstack.api.ServerApiException; +import org.apache.cloudstack.api.response.PhysicalNetworkResponse; import org.apache.log4j.Logger; -import com.cloud.api.ApiConstants; -import com.cloud.api.BaseAsyncCmd; -import com.cloud.api.BaseCmd; -import com.cloud.api.IdentityMapper; -import com.cloud.api.Implementation; -import com.cloud.api.Parameter; -import com.cloud.api.PlugService; -import com.cloud.api.ServerApiException; + import com.cloud.api.response.CiscoVnmcResourceResponse; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; import com.cloud.exception.ResourceAllocationException; import com.cloud.exception.ResourceUnavailableException; -import com.cloud.network.cisco.CiscoVnmcResourceVO; +import com.cloud.network.cisco.CiscoVnmcController; import com.cloud.network.element.CiscoVnmcElementService; import com.cloud.user.UserContext; import com.cloud.utils.exception.CloudRuntimeException; -@Implementation(responseObject=CiscoVnmcResourceResponse.class, description="Adds a Cisco Vnmc Controller") +@APICommand(responseObject=CiscoVnmcResourceResponse.class, description="Adds a Cisco Vnmc Controller") public class AddCiscoVnmcResourceCmd extends BaseCmd { private static final Logger s_logger = Logger.getLogger(AddCiscoVnmcResourceCmd.class.getName()); private static final String s_name = "addCiscoVnmcResource"; @@ -47,8 +48,7 @@ public class AddCiscoVnmcResourceCmd extends BaseCmd { //////////////// API parameters ///////////////////// ///////////////////////////////////////////////////// - @IdentityMapper(entityTableName="physical_network") - @Parameter(name=ApiConstants.PHYSICAL_NETWORK_ID, type=CommandType.LONG, required=true, description="the Physical Network ID") + @Parameter(name=ApiConstants.PHYSICAL_NETWORK_ID, type=CommandType.UUID, entityType = PhysicalNetworkResponse.class, required=true, description="the Physical Network ID") private Long physicalNetworkId; @Parameter(name=ApiConstants.HOST_NAME, type=CommandType.STRING, required = true, description="Hostname of ip address of the Cisco VNMC Controller.") @@ -89,7 +89,7 @@ public class AddCiscoVnmcResourceCmd extends BaseCmd { @Override public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException { try { - CiscoVnmcResourceVO CiscoVnmcResourceVO = _ciscoVnmcElementService.addCiscoVnmcResource(this); + CiscoVnmcController CiscoVnmcResourceVO = _ciscoVnmcElementService.addCiscoVnmcResource(this); if (CiscoVnmcResourceVO != null) { CiscoVnmcResourceResponse response = _ciscoVnmcElementService.createCiscoVnmcResourceResponse(CiscoVnmcResourceVO); response.setObjectName("CiscoVnmcResource"); diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/DeleteCiscoVnmcResourceCmd.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/DeleteCiscoVnmcResourceCmd.java index 71b221d068e..895a7b37f8a 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/DeleteCiscoVnmcResourceCmd.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/DeleteCiscoVnmcResourceCmd.java @@ -16,16 +16,16 @@ // under the License. package com.cloud.api.commands; +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +import org.apache.cloudstack.api.BaseCmd; +import org.apache.cloudstack.api.Parameter; +import org.apache.cloudstack.api.PlugService; +import org.apache.cloudstack.api.ServerApiException; +import org.apache.cloudstack.api.response.SuccessResponse; import org.apache.log4j.Logger; -import com.cloud.api.ApiConstants; -import com.cloud.api.BaseCmd; -import com.cloud.api.IdentityMapper; -import com.cloud.api.Implementation; -import com.cloud.api.Parameter; -import com.cloud.api.PlugService; -import com.cloud.api.ServerApiException; -import com.cloud.api.response.SuccessResponse; +import com.cloud.api.response.CiscoVnmcResourceResponse; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; @@ -35,7 +35,7 @@ import com.cloud.network.element.CiscoVnmcElementService; import com.cloud.user.UserContext; import com.cloud.utils.exception.CloudRuntimeException; -@Implementation(responseObject=SuccessResponse.class, description=" delete a Cisco Vnmc Resource") +@APICommand(responseObject=SuccessResponse.class, description=" delete a Cisco Vnmc Resource") public class DeleteCiscoVnmcResourceCmd extends BaseCmd { private static final Logger s_logger = Logger.getLogger(DeleteCiscoVnmcResourceCmd.class.getName()); private static final String s_name = "addCiscoVnmcResource"; @@ -45,8 +45,7 @@ public class DeleteCiscoVnmcResourceCmd extends BaseCmd { //////////////// API parameters ///////////////////// ///////////////////////////////////////////////////// - @IdentityMapper(entityTableName="external_cisco_vnmc_resources") - @Parameter(name=ApiConstants.RESOURCE_ID, type=CommandType.LONG, required=true, description="Cisco Vnmc resource ID") + @Parameter(name=ApiConstants.RESOURCE_ID, type=CommandType.UUID, required=true, entityType=CiscoVnmcResourceResponse.class, description="Cisco Vnmc resource ID") private Long CiscoVnmcResourceId; ///////////////////////////////////////////////////// diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/ListCiscoVnmcResourcesCmd.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/ListCiscoVnmcResourcesCmd.java index 577a170bd1a..118feb0c84b 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/ListCiscoVnmcResourcesCmd.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/commands/ListCiscoVnmcResourcesCmd.java @@ -19,28 +19,30 @@ package com.cloud.api.commands; import java.util.ArrayList; import java.util.List; +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +import org.apache.cloudstack.api.BaseCmd; +import org.apache.cloudstack.api.BaseListCmd; +import org.apache.cloudstack.api.Parameter; +import org.apache.cloudstack.api.PlugService; +import org.apache.cloudstack.api.ServerApiException; +import org.apache.cloudstack.api.response.ListResponse; +import org.apache.cloudstack.api.response.PhysicalNetworkResponse; import org.apache.log4j.Logger; -import com.cloud.api.ApiConstants; -import com.cloud.api.BaseCmd; -import com.cloud.api.BaseListCmd; -import com.cloud.api.IdentityMapper; -import com.cloud.api.Implementation; -import com.cloud.api.Parameter; -import com.cloud.api.PlugService; -import com.cloud.api.ServerApiException; -import com.cloud.api.response.ListResponse; + import com.cloud.api.response.CiscoVnmcResourceResponse; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; import com.cloud.exception.ResourceAllocationException; import com.cloud.exception.ResourceUnavailableException; -import com.cloud.network.cisco.CiscoVnmcResourceVO; +import com.cloud.network.cisco.CiscoVnmcController; +import com.cloud.network.cisco.CiscoVnmcControllerVO; import com.cloud.network.element.CiscoVnmcElementService; import com.cloud.utils.exception.CloudRuntimeException; -@Implementation(responseObject=CiscoVnmcResourceResponse.class, description="Lists Cisco VNMC controllers") +@APICommand(responseObject=CiscoVnmcResourceResponse.class, description="Lists Cisco VNMC controllers") public class ListCiscoVnmcResourcesCmd extends BaseListCmd { private static final Logger s_logger = Logger.getLogger(ListCiscoVnmcResourcesCmd.class.getName()); private static final String s_name = "listCiscoVnmcResources"; @@ -50,12 +52,10 @@ public class ListCiscoVnmcResourcesCmd extends BaseListCmd { //////////////// API parameters ///////////////////// ///////////////////////////////////////////////////// - @IdentityMapper(entityTableName="physical_network") - @Parameter(name=ApiConstants.PHYSICAL_NETWORK_ID, type=CommandType.LONG, description="the Physical Network ID") + @Parameter(name=ApiConstants.PHYSICAL_NETWORK_ID, type=CommandType.UUID, entityType = PhysicalNetworkResponse.class, description="the Physical Network ID") private Long physicalNetworkId; - @IdentityMapper(entityTableName="external_cisco_vnmc_resources") - @Parameter(name=ApiConstants.RESOURCE_ID, type=CommandType.LONG, description="Cisco VNMC resource ID") + @Parameter(name=ApiConstants.RESOURCE_ID, type=CommandType.UUID, entityType=CiscoVnmcResourceResponse.class, description="Cisco VNMC resource ID") private Long ciscoVnmcResourceId; ///////////////////////////////////////////////////// @@ -77,12 +77,12 @@ public class ListCiscoVnmcResourcesCmd extends BaseListCmd { @Override public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException { try { - List CiscoVnmcResources = _ciscoVnmcElementService.listCiscoVnmcResources(this); + List CiscoVnmcResources = _ciscoVnmcElementService.listCiscoVnmcResources(this); ListResponse response = new ListResponse(); List CiscoVnmcResourcesResponse = new ArrayList(); if (CiscoVnmcResources != null && !CiscoVnmcResources.isEmpty()) { - for (CiscoVnmcResourceVO CiscoVnmcResourceVO : CiscoVnmcResources) { + for (CiscoVnmcController CiscoVnmcResourceVO : CiscoVnmcResources) { CiscoVnmcResourceResponse CiscoVnmcResourceResponse = _ciscoVnmcElementService.createCiscoVnmcResourceResponse(CiscoVnmcResourceVO); CiscoVnmcResourcesResponse.add(CiscoVnmcResourceResponse); } diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/response/CiscoVnmcResourceResponse.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/response/CiscoVnmcResourceResponse.java index b3774c54f74..91b6b8a9aaf 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/api/response/CiscoVnmcResourceResponse.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/api/response/CiscoVnmcResourceResponse.java @@ -16,21 +16,27 @@ // under the License. package com.cloud.api.response; -import com.cloud.api.ApiConstants; -import com.cloud.serializer.Param; -import com.cloud.utils.IdentityProxy; -import com.google.gson.annotations.SerializedName; +import org.apache.cloudstack.api.ApiConstants; +import org.apache.cloudstack.api.BaseResponse; +import org.apache.cloudstack.api.EntityReference; +import org.apache.cloudstack.api.Parameter; +import org.apache.cloudstack.api.response.PhysicalNetworkResponse; + +import com.cloud.network.cisco.CiscoVnmcController; +import com.google.gson.annotations.SerializedName; +@EntityReference(value = CiscoVnmcController.class) public class CiscoVnmcResourceResponse extends BaseResponse { public static final String RESOURCE_NAME = "resourcename"; - @SerializedName(ApiConstants.RESOURCE_ID) @Param(description="resource id of the Cisco VNMC controller") - private IdentityProxy id = new IdentityProxy("external_cisco_vnmc_resources"); + @SerializedName(ApiConstants.RESOURCE_ID) @Parameter(description="resource id of the Cisco VNMC controller") + private String id; - @SerializedName(ApiConstants.PHYSICAL_NETWORK_ID) @Param(description="the physical network to which this VNMC belongs to") - private IdentityProxy physicalNetworkId = new IdentityProxy("physical_network"); + @SerializedName(ApiConstants.PHYSICAL_NETWORK_ID) + @Parameter(description="the physical network to which this VNMC belongs to", entityType = PhysicalNetworkResponse.class) + private Long physicalNetworkId ; - public IdentityProxy getPhysicalNetworkId() { + public Long getPhysicalNetworkId() { return physicalNetworkId; } @@ -42,19 +48,19 @@ public class CiscoVnmcResourceResponse extends BaseResponse { return resourceName; } - @SerializedName(ApiConstants.PROVIDER) @Param(description="name of the provider") + @SerializedName(ApiConstants.PROVIDER) @Parameter(description="name of the provider") private String providerName; @SerializedName(RESOURCE_NAME) - @Param(description="Cisco VNMC resource name") + @Parameter(description="Cisco VNMC resource name") private String resourceName; - public void setId(long ciscoVnmcResourceId) { - this.id.setValue(ciscoVnmcResourceId); + public void setId(String ciscoVnmcResourceId) { + this.id = ciscoVnmcResourceId; } - public void setPhysicalNetworkId(long physicalNetworkId) { - this.physicalNetworkId.setValue(physicalNetworkId); + public void setPhysicalNetworkId(Long physicalNetworkId) { + this.physicalNetworkId = physicalNetworkId; } public void setProviderName(String providerName) { diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcController.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcController.java new file mode 100644 index 00000000000..0db743c8282 --- /dev/null +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcController.java @@ -0,0 +1,24 @@ +package com.cloud.network.cisco; + +import org.apache.cloudstack.api.Identity; +import org.apache.cloudstack.api.InternalIdentity; + +import com.cloud.org.Grouping; + +public interface CiscoVnmcController extends Grouping, InternalIdentity, Identity { + + long getId(); + + String getUuid(); + + void setUuid(String uuid); + + long getPhysicalNetworkId(); + + long getHostId(); + + String getProviderName(); + + String getDeviceName(); + +} \ No newline at end of file diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcResourceVO.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcControllerVO.java similarity index 65% rename from plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcResourceVO.java rename to plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcControllerVO.java index f57c6f5c893..69ac135f18a 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcResourceVO.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcControllerVO.java @@ -27,7 +27,7 @@ import javax.persistence.Table; @Entity @Table(name="external_cisco_vnmc_devices") -public class CiscoVnmcResourceVO { +public class CiscoVnmcControllerVO implements CiscoVnmcController { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @@ -50,11 +50,11 @@ public class CiscoVnmcResourceVO { private String deviceName; - public CiscoVnmcResourceVO() { + public CiscoVnmcControllerVO() { this.uuid = UUID.randomUUID().toString(); } - public CiscoVnmcResourceVO(long hostId, long physicalNetworkId, + public CiscoVnmcControllerVO(long hostId, long physicalNetworkId, String providerName, String deviceName) { super(); this.hostId = hostId; @@ -64,31 +64,59 @@ public class CiscoVnmcResourceVO { this.uuid = UUID.randomUUID().toString(); } - public long getId() { + /* (non-Javadoc) + * @see com.cloud.network.cisco.CiscoVnmcController#getId() + */ + @Override + public long getId() { return id; } - public String getUuid() { + /* (non-Javadoc) + * @see com.cloud.network.cisco.CiscoVnmcController#getUuid() + */ + @Override + public String getUuid() { return uuid; } - public void setUuid(String uuid) { + /* (non-Javadoc) + * @see com.cloud.network.cisco.CiscoVnmcController#setUuid(java.lang.String) + */ + @Override + public void setUuid(String uuid) { this.uuid = uuid; } - public long getPhysicalNetworkId() { + /* (non-Javadoc) + * @see com.cloud.network.cisco.CiscoVnmcController#getPhysicalNetworkId() + */ + @Override + public long getPhysicalNetworkId() { return physicalNetworkId; } - public long getHostId() { + /* (non-Javadoc) + * @see com.cloud.network.cisco.CiscoVnmcController#getHostId() + */ + @Override + public long getHostId() { return hostId; } - public String getProviderName() { + /* (non-Javadoc) + * @see com.cloud.network.cisco.CiscoVnmcController#getProviderName() + */ + @Override + public String getProviderName() { return providerName; } - public String getDeviceName() { + /* (non-Javadoc) + * @see com.cloud.network.cisco.CiscoVnmcController#getDeviceName() + */ + @Override + public String getDeviceName() { return deviceName; } diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcManager.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcManager.java index 5a60a7a545a..6fd2401b116 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcManager.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/CiscoVnmcManager.java @@ -8,6 +8,8 @@ import java.util.UUID; import javax.naming.ConfigurationException; +import org.apache.cloudstack.network.ExternalNetworkDeviceManager.NetworkDevice; + import com.cloud.agent.AgentManager; import com.cloud.api.commands.AddCiscoVnmcResourceCmd; import com.cloud.api.commands.DeleteCiscoVnmcResourceCmd; @@ -18,7 +20,6 @@ import com.cloud.host.DetailVO; import com.cloud.host.Host; import com.cloud.host.dao.HostDao; import com.cloud.host.dao.HostDetailsDao; -import com.cloud.network.ExternalNetworkDeviceManager.NetworkDevice; import com.cloud.network.Network; import com.cloud.network.PhysicalNetworkServiceProvider; import com.cloud.network.PhysicalNetworkVO; @@ -56,17 +57,13 @@ public class CiscoVnmcManager implements Manager, CiscoVnmcElementService { CiscoVnmcConnection _vnmcConnection; - @Override - public String getPropertiesFile() { - return null; - } - + @Override - public CiscoVnmcResourceVO addCiscoVnmcResource(AddCiscoVnmcResourceCmd cmd) { + public CiscoVnmcController addCiscoVnmcResource(AddCiscoVnmcResourceCmd cmd) { String deviceName = CiscoVnmc.getName(); NetworkDevice networkDevice = NetworkDevice.getNetworkDevice(deviceName); Long physicalNetworkId = cmd.getPhysicalNetworkId(); - CiscoVnmcResourceVO CiscoVnmcResource = null; + CiscoVnmcController CiscoVnmcResource = null; PhysicalNetworkVO physicalNetwork = _physicalNetworkDao.findById(physicalNetworkId); if (physicalNetwork == null) { @@ -110,8 +107,8 @@ public class CiscoVnmcManager implements Manager, CiscoVnmcElementService { if (host != null) { txn.start(); - CiscoVnmcResource = new CiscoVnmcResourceVO(host.getId(), physicalNetworkId, ntwkSvcProvider.getProviderName(), deviceName); - _ciscoVnmcDao.persist(CiscoVnmcResource); + CiscoVnmcResource = new CiscoVnmcControllerVO(host.getId(), physicalNetworkId, ntwkSvcProvider.getProviderName(), deviceName); + _ciscoVnmcDao.persist((CiscoVnmcControllerVO) CiscoVnmcResource); DetailVO detail = new DetailVO(host.getId(), "deviceid", String.valueOf(CiscoVnmcResource.getId())); _hostDetailsDao.persist(detail); @@ -129,7 +126,7 @@ public class CiscoVnmcManager implements Manager, CiscoVnmcElementService { @Override public CiscoVnmcResourceResponse createCiscoVnmcResourceResponse( - CiscoVnmcResourceVO CiscoVnmcResourceVO) { + CiscoVnmcController CiscoVnmcResourceVO) { // TODO Auto-generated method stub return null; } @@ -143,18 +140,18 @@ public class CiscoVnmcManager implements Manager, CiscoVnmcElementService { @Override - public List listCiscoVnmcResources( + public List listCiscoVnmcResources( ListCiscoVnmcResourcesCmd cmd) { Long physicalNetworkId = cmd.getPhysicalNetworkId(); Long CiscoVnmcResourceId = cmd.getCiscoVnmcResourceId(); - List responseList = new ArrayList(); + List responseList = new ArrayList(); if (physicalNetworkId == null && CiscoVnmcResourceId == null) { throw new InvalidParameterValueException("Either physical network Id or vnmc device Id must be specified"); } if (CiscoVnmcResourceId != null) { - CiscoVnmcResourceVO CiscoVnmcResource = _ciscoVnmcDao.findById(CiscoVnmcResourceId); + CiscoVnmcControllerVO CiscoVnmcResource = _ciscoVnmcDao.findById(CiscoVnmcResourceId); if (CiscoVnmcResource == null) { throw new InvalidParameterValueException("Could not find Cisco Vnmc device with id: " + CiscoVnmcResource); } @@ -202,4 +199,10 @@ public class CiscoVnmcManager implements Manager, CiscoVnmcElementService { } + @Override + public List> getCommands() { + // TODO Auto-generated method stub + return null; + } + } diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDao.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDao.java index 1b425bbae96..f0b394834a0 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDao.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDao.java @@ -18,15 +18,15 @@ package com.cloud.network.dao; import java.util.List; -import com.cloud.network.cisco.CiscoVnmcResourceVO; +import com.cloud.network.cisco.CiscoVnmcControllerVO; import com.cloud.utils.db.GenericDao; -public interface CiscoVnmcDao extends GenericDao{ +public interface CiscoVnmcDao extends GenericDao{ /** * list all the Cisco VNMC devices added in to this physical network * @param physicalNetworkId physical Network Id * @return list of CiscoVnmcDeviceVO for this physical network. */ - List listByPhysicalNetwork(long physicalNetworkId); + List listByPhysicalNetwork(long physicalNetworkId); } diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDaoImpl.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDaoImpl.java index b2595522a49..1bd686f90ed 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDaoImpl.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/dao/CiscoVnmcDaoImpl.java @@ -20,17 +20,17 @@ import java.util.List; import javax.ejb.Local; -import com.cloud.network.cisco.CiscoVnmcResourceVO; +import com.cloud.network.cisco.CiscoVnmcControllerVO; import com.cloud.utils.db.GenericDaoBase; import com.cloud.utils.db.SearchBuilder; import com.cloud.utils.db.SearchCriteria; import com.cloud.utils.db.SearchCriteria.Op; @Local(value=CiscoVnmcDao.class) -public class CiscoVnmcDaoImpl extends GenericDaoBase +public class CiscoVnmcDaoImpl extends GenericDaoBase implements CiscoVnmcDao { - protected final SearchBuilder physicalNetworkIdSearch; + protected final SearchBuilder physicalNetworkIdSearch; public CiscoVnmcDaoImpl() { physicalNetworkIdSearch = createSearchBuilder(); @@ -39,8 +39,8 @@ public class CiscoVnmcDaoImpl extends GenericDaoBase } @Override - public List listByPhysicalNetwork(long physicalNetworkId) { - SearchCriteria sc = physicalNetworkIdSearch.create(); + public List listByPhysicalNetwork(long physicalNetworkId) { + SearchCriteria sc = physicalNetworkIdSearch.create(); sc.setParameters("physicalNetworkId", physicalNetworkId); return search(sc, null); } diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElement.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElement.java index 5aa61f7bfdc..15c78b63d45 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElement.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElement.java @@ -139,12 +139,6 @@ public class CiscoVnmcElement implements DhcpServiceProvider, return false; } - @Override - public boolean destroy(Network network) - throws ConcurrentOperationException, ResourceUnavailableException { - // TODO Auto-generated method stub - return false; - } @Override public boolean isReady(PhysicalNetworkServiceProvider provider) { @@ -190,4 +184,11 @@ public class CiscoVnmcElement implements DhcpServiceProvider, return false; } + @Override + public boolean destroy(Network network, ReservationContext context) + throws ConcurrentOperationException, ResourceUnavailableException { + // TODO Auto-generated method stub + return false; + } + } diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElementService.java b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElementService.java index 4c60055c387..3e2f09346a9 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElementService.java +++ b/plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElementService.java @@ -24,21 +24,22 @@ import com.cloud.api.commands.ListCiscoVnmcResourcesCmd; import com.cloud.api.response.CiscoVnmcResourceResponse; import com.cloud.network.Network; import com.cloud.network.Network.Provider; -import com.cloud.network.cisco.CiscoVnmcResourceVO; +import com.cloud.network.cisco.CiscoVnmcController; +import com.cloud.network.cisco.CiscoVnmcControllerVO; import com.cloud.utils.component.PluggableService; public interface CiscoVnmcElementService extends PluggableService { public static final Provider CiscoVnmc = new Provider("CiscoVnmc", true); - public CiscoVnmcResourceVO addCiscoVnmcResource(AddCiscoVnmcResourceCmd cmd); + public CiscoVnmcController addCiscoVnmcResource(AddCiscoVnmcResourceCmd cmd); public CiscoVnmcResourceResponse createCiscoVnmcResourceResponse( - CiscoVnmcResourceVO CiscoVnmcResourceVO); + CiscoVnmcController CiscoVnmcResourceVO); boolean deleteCiscoVnmcResource(DeleteCiscoVnmcResourceCmd cmd); - List listCiscoVnmcResources(ListCiscoVnmcResourcesCmd cmd); + List listCiscoVnmcResources(ListCiscoVnmcResourcesCmd cmd); void assignAsa1000vToNetwork(Network network); diff --git a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/test/CiscoVnmcConnectionTest.java b/plugins/network-elements/cisco-vnmc/test/com/cloud/network/cisco/CiscoVnmcConnectionTest.java similarity index 97% rename from plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/test/CiscoVnmcConnectionTest.java rename to plugins/network-elements/cisco-vnmc/test/com/cloud/network/cisco/CiscoVnmcConnectionTest.java index 24070635176..45b9609725f 100644 --- a/plugins/network-elements/cisco-vnmc/src/com/cloud/network/cisco/test/CiscoVnmcConnectionTest.java +++ b/plugins/network-elements/cisco-vnmc/test/com/cloud/network/cisco/CiscoVnmcConnectionTest.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.network.cisco.test; +package com.cloud.network.cisco; import static org.junit.Assert.assertTrue; @@ -28,7 +28,7 @@ import com.cloud.network.cisco.CiscoVnmcConnectionImpl; import com.cloud.utils.exception.ExecutionException; - +@Ignore("Requires actual VNMC to connect to") public class CiscoVnmcConnectionTest { static CiscoVnmcConnectionImpl connection; static String tenantName = "TenantE"; @@ -46,7 +46,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testLogin() { //fail("Not yet implemented"); @@ -59,7 +59,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenant() { //fail("Not yet implemented"); @@ -72,7 +72,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDC() { //fail("Not yet implemented"); @@ -85,7 +85,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCEdgeDeviceProfile() { //fail("Not yet implemented"); @@ -98,7 +98,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCEdgeDeviceRoutePolicy() { try { @@ -110,7 +110,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCEdgeDeviceRoute() { try { @@ -123,7 +123,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testAssociateRoutePolicyWithEdgeProfile() { try { @@ -135,7 +135,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testAssociateTenantVDCEdgeDhcpPolicy() { try { @@ -147,7 +147,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCEdgeDhcpPolicy() { try { @@ -160,7 +160,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCEdgeSecurityProfile() { try { @@ -172,7 +172,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCSourceNATPool() { try { @@ -184,7 +184,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCSourceNATPolicy() { try { @@ -196,7 +196,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateTenantVDCNatPolicySet() { try { @@ -208,7 +208,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testAssociateNatPolicySet() { try { @@ -220,7 +220,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void testCreateEdgeFirewall() { try { @@ -244,7 +244,7 @@ public class CiscoVnmcConnectionTest { } } - @Ignore + @Test public void assocAsa1000v() { try { diff --git a/plugins/pom.xml b/plugins/pom.xml index a42ae2967b1..113d5f20aaa 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -44,6 +44,7 @@ network-elements/elastic-loadbalancer network-elements/ovs network-elements/nicira-nvp + network-elements/cisco-vnmc storage-allocators/random user-authenticators/ldap user-authenticators/md5