public ExternalGatewayAsEndpointBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey arg) { this._address = arg.getAddress(); this._addressType = arg.getAddressType(); this._contextType = arg.getContextType(); this._contextId = arg.getContextId(); } public ExternalGatewayAsEndpointBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.forwarding.rev160427.HasAddressType arg) {
public boolean registerEndpoint(AddressEndpointReg regEndpointInput) { RegisterEndpointInput regBaseEpInput = new RegisterEndpointInputBuilder().setAddressEndpointReg( ImmutableList.<AddressEndpointReg>of(regEndpointInput)) .build(); return registerEndpoint(regBaseEpInput); }
public boolean unregisterEndpoint(AddressEndpointUnreg addrEpUnreg) { UnregisterEndpointInput input = new UnregisterEndpointInputBuilder().setAddressEndpointUnreg( ImmutableList.<AddressEndpointUnreg>of(new AddressEndpointUnregBuilder().setKey(addrEpUnreg.getKey()) .build())).build(); return unregisterEndpoint(input); }
private void registerBaseEndpointAndStoreMapping(List<AddressEndpointReg> addrEpRegs, Port port, WriteTransaction wTx) { RegisterEndpointInput regBaseEpInput = new RegisterEndpointInputBuilder().setAddressEndpointReg(addrEpRegs) .build(); boolean isRegisteredBaseEndpoint = epRegistrator.registerEndpoint(regBaseEpInput); if (!isRegisteredBaseEndpoint) { LOG.error("Failed to register an address endpoint: {}", addrEpRegs); return; } for (AddressEndpointReg addrEpReg : addrEpRegs) { if (MappingUtils.L2_BRDIGE_DOMAIN.equals(addrEpReg.getContextType())) { UniqueId portId = new UniqueId(port.getUuid().getValue()); LOG.trace("Adding Port-BaseEndpoint mapping for port {} (device owner {}) and endpoint {}", port.getUuid()); AddressEndpointKey addrEpKey = new AddressEndpointKey(addrEpReg.getAddress(), addrEpReg.getAddressType(), addrEpReg.getContextId(), addrEpReg.getContextType()); addBaseEndpointMappings(addrEpKey, portId, wTx); } } }
private org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.UnregisterEndpointInput createUnregisterBaseEndpointInput( Port port, Neutron neutron) { UnregisterEndpointInputBuilder inputBuilder = new UnregisterEndpointInputBuilder(); List<AddressEndpointUnreg> list = new ArrayList<>(); AddressEndpointUnregBuilder addrL2EpUnregBuilder = new AddressEndpointUnregBuilder(); addrL2EpUnregBuilder.setAddress(port.getMacAddress().getValue()) .setAddressType(MacAddressType.class) .setContextId(new ContextId(port.getNetworkId().getValue())) .setContextType(MappingUtils.L2_BRDIGE_DOMAIN); list.add(addrL2EpUnregBuilder.build()); Optional<FixedIps> potentialFirstIp = PortUtils.resolveFirstFixedIps(port); if (potentialFirstIp.isPresent()) { ContextId l3ContextId = resolveL3ContextForPort(port, potentialFirstIp.get(), neutron); AddressEndpointUnregBuilder addrL3EpUnregBuilder = new AddressEndpointUnregBuilder(); addrL3EpUnregBuilder.setAddress(MappingUtils.ipAddressToStringIpPrefix(potentialFirstIp.get().getIpAddress())) .setAddressType(IpPrefixType.class) .setContextId(l3ContextId) .setContextType(L3Context.class); list.add(addrL3EpUnregBuilder.build()); } inputBuilder.setAddressEndpointUnreg(list); return inputBuilder.build(); }
@Override public ListenableFuture<RpcResult<Void>> apply(final Optional<AddressEndpoint> input) throws Exception { final ListenableFuture<RpcResult<Void>> nextResult; if (input == null || !input.isPresent() || !isSameEpg(epInput, input.get())) { // invoke service return JdkFutureAdapters.listenInPoolThread(l3EndpointService.registerEndpoint(epInput)); } else { final String existingL3EpMsg = String.format("address-endpoint for given key already exists: %s | %s", addressEndpoint.getContextId(), addressEndpoint.getAddress() ); nextResult = Futures.immediateFailedFuture(new IllegalStateException(existingL3EpMsg)); } return nextResult; } });
private ListenableFuture<RpcResult<Void>> chainL3EPServiceIfEpAbsent(final RegisterEndpointInput epInput) { AddressEndpointReg addressEndpoint = epInput.getAddressEndpointReg().get(0); CheckedFuture<Optional<AddressEndpoint>, ReadFailedException> existingEndpointFuture = findExistingEndPoint(addressEndpoint.getContextId(), addressEndpoint.getAddress()); return Futures.transform(existingEndpointFuture, new AsyncFunction<Optional<AddressEndpoint>, RpcResult<Void>>() { @Override public ListenableFuture<RpcResult<Void>> apply(final Optional<AddressEndpoint> input) throws Exception { final ListenableFuture<RpcResult<Void>> nextResult; if (input == null || !input.isPresent() || !isSameEpg(epInput, input.get())) { // invoke service return JdkFutureAdapters.listenInPoolThread(l3EndpointService.registerEndpoint(epInput)); } else { final String existingL3EpMsg = String.format("address-endpoint for given key already exists: %s | %s", addressEndpoint.getContextId(), addressEndpoint.getAddress() ); nextResult = Futures.immediateFailedFuture(new IllegalStateException(existingL3EpMsg)); } return nextResult; } }); }
private $YangModuleInfoImpl() { Set<YangModuleInfo> set = new HashSet<>(); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.$YangModuleInfoImpl.getInstance()); importedModules = ImmutableSet.copyOf(set); InputStream stream = $YangModuleInfoImpl.class.getResourceAsStream(resourcePath); if (stream == null) { throw new IllegalStateException("Resource '" + resourcePath + "' is missing"); } try { stream.close(); } catch (IOException e) { // Resource leak, but there is nothing we can do } }
private boolean isSameEpg(RegisterEndpointInput epInput, AddressEndpoint input) { if (epInput == null || epInput.getAddressEndpointReg() == null || epInput.getAddressEndpointReg().isEmpty()) { return true; } final AddressEndpointReg epInputAddressEndpoint = epInput.getAddressEndpointReg().get(0); if (epInputAddressEndpoint.getEndpointGroup() == null || epInputAddressEndpoint.getEndpointGroup().isEmpty()) { return true; } if (input == null || input.getEndpointGroup() == null || input.getEndpointGroup().isEmpty()) { return true; } final EndpointGroupId addressEndpointGroupId = epInputAddressEndpoint.getEndpointGroup().get(0); final EndpointGroupId existingEndpointGroupId = input.getEndpointGroup().get(0); return addressEndpointGroupId.equals(existingEndpointGroupId); }
this._address = ((org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey)arg).getAddress(); isValidArg = true;
public boolean registerEndpoint(RegisterEndpointInput regBaseEpInput) { try { RpcResult<Void> rpcResult = baseEpService.registerEndpoint(regBaseEpInput).get(); if (!rpcResult.isSuccessful()) { LOG.warn("Illegal state - registerEndpoint was not successful. Input of RPC: {}", regBaseEpInput); return false; } return true; } catch (InterruptedException | ExecutionException e) { LOG.error("Base endpoint registration failed. {}", regBaseEpInput, e); return false; } }
public boolean unregisterEndpoint(UnregisterEndpointInput input) { try { RpcResult<Void> rpcResult = baseEpService.unregisterEndpoint(input).get(); if (!rpcResult.isSuccessful()) { LOG.warn("Illegal state - unregisterEndpoint was not successful. Input of RPC: {}", input); return false; } return true; } catch (InterruptedException | ExecutionException e) { LOG.error("unregisterEndpoint failed. {}", input, e); return false; } }
public VppEndpointBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey arg) { this._address = arg.getAddress(); this._addressType = arg.getAddressType(); this._contextType = arg.getContextType(); this._contextId = arg.getContextId(); } public VppEndpointBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.forwarding.rev160427.HasAddressType arg) {
private $YangModuleInfoImpl() { Set<YangModuleInfo> set = new HashSet<>(); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.yang.extension.yang.ext.rev130709.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.sxp.database.rev160308.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.forwarding.rev160427.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.renderer.rev151103.$YangModuleInfoImpl.getInstance()); importedModules = ImmutableSet.copyOf(set); InputStream stream = $YangModuleInfoImpl.class.getResourceAsStream(resourcePath); if (stream == null) { throw new IllegalStateException("Resource '" + resourcePath + "' is missing"); } try { stream.close(); } catch (IOException e) { // Resource leak, but there is nothing we can do } }
this._address = ((org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey)arg).getAddress(); isValidArg = true;
public BaseEndpointByPortBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey arg) { this._address = arg.getAddress(); this._addressType = arg.getAddressType(); this._contextType = arg.getContextType(); this._contextId = arg.getContextId(); } public BaseEndpointByPortBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.forwarding.rev160427.HasAddressType arg) {
private $YangModuleInfoImpl() { Set<YangModuleInfo> set = new HashSet<>(); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.forwarding.l2_l3.rev160427.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.forwarding.rev160427.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.$YangModuleInfoImpl.getInstance()); set.add(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.$YangModuleInfoImpl.getInstance()); importedModules = ImmutableSet.copyOf(set); InputStream stream = $YangModuleInfoImpl.class.getResourceAsStream(resourcePath); if (stream == null) { throw new IllegalStateException("Resource '" + resourcePath + "' is missing"); } try { stream.close(); } catch (IOException e) { // Resource leak, but there is nothing we can do } }
this._address = ((org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey)arg).getAddress(); isValidArg = true;
public PortByBaseEndpointBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey arg) { this._address = arg.getAddress(); this._addressType = arg.getAddressType(); this._contextType = arg.getContextType(); this._contextId = arg.getContextId(); } public PortByBaseEndpointBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.forwarding.rev160427.HasAddressType arg) {
this._address = ((org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.AddressEndpointKey)arg).getAddress(); isValidArg = true;