+ ElanUtils.removeAndGetElanInterfaces(elanName).forEach(elanInterfaceName -> {
+ jobCoordinator.enqueueJob(ElanUtils.getElanInterfaceJobKey(elanInterfaceName), () -> {
+ WriteTransaction writeConfigTxn = broker.newWriteOnlyTransaction();
+ LOG.info("Deleting the elanInterface present under ConfigDS:{}", elanInterfaceName);
+ ElanUtils.delete(broker, LogicalDatastoreType.CONFIGURATION,
+ ElanUtils.getElanInterfaceConfigurationDataPathId(elanInterfaceName));
+ elanInterfaceManager.unbindService(elanInterfaceName, writeConfigTxn);
+ ElanUtils.removeElanInterfaceToElanInstanceCache(elanName, elanInterfaceName);
+ LOG.info("unbind the Interface:{} service bounded to Elan:{}", elanInterfaceName, elanName);
+ return Collections.singletonList(writeConfigTxn.submit());
+ }, ElanConstants.JOB_MAX_RETRIES);
+ });