public static APICreateL3NetworkMsg __example__() { APICreateL3NetworkMsg msg = new APICreateL3NetworkMsg(); msg.setName("Test-L3Network"); msg.setL2NetworkUuid(uuid()); msg.setCategory(L3NetworkCategory.Private.toString()); return msg; }
private void handle(APICreateL3NetworkMsg msg) { SimpleQuery<L2NetworkVO> query = dbf.createQuery(L2NetworkVO.class); query.select(L2NetworkVO_.zoneUuid); query.add(L2NetworkVO_.uuid, Op.EQ, msg.getL2NetworkUuid()); String zoneUuid = query.findValue(); assert zoneUuid != null; if (msg.getResourceUuid() != null) { vo.setUuid(msg.getResourceUuid()); } else { vo.setUuid(Platform.getUuid()); vo.setDescription(msg.getDescription()); vo.setDnsDomain(msg.getDnsDomain()); vo.setL2NetworkUuid(msg.getL2NetworkUuid()); vo.setName(msg.getName()); vo.setSystem(msg.isSystem()); vo.setZoneUuid(zoneUuid); vo.setState(L3NetworkState.Enabled); vo.setCategory(L3NetworkCategory.valueOf(msg.getCategory())); if (msg.getIpVersion() != null) { vo.setIpVersion(msg.getIpVersion()); } else { vo.setIpVersion(IPv6Constants.IPv4); L3NetworkFactory factory = getL3NetworkFactory(L3NetworkType.valueOf(msg.getType())); L3NetworkInventory inv = new SQLBatchWithReturn<L3NetworkInventory>() { @Override APICreateL3NetworkEvent evt = new APICreateL3NetworkEvent(msg.getId());
private void validate(APICreateL3NetworkMsg msg) { if (!L3NetworkType.hasType(msg.getType())) { throw new ApiMessageInterceptionException(argerr("unsupported l3network type[%s]", msg.getType())); } if (msg.getDnsDomain() != null) { DomainValidator validator = DomainValidator.getInstance(); if (!validator.isValid(msg.getDnsDomain())) { throw new ApiMessageInterceptionException(argerr("%s is not a valid domain name", msg.getDnsDomain())); } } List<L3NetworkCategory> validNetworkCategory = Arrays.asList(L3NetworkCategory.values()); for (L3NetworkCategory category : validNetworkCategory) { if (category.toString().equalsIgnoreCase(msg.getCategory())) { msg.setCategory(category.toString()); break; } } if (L3NetworkCategory.checkSystemAndCategory(msg.isSystem(), L3NetworkCategory.valueOf(msg.getCategory()))) { return; } else { throw new ApiMessageInterceptionException(argerr("not valid combination of system and category," + "only %s are valid", L3NetworkCategory.validCombination)); } }
private void validate(APICreateL3NetworkMsg msg) { String type = Q.New(L2NetworkVO.class).select(L2NetworkVO_.type).eq(L2NetworkVO_.uuid, msg.getL2NetworkUuid()).findValue(); if (type.equals(VxlanNetworkPoolConstant.VXLAN_NETWORK_POOL_TYPE)) { throw new ApiMessageInterceptionException(Platform.err(SysErrors.INVALID_ARGUMENT_ERROR, String.format("vxlan network pool doesn't support create l3 network") )); } } }