+ @Override
+ public McCapabilities getMcCapbilities(String nodeId, String mcLcp) {
+ /*
+ * Getting physical mapping corresponding to logical connection point
+ */
+ InstanceIdentifier<McCapabilities> mcCapabilitiesIID = InstanceIdentifier.builder(Network.class)
+ .child(Nodes.class, new NodesKey(nodeId)).child(McCapabilities.class, new McCapabilitiesKey(mcLcp)).build();
+ try (ReadTransaction readTx = this.dataBroker.newReadOnlyTransaction()) {
+ Optional<McCapabilities> mcCapObject = readTx.read(LogicalDatastoreType.CONFIGURATION,
+ mcCapabilitiesIID).get();
+ if (mcCapObject.isPresent()) {
+ McCapabilities mcCap = mcCapObject.get();
+ LOG.info("Found MC-cap for {} - {}. Mapping: {}", nodeId, mcLcp, mcCap.toString());
+ return mcCap;
+ }
+ LOG.warn("Could not find mapping for logical connection point {} for nodeId {}", mcLcp, nodeId);
+ } catch (InterruptedException | ExecutionException ex) {
+ LOG.error("Unable to read mapping for logical connection point : {} for nodeId {}", mcLcp,
+ nodeId, ex);
+ }
+ return null;
+ }