Extend DataObjectCache to allow for custom key
[genius.git] / interfacemanager / interfacemanager-impl / src / main / java / org / opendaylight / genius / interfacemanager / listeners / InterfaceChildCache.java
index e59c04dbdadd58e1cbb9c055e834a5f24e473ae1..129b80abcfed39dba7a219172b7c3d7793d86727 100644 (file)
@@ -9,16 +9,14 @@
 package org.opendaylight.genius.interfacemanager.listeners;
 
 import com.google.common.base.Optional;
-
 import java.util.Collections;
 import java.util.List;
 import javax.inject.Inject;
 import javax.inject.Singleton;
-
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
 import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
-import org.opendaylight.genius.mdsalutil.cache.DataObjectCache;
+import org.opendaylight.genius.mdsalutil.cache.InstanceIdDataObjectCache;
 import org.opendaylight.infrautils.caches.CacheProvider;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406.InterfaceChildInfo;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.meta.rev160406._interface.child.info.InterfaceParentEntry;
@@ -32,11 +30,11 @@ import org.slf4j.LoggerFactory;
 public class InterfaceChildCache {
     private static final Logger LOG = LoggerFactory.getLogger(InterfaceChildCache.class);
 
-    private final DataObjectCache<InterfaceParentEntry> dataObjectCache;
+    private final InstanceIdDataObjectCache<InterfaceParentEntry> dataObjectCache;
 
     @Inject
     public InterfaceChildCache(final DataBroker dataBroker, final CacheProvider cacheProvider) {
-        dataObjectCache = new DataObjectCache<>(InterfaceParentEntry.class,
+        dataObjectCache = new InstanceIdDataObjectCache<>(InterfaceParentEntry.class,
                 dataBroker, LogicalDatastoreType.CONFIGURATION,
                 InstanceIdentifier.create(InterfaceChildInfo.class).child(InterfaceParentEntry.class),
                 cacheProvider);
@@ -47,8 +45,8 @@ public class InterfaceChildCache {
             Optional<InterfaceParentEntry> interfaceParentEntry = dataObjectCache.get(
                     getInterfaceParentEntryIdentifier(parentInterfaceName));
             if (interfaceParentEntry.isPresent()) {
-                List<InterfaceChildEntry> interfaceChildEntries = (interfaceParentEntry.get()
-                        .getInterfaceChildEntry() != null) ? interfaceParentEntry.get()
+                List<InterfaceChildEntry> interfaceChildEntries = interfaceParentEntry.get()
+                        .getInterfaceChildEntry() != null ? interfaceParentEntry.get()
                         .getInterfaceChildEntry() : Collections.emptyList();
                 return Optional.of(Collections.unmodifiableList(interfaceChildEntries));
             }