From 25517c76f0939788908cf2adea012ff0f39b2aca Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Wed, 17 Dec 2014 23:37:46 +0000
Subject: [PATCH] OPENDJ-1602 (CR-5566) New pluggable storage based backend
---
opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java | 31 ++++++++++++++++---------------
1 files changed, 16 insertions(+), 15 deletions(-)
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java b/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java
index a0f6c42..c8e8195 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java
@@ -26,6 +26,10 @@
package org.opends.server.backends.persistit;
+
+
+import static org.opends.server.util.StaticUtils.getFileForPath;
+
import java.io.File;
import java.util.HashMap;
import java.util.Map;
@@ -37,6 +41,7 @@
import org.forgerock.opendj.ldap.ByteSequence;
import org.forgerock.opendj.ldap.ByteString;
import org.opends.server.admin.std.server.LocalDBBackendCfg;
+import org.opends.server.admin.std.server.PersistitBackendCfg;
import org.opends.server.backends.pluggable.spi.Cursor;
import org.opends.server.backends.pluggable.spi.Importer;
import org.opends.server.backends.pluggable.spi.ReadOperation;
@@ -172,7 +177,7 @@
throw new StorageRuntimeException(e);
}
}
-
+
@Override
public void update(TreeName treeName, ByteSequence key, UpdateFunction f)
{
@@ -329,23 +334,25 @@
}
}
- private final File backendDirectory;
- private final LocalDBBackendCfg config;
+
+
+ private File backendDirectory;
+ private PersistitBackendCfg config;
private Persistit db;
private final ConcurrentMap<TreeName, Volume> volumes = new ConcurrentHashMap<TreeName, Volume>();
private Properties properties;
- public PersistItStorage(File backendDirectory, LocalDBBackendCfg config) {
- this.backendDirectory = backendDirectory;
- this.config = config;
- }
-
private Volume getVolume(TreeName treeName) {
return volumes.get(treeName.getSuffix());
}
@Override
- public void initialize(Map<String, String> options) {
+ public void initialize(PersistitBackendCfg cfg)
+ {
+ this.config = cfg;
+ this.backendDirectory = new File(getFileForPath(config.getDBDirectory()),
+ config.getBackendId());
+
properties = new Properties();
properties.setProperty("datapath", backendDirectory.toString());
properties.setProperty("logpath", backendDirectory.toString());
@@ -362,12 +369,6 @@
+ ",extensionSize:1M"
+ ",maximumSize:10G");
}
-
- if (options != null) {
- for (Entry<String, String> entry : options.entrySet()) {
- properties.setProperty(entry.getKey(), entry.getValue());
- }
- }
}
/**
--
Gitblit v1.10.0