import org.opendaylight.genius.interfacemanager.globals.InterfaceInfo;
import org.opendaylight.genius.interfacemanager.globals.InterfaceInfo.InterfaceAdminState;
import org.opendaylight.genius.interfacemanager.interfaces.IInterfaceManager;
+import org.opendaylight.genius.interfacemanager.listeners.InternalTunnelCache;
import org.opendaylight.genius.interfacemanager.renderer.ovs.utilities.SouthboundUtils;
import org.opendaylight.genius.interfacemanager.rpcservice.InterfaceManagerRpcService;
import org.opendaylight.genius.interfacemanager.servicebindings.flowbased.utilities.FlowBasedServicesUtils;
private Map<InstanceIdentifier<Node>, OvsdbBridgeAugmentation> nodeIidToBridgeMap;
private EntityOwnershipCandidateRegistration configEntityCandidate;
private EntityOwnershipCandidateRegistration bindingEntityCandidate;
+ private InternalTunnelCache internalTunnelCache;
@Inject
public InterfacemgrProvider(@Reference final DataBroker dataBroker,
final InterfaceManagerCommonUtils interfaceManagerCommonUtils,
final InterfaceMetaUtils interfaceMetaUtils,
final IfmConfig ifmConfig,
- final IfmDiagStatusProvider ifmStatusProvider) {
+ final IfmDiagStatusProvider ifmStatusProvider,
+ final InternalTunnelCache internalTunnelCache) {
this.dataBroker = dataBroker;
this.txRunner = new ManagedNewTransactionRunnerImpl(dataBroker);
this.entityOwnershipService = entityOwnershipService;
this.interfaceMetaUtils = interfaceMetaUtils;
this.ifmConfig = ifmConfig;
this.ifmStatusProvider = ifmStatusProvider;
+ this.internalTunnelCache = internalTunnelCache;
start();
}
public boolean isItmOfTunnelsEnabled() {
return ifmConfig.isItmOfTunnels();
}
+
+ @Override
+ public void addInternalTunnelToCache(String tunnelName, org.opendaylight.yang.gen.v1.urn.ietf.params
+ .xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface iface) {
+ internalTunnelCache.add(tunnelName,iface);
+ }
+
+ @Override
+ public org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces
+ .rev140508.interfaces.state.Interface getInternalTunnelCacheInfo(String tunnelName) {
+ return internalTunnelCache.get(tunnelName);
+ }
+
+ @Override
+ public org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces
+ .rev140508.interfaces.state.Interface removeInternalTunnelFromCache(String tunnelName) {
+ return internalTunnelCache.remove(tunnelName);
+ }
}