Introduce Object Cache API and no-op implementation
[yangtools.git] / common / object-cache-noop / src / main / java / org / opendaylight / yangtools / objcache / impl / StaticObjectCacheBinder.java
diff --git a/common/object-cache-noop/src/main/java/org/opendaylight/yangtools/objcache/impl/StaticObjectCacheBinder.java b/common/object-cache-noop/src/main/java/org/opendaylight/yangtools/objcache/impl/StaticObjectCacheBinder.java
new file mode 100644 (file)
index 0000000..2af58bf
--- /dev/null
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.yangtools.objcache.impl;
+
+import org.opendaylight.yangtools.objcache.ObjectCache;
+import org.opendaylight.yangtools.objcache.spi.AbstractObjectCacheBinder;
+import org.opendaylight.yangtools.objcache.spi.IObjectCacheFactory;
+import org.opendaylight.yangtools.objcache.spi.NoopObjectCache;
+
+public final class StaticObjectCacheBinder extends AbstractObjectCacheBinder {
+       private static final StaticObjectCacheBinder INSTANCE = new StaticObjectCacheBinder();
+
+       private StaticObjectCacheBinder() {
+               super(new IObjectCacheFactory() {
+                       @Override
+                       public ObjectCache getObjectCache(final Class<?> objClass) {
+                               return NoopObjectCache.getInstance();
+                       }
+               });
+       }
+
+       public static StaticObjectCacheBinder getInstance() {
+               return INSTANCE;
+       }
+}