From efa949b25f472d7e4c39733678d8f0e5229f8201 Mon Sep 17 00:00:00 2001
From: Nicolas Capponi <nicolas.capponi@forgerock.com>
Date: Thu, 26 Dec 2013 15:31:32 +0000
Subject: [PATCH] Checkpoint commit for OPENDJ-1235 : Migrate configuration framework
---
opendj-sdk/opendj-admin/src/main/java/org/opends/server/admin/ManagedObjectDefinitionResource.java | 175 +++++++++++++++++++++++++---------------------------------
1 files changed, 75 insertions(+), 100 deletions(-)
diff --git a/opendj-sdk/opendj-admin/src/main/java/org/opends/server/admin/ManagedObjectDefinitionResource.java b/opendj-sdk/opendj-admin/src/main/java/org/opends/server/admin/ManagedObjectDefinitionResource.java
index b38b26d..92ddb05 100644
--- a/opendj-sdk/opendj-admin/src/main/java/org/opends/server/admin/ManagedObjectDefinitionResource.java
+++ b/opendj-sdk/opendj-admin/src/main/java/org/opends/server/admin/ManagedObjectDefinitionResource.java
@@ -26,8 +26,6 @@
package org.opends.server.admin;
-
-
import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -36,120 +34,97 @@
import java.util.MissingResourceException;
import java.util.Properties;
-
-
/**
- * A class for retrieving non-internationalized resource properties
- * associated with a managed object definition.
+ * A class for retrieving non-internationalized resource properties associated
+ * with a managed object definition.
* <p>
* Resource properties are not available for the {@link TopCfgDefn}.
*/
public final class ManagedObjectDefinitionResource {
- // Mapping from definition to property tables.
- private final Map<AbstractManagedObjectDefinition<?, ?>,
- Properties> properties;
+ // Mapping from definition to property tables.
+ private final Map<AbstractManagedObjectDefinition<?, ?>, Properties> properties;
- // The resource name prefix.
- private final String prefix;
+ // The resource name prefix.
+ private final String prefix;
-
-
- /**
- * Creates a new resource instance for the named profile.
- *
- * @param profile
- * The name of the profile.
- * @return Returns the resource instance for the named profile.
- */
- public static ManagedObjectDefinitionResource createForProfile(
- String profile) {
- return new ManagedObjectDefinitionResource("admin.profiles."
- + profile);
- }
-
-
-
- // Private constructor.
- private ManagedObjectDefinitionResource(String prefix) {
- this.properties =
- new HashMap<AbstractManagedObjectDefinition<?, ?>, Properties>();
- this.prefix = prefix;
- }
-
-
-
- /**
- * Get the resource value associated with the specified key.
- *
- * @param d
- * The managed object definition.
- * @param key
- * The resource key.
- * @return Returns the resource value associated with the specified
- * key.
- * @throws MissingResourceException
- * If the key was not found.
- * @throws UnsupportedOperationException
- * If the provided managed object definition was the
- * {@link TopCfgDefn}.
- */
- public String getString(AbstractManagedObjectDefinition<?, ?> d, String key)
- throws MissingResourceException, UnsupportedOperationException {
- if (d.isTop()) {
- throw new UnsupportedOperationException(
- "Profile resources are not available for the "
- + "Top configuration definition");
+ /**
+ * Creates a new resource instance for the named profile.
+ *
+ * @param profile
+ * The name of the profile.
+ * @return Returns the resource instance for the named profile.
+ */
+ public static ManagedObjectDefinitionResource createForProfile(String profile) {
+ return new ManagedObjectDefinitionResource("admin.profiles." + profile);
}
- Properties p = getProperties(d);
- String result = p.getProperty(key);
-
- if (result == null) {
- String baseName = prefix + "." + d.getClass().getName();
- String path = baseName.replace('.', '/') + ".properties";
-
- throw new MissingResourceException("Can't find resource "
- + path + ", key " + key, baseName, key);
+ // Private constructor.
+ private ManagedObjectDefinitionResource(String prefix) {
+ this.properties = new HashMap<AbstractManagedObjectDefinition<?, ?>, Properties>();
+ this.prefix = prefix;
}
- return result;
- }
+ /**
+ * Get the resource value associated with the specified key.
+ *
+ * @param d
+ * The managed object definition.
+ * @param key
+ * The resource key.
+ * @return Returns the resource value associated with the specified key.
+ * @throws MissingResourceException
+ * If the key was not found.
+ * @throws UnsupportedOperationException
+ * If the provided managed object definition was the
+ * {@link TopCfgDefn}.
+ */
+ public String getString(AbstractManagedObjectDefinition<?, ?> d, String key) {
+ if (d.isTop()) {
+ throw new UnsupportedOperationException("Profile resources are not available for the "
+ + "Top configuration definition");
+ }
+ Properties p = getProperties(d);
+ String result = p.getProperty(key);
+ if (result == null) {
+ String baseName = prefix + "." + d.getClass().getName();
+ String path = baseName.replace('.', '/') + ".properties";
- // Retrieve the properties table associated with a managed object,
- // lazily loading it if necessary.
- private synchronized Properties getProperties(
- AbstractManagedObjectDefinition<?, ?> d)
- throws MissingResourceException {
- Properties p = properties.get(d);
+ throw new MissingResourceException("Can't find resource " + path + ", key " + key, baseName, key);
+ }
- if (p == null) {
- // Load the resource file.
- String baseName = prefix + "." + d.getClass().getName();
- String path = baseName.replace('.', '/') + ".properties";
- InputStream stream = ClassLoaderProvider.getInstance()
- .getClassLoader().getResourceAsStream(path);
-
- if (stream == null) {
- throw new MissingResourceException("Can't find resource "
- + path, baseName, "");
- }
-
- p = new Properties();
- try {
- p.load(new BufferedInputStream(stream));
- } catch (IOException e) {
- throw new MissingResourceException("Can't load resource "
- + path + " due to IO exception: " + e.getMessage(),
- baseName, "");
- }
-
- // Cache the resource.
- properties.put(d, p);
+ return result;
}
- return p;
- }
+ // Retrieve the properties table associated with a managed object,
+ // lazily loading it if necessary.
+ private synchronized Properties getProperties(AbstractManagedObjectDefinition<?, ?> d) {
+ Properties p = properties.get(d);
+
+ if (p == null) {
+ // Load the resource file.
+ String baseName = prefix + "." + d.getClass().getName();
+ String path = baseName.replace('.', '/') + ".properties";
+ InputStream stream = ClassLoaderProvider.getInstance().getClassLoader().getResourceAsStream(path);
+
+ if (stream == null) {
+ throw new MissingResourceException("Can't find resource " + path, baseName, "");
+ }
+
+ p = new Properties();
+ try {
+ p.load(new BufferedInputStream(stream));
+ } catch (IOException e) {
+ throw new MissingResourceException("Can't load resource " + path + " due to IO exception: "
+ + e.getMessage(), baseName, "");
+ }
+
+ // Cache the resource.
+ properties.put(d, p);
+ }
+
+ return p;
+ }
}
--
Gitblit v1.10.0