private static ElanInterfaceBuilder createEtreeInterface(String instanceName, String interfaceName, EtreeInterfaceType interfaceType) { ElanInterfaceBuilder einterfaceBuilder = new ElanInterfaceBuilder(); einterfaceBuilder.setElanInstanceName(instanceName); einterfaceBuilder.setName(interfaceName); EtreeInterface etreeInterface = new EtreeInterfaceBuilder().setEtreeInterfaceType(interfaceType).build(); einterfaceBuilder.addAugmentation(EtreeInterface.class, etreeInterface); return einterfaceBuilder; }
@Override public void addEtreeInterface(String etreeInstanceName, String interfaceName, EtreeInterfaceType interfaceType, List<String> staticMacAddresses, String description) { ElanInstance existingElanInstance = elanInstanceManager.getElanInstanceByName(etreeInstanceName); if (existingElanInstance != null && existingElanInstance.getAugmentation(EtreeInstance.class) != null) { EtreeInterface etreeInterface = new EtreeInterfaceBuilder().setEtreeInterfaceType(interfaceType).build(); ElanInterface elanInterface; if (staticMacAddresses == null) { elanInterface = new ElanInterfaceBuilder().setElanInstanceName(etreeInstanceName) .setDescription(description).setName(interfaceName).setKey(new ElanInterfaceKey(interfaceName)) .addAugmentation(EtreeInterface.class, etreeInterface).build(); } else { elanInterface = new ElanInterfaceBuilder().setElanInstanceName(etreeInstanceName) .setDescription(description).setName(interfaceName) .setStaticMacEntries(getPhysAddress(staticMacAddresses)) .setKey(new ElanInterfaceKey(interfaceName)) .addAugmentation(EtreeInterface.class, etreeInterface).build(); } MDSALUtil.syncWrite(broker, LogicalDatastoreType.CONFIGURATION, ElanUtils.getElanInterfaceConfigurationDataPathId(interfaceName), elanInterface); LOG.debug("Creating the new Etree Interface {}", elanInterface); } }