Skip to content

Commit ad33f0a

Browse files
committed
CLOUDSTACK-2560: Adding duplicate ASA device entity failure should be handled with API
Handling duplicate ASA appliance addition gracefully
1 parent 16763be commit ad33f0a

1 file changed

Lines changed: 7 additions & 2 deletions

File tree

plugins/network-elements/cisco-vnmc/src/com/cloud/network/element/CiscoVnmcElement.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import javax.ejb.Local;
2828
import javax.inject.Inject;
2929
import javax.naming.ConfigurationException;
30+
import javax.persistence.EntityExistsException;
3031

3132
import org.apache.log4j.Logger;
3233

@@ -847,8 +848,12 @@ public CiscoAsa1000vDevice addCiscoAsa1000vResource(AddCiscoAsa1000vResourceCmd
847848
throw new InvalidParameterValueException("Could not find phyical network with ID: " + physicalNetworkId);
848849
}
849850

850-
ciscoAsa1000vResource = new CiscoAsa1000vDeviceVO(physicalNetworkId, cmd.getManagementIp(), cmd.getInPortProfile(), cmd.getClusterId());
851-
_ciscoAsa1000vDao.persist((CiscoAsa1000vDeviceVO)ciscoAsa1000vResource);
851+
ciscoAsa1000vResource = new CiscoAsa1000vDeviceVO(physicalNetworkId, cmd.getManagementIp().trim(), cmd.getInPortProfile(), cmd.getClusterId());
852+
try {
853+
_ciscoAsa1000vDao.persist((CiscoAsa1000vDeviceVO)ciscoAsa1000vResource);
854+
} catch (EntityExistsException e) {
855+
throw new InvalidParameterValueException("An ASA 1000v appliance already exists with same configuration");
856+
}
852857

853858
return ciscoAsa1000vResource;
854859
}

0 commit comments

Comments
 (0)