X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding%2Fmdsal-binding-dom-codec%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fdom%2Fcodec%2Fimpl%2FAbstractBindingNormalizedNodeCacheHolder.java;h=7dde038e07b8965660bedd9d2ad338afcd65a417;hb=df008277cd1db82cad25a713aeaebfc72b9a655c;hp=fa5dc674aa32e3eea6ce4d7d4d4c08e74cd956dd;hpb=0f351bbc28ddf2cddfe30c8d018646d81953fa17;p=mdsal.git diff --git a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/AbstractBindingNormalizedNodeCacheHolder.java b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/AbstractBindingNormalizedNodeCacheHolder.java index fa5dc674aa..7dde038e07 100644 --- a/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/AbstractBindingNormalizedNodeCacheHolder.java +++ b/binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/impl/AbstractBindingNormalizedNodeCacheHolder.java @@ -7,11 +7,13 @@ */ package org.opendaylight.mdsal.binding.dom.codec.impl; -import com.google.common.base.Preconditions; +import static java.util.Objects.requireNonNull; + import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; -import java.util.Set; +import com.google.common.collect.ImmutableSet; +import org.opendaylight.yangtools.yang.binding.BindingObject; import org.opendaylight.yangtools.yang.binding.DataObject; /** @@ -19,28 +21,27 @@ import org.opendaylight.yangtools.yang.binding.DataObject; * associated. */ abstract class AbstractBindingNormalizedNodeCacheHolder { - - private final Set> cachedValues; - private final LoadingCache, BindingNormalizedNodeCache> caches = CacheBuilder - .newBuilder().build(new CacheLoader, BindingNormalizedNodeCache>() { + private final LoadingCache, DataObjectNormalizedNodeCache> caches = CacheBuilder + .newBuilder().build(new CacheLoader, DataObjectNormalizedNodeCache>() { @Override - public BindingNormalizedNodeCache load(final DataContainerCodecContext key) { - return new BindingNormalizedNodeCache(AbstractBindingNormalizedNodeCacheHolder.this, key); + public DataObjectNormalizedNodeCache load(final DataContainerCodecContext key) { + return new DataObjectNormalizedNodeCache(AbstractBindingNormalizedNodeCacheHolder.this, key); } }); + private final ImmutableSet> cacheSpec; - protected AbstractBindingNormalizedNodeCacheHolder(final Set> cacheSpec) { - cachedValues = Preconditions.checkNotNull(cacheSpec); + AbstractBindingNormalizedNodeCacheHolder(final ImmutableSet> cacheSpec) { + this.cacheSpec = requireNonNull(cacheSpec); } - BindingNormalizedNodeCache getCachingSerializer(final DataContainerCodecContext childCtx) { + DataObjectNormalizedNodeCache getCachingSerializer(final DataContainerCodecContext childCtx) { if (isCached(childCtx.getBindingClass())) { return caches.getUnchecked(childCtx); } return null; } - boolean isCached(final Class type) { - return cachedValues.contains(type); + final boolean isCached(final Class type) { + return cacheSpec.contains(type); } }