@Override public String getEventDescription() { return "Creating storage ip range from " + getStartIp() + " to " + getEndIp() + " with vlan " + getVlan(); }
@Override @DB public StorageNetworkIpRange createIpRange(final CreateStorageNetworkIpRangeCmd cmd) throws SQLException { final Long podId = cmd.getPodId(); final String startIp = cmd.getStartIp(); String endIp = cmd.getEndIp(); final Integer vlan = cmd.getVlan(); final String netmask = cmd.getNetmask();
@Override public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException { try { StorageNetworkIpRange result = _storageNetworkService.createIpRange(this); StorageNetworkIpRangeResponse response = _responseGenerator.createStorageNetworkIpRangeResponse(result); response.setResponseName(getCommandName()); this.setResponseObject(response); } catch (Exception e) { s_logger.warn("Create storage network IP range failed", e); throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, e.getMessage()); } }
@Override public StorageNetworkIpRangeVO doInTransaction(TransactionStatus status) throws SQLException { StorageNetworkIpRangeVO range = new StorageNetworkIpRangeVO(zoneId, podId, nw.getId(), startIp, endIpFinal, vlan, netmask, cmd.getGateWay()); _sNwIpRangeDao.persist(range); try { createStorageIpEntires(TransactionLegacy.currentTxn(), range.getId(), startIp, endIpFinal, zoneId); } catch (SQLException e) { StringBuilder err = new StringBuilder(); err.append("Create storage network range failed."); err.append("startIp=" + startIp); err.append("endIp=" + endIpFinal); err.append("netmask=" + netmask); err.append("zoneId=" + zoneId); s_logger.debug(err.toString(), e); throw e; } return range; } });