public LogicalPortAugmentBuilder(LogicalPortAugment base) { this._lportAttribute = base.getLportAttribute(); }
@Override public boolean equals(java.lang.Object obj) { if (this == obj) { return true; } if (!(obj instanceof DataObject)) { return false; } if (!org.opendaylight.yang.gen.v1.urn.opendaylight.faas.fabric.services.rev150930.LogicalPortAugment.class.equals(((DataObject)obj).getImplementedInterface())) { return false; } org.opendaylight.yang.gen.v1.urn.opendaylight.faas.fabric.services.rev150930.LogicalPortAugment other = (org.opendaylight.yang.gen.v1.urn.opendaylight.faas.fabric.services.rev150930.LogicalPortAugment)obj; if (!Objects.equals(_lportAttribute, other.getLportAttribute())) { return false; } return true; }
public static LportAttribute getLogicalPortAttr(DataBroker broker, InstanceIdentifier<TerminationPoint> iid) { ReadTransaction rt = broker.newReadOnlyTransaction(); Optional<TerminationPoint> opt = MdSalUtils.syncReadOper(rt, iid); if (opt.isPresent()) { TerminationPoint tp = opt.get(); return tp.getAugmentation(LogicalPortAugment.class).getLportAttribute(); } return null; }
void rmAcl() throws Exception { Optional<TerminationPoint> optional = readTp(); if (optional.isPresent()) { LogicalPortAugment lpAug = optional.get().getAugmentation(LogicalPortAugment.class); if (lpAug == null) { return; } LportAttribute lattr = lpAug.getLportAttribute(); List<UnderlayerPorts> uports = lattr.getUnderlayerPorts(); if (uports == null || uports.isEmpty()) { return; } WriteTransaction trans = databroker.newWriteOnlyTransaction(); for (UnderlayerPorts uport : uports) { @SuppressWarnings("unchecked") InstanceIdentifier<BdPort> bdPortIid = (InstanceIdentifier<BdPort>) uport.getPortRef(); InstanceIdentifier<FabricAcl> path = bdPortIid.child(FabricAcl.class, new FabricAclKey(aclname)); trans.delete(LogicalDatastoreType.OPERATIONAL, path); } MdSalUtils.wrapperSubmit(trans); } }
void removeEpAccessPort() throws Exception { WriteTransaction trans = databroker.newWriteOnlyTransaction(); Optional<TerminationPoint> optional = readTp(); if (optional.isPresent()) { LogicalPortAugment lpAug = optional.get().getAugmentation(LogicalPortAugment.class); if (lpAug != null) { LportAttribute lattr = lpAug.getLportAttribute(); List<UnderlayerPorts> uports = lattr.getUnderlayerPorts(); if (uports == null || uports.isEmpty()) { return; } List<FabricAcl> acls = lattr.getFabricAcl(); if (acls == null || acls.isEmpty()) { for (UnderlayerPorts uport : uports) { trans.delete(LogicalDatastoreType.OPERATIONAL, uport.getPortRef()); } } InstanceIdentifier<UnderlayerPorts> iid = lportIid.augmentation(LogicalPortAugment.class) .child(LportAttribute.class) .child(UnderlayerPorts.class); trans.delete(LogicalDatastoreType.OPERATIONAL, iid); MdSalUtils.wrapperSubmit(trans); } } }
void addAcl() throws Exception { Optional<TerminationPoint> optional = readTp(); if (optional.isPresent()) { LogicalPortAugment lpAug = optional.get().getAugmentation(LogicalPortAugment.class); if (lpAug == null) { return; } LportAttribute lattr = lpAug.getLportAttribute(); List<UnderlayerPorts> uports = lattr.getUnderlayerPorts(); if (uports == null || uports.isEmpty()) { return; } WriteTransaction trans = databroker.newWriteOnlyTransaction(); FabricAclBuilder builder = new FabricAclBuilder(); builder.setFabricAclName(aclname); for (UnderlayerPorts uport : uports) { @SuppressWarnings("unchecked") InstanceIdentifier<BdPort> bdPortIid = (InstanceIdentifier<BdPort>) uport.getPortRef(); InstanceIdentifier<FabricAcl> path = bdPortIid.child(FabricAcl.class, new FabricAclKey(aclname)); trans.merge(LogicalDatastoreType.OPERATIONAL, path, builder.build(), true); } MdSalUtils.wrapperSubmit(trans); } }
@SuppressWarnings("unchecked") public void createEpAccessPort(WriteTransaction trans, Endpoint ep, InstanceIdentifier<BdPort> bdPortIid) throws Exception { if (!calcLogicPortIId(ep)) { return; } InstanceIdentifier<Node> devNode = (InstanceIdentifier<Node>) ep.getLocation().getNodeRef().getValue(); Optional<TerminationPoint> optional = readTp(); InstanceIdentifier<UnderlayerPorts> iid = lportIid.augmentation(LogicalPortAugment.class) .child(LportAttribute.class) .child(UnderlayerPorts.class, new UnderlayerPortsKey(bdPortIid)); UnderlayerPortsBuilder builder = new UnderlayerPortsBuilder(); builder.setPortRef(bdPortIid); trans.put(LogicalDatastoreType.OPERATIONAL, iid, builder.build()); if (optional.isPresent()) { LogicalPortAugment lpAug = optional.get().getAugmentation(LogicalPortAugment.class); if (lpAug != null) { LportAttribute lattr = lpAug.getLportAttribute(); List<FabricAcl> acls = lattr.getFabricAcl(); if (acls != null && acls.isEmpty()) { cpAcls(acls, bdPortIid, trans); } } } }