From ac27a41b85595ecd2444a64d822ab37aa8722fed Mon Sep 17 00:00:00 2001
From: Yannick Lecaillez <yannick.lecaillez@forgerock.com>
Date: Thu, 21 May 2015 09:34:32 +0000
Subject: [PATCH] Use backendID for entry cache rather than backend instance.  RootContainer is now directly constructed with the Storage rather than getting it from the Backend.

---
 opendj-server-legacy/src/main/java/org/opends/server/extensions/DefaultEntryCache.java |   23 +++++++++++------------
 1 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/extensions/DefaultEntryCache.java b/opendj-server-legacy/src/main/java/org/opends/server/extensions/DefaultEntryCache.java
index 9f8b7b7..c78f4e0 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/extensions/DefaultEntryCache.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/extensions/DefaultEntryCache.java
@@ -119,11 +119,11 @@
 
   /** {@inheritDoc} */
   @Override
-  public Entry getEntry(Backend backend, long entryID)
+  public Entry getEntry(String backendID, long entryID)
   {
     for (EntryCache<? extends EntryCacheCfg> entryCache : cacheOrder)
     {
-      Entry entry = entryCache.getEntry(backend, entryID);
+      Entry entry = entryCache.getEntry(backendID, entryID);
       if (entry != null)
       {
         return entry.duplicate(true);
@@ -176,11 +176,11 @@
 
   /** {@inheritDoc} */
   @Override
-  public DN getEntryDN(Backend backend, long entryID)
+  public DN getEntryDN(String backendID, long entryID)
   {
     for (EntryCache<?> entryCache : cacheOrder)
     {
-      DN entryDN = entryCache.getEntryDN(backend, entryID);
+      DN entryDN = entryCache.getEntryDN(backendID, entryID);
       if (entryDN != null)
       {
         return entryDN;
@@ -191,14 +191,13 @@
 
   /** {@inheritDoc} */
   @Override
-  public void putEntry(Entry entry, Backend backend, long entryID)
+  public void putEntry(Entry entry, String backendID, long entryID)
   {
     for (EntryCache<?> entryCache : cacheOrder) {
       // The first cache in the order which can take this entry
       // gets it.
       if (entryCache.filtersAllowCaching(entry)) {
-        entryCache.putEntry(entry.duplicate(false),
-                backend, entryID);
+        entryCache.putEntry(entry.duplicate(false), backendID, entryID);
         break;
       }
     }
@@ -206,14 +205,14 @@
 
   /** {@inheritDoc} */
   @Override
-  public boolean putEntryIfAbsent(Entry entry, Backend backend, long entryID)
+  public boolean putEntryIfAbsent(Entry entry, String backendID, long entryID)
   {
     for (EntryCache<?> entryCache : cacheOrder) {
       // The first cache in the order which can take this entry
       // gets it.
       if (entryCache.filtersAllowCaching(entry)) {
         return entryCache.putEntryIfAbsent(entry.duplicate(false),
-                backend, entryID);
+                backendID, entryID);
       }
     }
 
@@ -243,10 +242,10 @@
 
   /** {@inheritDoc} */
   @Override
-  public void clearBackend(Backend backend)
+  public void clearBackend(String backendID)
   {
     for (EntryCache<?> entryCache : cacheOrder) {
-      entryCache.clearBackend(backend);
+      entryCache.clearBackend(backendID);
     }
   }
 
@@ -407,7 +406,7 @@
     // Do not clear any backends if the server is shutting down.
     if (!DirectoryServer.getInstance().isShuttingDown())
     {
-      clearBackend(backend);
+      clearBackend(backend.getBackendID());
     }
   }
 }

--
Gitblit v1.10.0