private LogicalRouterImpl(LogicalRouterBuilder base) { if (base.getKey() == null) { this._key = new LogicalRouterKey( base.getUuid() ); this._uuid = base.getUuid(); } else { this._key = base.getKey(); this._uuid = _key.getUuid(); } this._description = base.getDescription(); this._name = base.getName(); this._port = base.getPort(); this._status = base.getStatus(); this._tenantId = base.getTenantId(); this._adminStateUp = base.isAdminStateUp(); this._public = base.isPublic(); switch (base.augmentation.size()) { case 0: this.augmentation = Collections.emptyMap(); break; case 1: final Map.Entry<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.faas.logical.faas.logical.routers.rev151013.logical.routers.container.logical.routers.LogicalRouter>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.faas.logical.faas.logical.routers.rev151013.logical.routers.container.logical.routers.LogicalRouter>> e = base.augmentation.entrySet().iterator().next(); this.augmentation = Collections.<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.faas.logical.faas.logical.routers.rev151013.logical.routers.container.logical.routers.LogicalRouter>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.faas.logical.faas.logical.routers.rev151013.logical.routers.container.logical.routers.LogicalRouter>>singletonMap(e.getKey(), e.getValue()); break; default : this.augmentation = new HashMap<>(base.augmentation); } }
private LogicalRouterBuilder initLogicalRouterBuilder(EndpointGroup epg, Uuid tenantId, boolean isPublic) { LogicalRouterBuilder builder = new LogicalRouterBuilder(); builder.setAdminStateUp(true); builder.setName(new Text(epg.getId().getValue())); if (epg.getDescription() != null) builder.setDescription(new Text("gbp-epg: " + epg.getDescription().getValue())); else builder.setDescription(new Text("gbp-epg")); builder.setPublic(isPublic); builder.setTenantId(tenantId); builder.setUuid(new Uuid(UUID.randomUUID().toString())); return builder; }
private static boolean needToAddPublicPort(LogicalRouterBuilder logicalRouter) { if (logicalRouter.isPublic() != null && logicalRouter.isPublic().booleanValue()) { if (logicalRouter.getPort() == null) { return true; } for (Uuid portId : logicalRouter.getPort()) { Port port = readPortFromDs(logicalRouter.getTenantId(), portId); if (port != null && port.isIsPublic() != null && port.isIsPublic().booleanValue()) { return false; } } return true; } return false; }
lSwitchPair.setFirst((LogicalSwitchBuilder) first); } else if (first instanceof LogicalRouter) { lRouterPair.setFirst(new LogicalRouterBuilder((LogicalRouter) first)); } else if (first instanceof LogicalRouterBuilder) { lRouterPair.setFirst((LogicalRouterBuilder) first); lSwitchPair.setSecond((LogicalSwitchBuilder) second); } else if (second instanceof LogicalRouter) { lRouterPair.setSecond(new LogicalRouterBuilder((LogicalRouter) second)); } else if (second instanceof LogicalRouterBuilder) { lRouterPair.setSecond((LogicalRouterBuilder) second); lportb.build(), true); wTx.put(logicalDatastoreType, UlnIidFactory.logicalRouterIid(lRouterPair.getFirst().getTenantId(), lRouterPair.getFirst().getUuid()), lRouterPair.getFirst().build(), true); lportb.build(), true); wTx.put(logicalDatastoreType, UlnIidFactory.logicalRouterIid(lRouterPair.getSecond().getTenantId(), lRouterPair.getSecond().getUuid()), lRouterPair.getSecond().build(), true);
.getValue()); } else if (lRouterBuilder != null) { portbuilder.setLocationId(lRouterBuilder.getUuid()); portbuilder.setLocationType(LocationType.RouterType); portbuilder.setTenantId(lRouterBuilder.getTenantId()); lRouterBuilder.setPort(merge(lRouterBuilder.getPort(), firstNodePorts)); LOG.debug("Inserting New Port {} in Router {}", portbuilder.getUuid().getValue(), lRouterBuilder.getUuid() .getValue());
Uuid faasTenantId = getFaasTenantId(gbpTenantId); LogicalRouterBuilder consLR = initLogicalRouterBuilder(consEpg, faasTenantId, true); UlnDatastoreApi.submitLogicalRouterToDs(consLR.build()); ConsumerNetworkBuilder cNetBuilder = new ConsumerNetworkBuilder(lNetbuilder.getConsumerNetwork()); cNetBuilder.setLogicalRouterId(consLR.getUuid()); lNetbuilder.setConsumerNetwork(cNetBuilder.build()); if (!UlnDatastoreApi.attachAndSubmitToDs(consLR.getUuid(), lNetbuilder.getConsumerNetwork() .getLogicalSwitchId(), faasTenantId, new Pair<>(LocationType.RouterType, LocationType.SwitchType), null, null)) { LOG.error("Failed to join Consumer Public Logical Router to Logical Switch in a Logical Network"); LOG.debug("Attached Consumer Public Router {} to Consumer Switch {}", consLR.getUuid().getValue(), lNetbuilder.getConsumerNetwork().getLogicalSwitchId().getValue()); Uuid faasTenantId = getFaasTenantId(gbpTenantId); LogicalRouterBuilder provLR = initLogicalRouterBuilder(provEpg, faasTenantId, true); provLR.setPublic(true); UlnDatastoreApi.submitLogicalRouterToDs(provLR.build()); ProviderNetworkBuilder cNetBuilder = new ProviderNetworkBuilder(lNetbuilder.getProviderNetwork()); cNetBuilder.setLogicalRouterId(provLR.getUuid()); lNetbuilder.setProviderNetwork(cNetBuilder.build()); if (!UlnDatastoreApi.attachAndSubmitToDs(provLR.getUuid(), lNetbuilder.getProviderNetwork() .getLogicalSwitchId(), faasTenantId, new Pair<>(LocationType.RouterType, LocationType.SwitchType), null, null)) { LOG.error("Failed to join Provider Public Logical Router to Logical Switch in a Logical Network"); LOG.debug("Attached Provider Public Router {} to Provider Switch {}", provLR.getUuid().getValue(), lNetbuilder.getProviderNetwork().getLogicalSwitchId().getValue());
LogicalRouter dsRouter = readLogicalRouterFromDs(newRouter.getTenantId(), newRouter.getUuid()); if (dsRouter != null) { LogicalRouterBuilder builder = new LogicalRouterBuilder(newRouter); builder.setPort(merge(dsRouter.getPort(), newRouter.getPort())); updatedRouter = builder.build();
if (!UlnDatastoreApi.attachAndSubmitToDs(consLR.getUuid(), lNetbuilder.getConsumerNetwork() .getLogicalSwitchId(), faasTenantId, new Pair<>(LocationType.RouterType, LocationType.SwitchType))) { LOG.error("Failed to join Consumer Logical Router to Logical Switch in a Logical Network"); return; LOG.debug("Attached Consumer Router {} to Consumer Switch {}", consLR.getUuid().getValue(), lNetbuilder.getConsumerNetwork().getLogicalSwitchId().getValue()); if (!UlnDatastoreApi.attachAndSubmitToDs(provLR.getUuid(), lNetbuilder.getProviderNetwork() .getLogicalSwitchId(), faasTenantId, new Pair<>(LocationType.RouterType, LocationType.SwitchType))) { LOG.error("Failed to join Provider Logical Router to Logical Switch in a Logical Network"); return; LOG.debug("Attached Provider Router {} to Provider Switch {}", provLR.getUuid().getValue(), lNetbuilder.getProviderNetwork().getLogicalSwitchId().getValue()); ConsumerNetworkBuilder cNetBuilder = new ConsumerNetworkBuilder(lNetbuilder.getConsumerNetwork()); cNetBuilder.setLogicalRouterId(consLR.getUuid()); lNetbuilder.setConsumerNetwork(cNetBuilder.build()); ProviderNetworkBuilder pNetBuilder = new ProviderNetworkBuilder(lNetbuilder.getProviderNetwork()); pNetBuilder.setLogicalRouterId(provLR.getUuid()); lNetbuilder.setProviderNetwork(pNetBuilder.build()); lNetbuilder.setContractId(contractId);