From d4e41526c8ba73d82f59b683afa9029a648a1cf3 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Thu, 18 Dec 2014 10:40:01 +0000
Subject: [PATCH] OPENDJ-1602 New pluggable storage based backend

---
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/spi/TreeName.java |   81 ++++++----------------------------------
 1 files changed, 12 insertions(+), 69 deletions(-)

diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/spi/TreeName.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/spi/TreeName.java
index 0a12e6e..fa100c3 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/spi/TreeName.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/spi/TreeName.java
@@ -25,90 +25,33 @@
  */
 package org.opends.server.backends.pluggable.spi;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
 /** Assumes name components don't contain a '/'. */
 public final class TreeName
 {
-  public static TreeName of(final String... names)
-  {
-    return new TreeName(Arrays.asList(names));
-  }
-
-  private final List<String> names;
+  private final String baseDN;
+  private final String indexId;
   private final String s;
 
-  public TreeName(final List<String> names)
+  public TreeName(String baseDN, String indexId)
   {
-    this.names = names;
-    final StringBuilder builder = new StringBuilder();
-    for (final String name : names)
-    {
-      builder.append('/');
-      builder.append(name);
-    }
-    this.s = builder.toString();
+    this.baseDN = baseDN;
+    this.indexId = indexId;
+    this.s = '/' + baseDN + '/' + indexId;
   }
 
-  public List<String> getNames()
+  public String getBaseDN()
   {
-    return names;
+    return baseDN;
   }
 
-  public TreeName child(final String name)
+  public TreeName replaceBaseDN(String newBaseDN)
   {
-    final List<String> newNames = new ArrayList<String>(names.size() + 1);
-    newNames.addAll(names);
-    newNames.add(name);
-    return new TreeName(newNames);
+    return new TreeName(newBaseDN, indexId);
   }
 
-  public TreeName getSuffix()
+  public String getIndexId()
   {
-    if (names.size() == 0)
-    {
-      throw new IllegalStateException();
-    }
-    return new TreeName(Collections.singletonList(names.get(0)));
-  }
-
-  public TreeName replaceSuffix(TreeName newSuffix)
-  {
-    if (names.size() == 0)
-    {
-      throw new IllegalStateException();
-    }
-    final ArrayList<String> newNames = new ArrayList<String>(names);
-    newNames.set(0, newSuffix.names.get(0));
-    return new TreeName(newNames);
-  }
-
-  public boolean isSuffixOf(TreeName treeName)
-  {
-    if (names.size() > treeName.names.size())
-    {
-      return false;
-    }
-    for (int i = 0; i < names.size(); i++)
-    {
-      if (!treeName.names.get(i).equals(names.get(i)))
-      {
-        return false;
-      }
-    }
-    return true;
-  }
-
-  public TreeName getIndex()
-  {
-    if (names.size() == 1)
-    {
-      return null;
-    }
-    return new TreeName(names.subList(1, names.size()));
+    return indexId;
   }
 
   @Override

--
Gitblit v1.10.0