From 36e213444660f0a74ed415adeab490a5f3d50a6f Mon Sep 17 00:00:00 2001
From: Fabio Pistolesi <fabio.pistolesi@forgerock.com>
Date: Fri, 09 Oct 2015 11:40:06 +0000
Subject: [PATCH] OPENDJ-1791 Implement a tool like dbtest for the pluggable backend
---
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/spi/TreeName.java | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/spi/TreeName.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/spi/TreeName.java
index 3d8e306..7a575ce 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/spi/TreeName.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/spi/TreeName.java
@@ -25,6 +25,8 @@
*/
package org.opends.server.backends.pluggable.spi;
+import org.forgerock.util.Reject;
+
/**
* Represents the name of a tree (key-value store) in a database.
* A tree name is made of the baseDN it is part of, and the identifier of the index it represents.
@@ -60,8 +62,11 @@
*/
public static TreeName valueOf(String treeName)
{
- final String[] split = treeName.split("/");
- return new TreeName(split[0], split[1]);
+ int lastSlash = treeName.lastIndexOf('/');
+ Reject.ifTrue(lastSlash < 2 || treeName.charAt(0) != '/', "TreeName is not of the form /<name>/<name>");
+ String baseDN = treeName.substring(1, lastSlash);
+ String indexId = treeName.substring(lastSlash + 1);
+ return new TreeName(baseDN, indexId);
}
/**
@@ -123,4 +128,4 @@
{
return s.compareTo(o.s);
}
-}
\ No newline at end of file
+}
--
Gitblit v1.10.0