From 70b0e3d553e5a2a896337730b6c0540488b78f08 Mon Sep 17 00:00:00 2001
From: Nicolas Capponi <nicolas.capponi@forgerock.com>
Date: Tue, 10 Dec 2013 12:43:16 +0000
Subject: [PATCH] OpenDJ 3 : config framework
---
opendj-admin/src/main/java/org/opends/server/admin/condition/Conditions.java | 295 +++++++++++++++++++++++++----------------------------------
1 files changed, 125 insertions(+), 170 deletions(-)
diff --git a/opendj-admin/src/main/java/org/opends/server/admin/condition/Conditions.java b/opendj-admin/src/main/java/org/opends/server/admin/condition/Conditions.java
index 4f057ab..d39de3e 100644
--- a/opendj-admin/src/main/java/org/opends/server/admin/condition/Conditions.java
+++ b/opendj-admin/src/main/java/org/opends/server/admin/condition/Conditions.java
@@ -26,212 +26,167 @@
*/
package org.opends.server.admin.condition;
-
-
+import org.forgerock.opendj.ldap.ErrorResultException;
import org.opends.server.admin.AbstractManagedObjectDefinition;
-import org.opends.server.admin.client.AuthorizationException;
-import org.opends.server.admin.client.CommunicationException;
import org.opends.server.admin.client.ManagedObject;
import org.opends.server.admin.client.ManagementContext;
import org.opends.server.admin.server.ServerManagedObject;
import org.opends.server.config.ConfigException;
-
-
/**
- * This class consists exclusively of static methods that operate on
- * or return conditions.
+ * This class consists exclusively of static methods that operate on or return
+ * conditions.
*/
public final class Conditions {
- /**
- * A condition which always evaluates to <code>false</code>.
- */
- public static final Condition FALSE = new Condition() {
+ /**
+ * A condition which always evaluates to <code>false</code>.
+ */
+ public static final Condition FALSE = new Condition() {
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean evaluate(ManagementContext context, ManagedObject<?> managedObject) throws ErrorResultException {
+ return false;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean evaluate(ServerManagedObject<?> managedObject) throws ConfigException {
+ return false;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void initialize(AbstractManagedObjectDefinition<?, ?> d) throws Exception {
+ // No implementation required.
+ }
+
+ };
/**
- * {@inheritDoc}
+ * A condition which always evaluates to <code>true</code>.
*/
- public boolean evaluate(ManagementContext context,
- ManagedObject<?> managedObject) throws AuthorizationException,
- CommunicationException {
- return false;
- }
+ public static final Condition TRUE = new Condition() {
+ /**
+ * {@inheritDoc}
+ */
+ public boolean evaluate(ManagementContext context, ManagedObject<?> managedObject) throws ErrorResultException {
+ return true;
+ }
+ /**
+ * {@inheritDoc}
+ */
+ public boolean evaluate(ServerManagedObject<?> managedObject) throws ConfigException {
+ return true;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void initialize(AbstractManagedObjectDefinition<?, ?> d) throws Exception {
+ // No implementation required.
+ }
+
+ };
/**
- * {@inheritDoc}
+ * Creates a condition which evaluates to <code>true</code> if and only if
+ * all of its sub-conditions are <code>true</code>.
+ *
+ * @param conditions
+ * The sub-conditions which be combined using a logical AND.
+ * @return Returns a condition which evaluates to <code>true</code> if and
+ * only if all of its sub-conditions are <code>true</code>.
*/
- public boolean evaluate(ServerManagedObject<?> managedObject)
- throws ConfigException {
- return false;
+ public static Condition and(Condition... conditions) {
+ return new ANDCondition(conditions);
}
-
-
/**
- * {@inheritDoc}
+ * Creates a condition which evaluates to <code>true</code> if and only if a
+ * property contains a particular value.
+ *
+ * @param propertyName
+ * The property name.
+ * @param propertyStringValue
+ * The string representation of the required property value.
+ * @return Returns a condition which evaluates to <code>true</code> if and
+ * only if a property contains a particular value.
*/
- public void initialize(AbstractManagedObjectDefinition<?, ?> d)
- throws Exception {
- // No implementation required.
+ public static Condition contains(String propertyName, String propertyStringValue) {
+ return new ContainsCondition(propertyName, propertyStringValue);
}
- };
-
- /**
- * A condition which always evaluates to <code>true</code>.
- */
- public static final Condition TRUE = new Condition() {
-
/**
- * {@inheritDoc}
+ * Creates a condition which evaluates to <code>false</code> if and only if
+ * the first sub-condition evaluates to <code>true</code> and the second
+ * sub-condition evaluates to <code>false</code>. This can be used to
+ * represent if-then relationships.
+ *
+ * @param premise
+ * The sub-condition which, when <code>true</code> implies that
+ * the implication sub-condition must also be <code>true</code>.
+ * @param implication
+ * The sub-condition which, must be <code>true</code> when the
+ * premise is <code>true</code>.
+ * @return Returns a condition which evaluates to <code>false</code> if and
+ * only if the first sub-condition evaluates to <code>true</code>
+ * and the second sub-condition evaluates to <code>false</code>.
*/
- public boolean evaluate(ManagementContext context,
- ManagedObject<?> managedObject) throws AuthorizationException,
- CommunicationException {
- return true;
+ public static Condition implies(Condition premise, Condition implication) {
+ return or(not(premise), implication);
}
-
-
/**
- * {@inheritDoc}
+ * Creates a condition which evaluates to <code>true</code> if and only if a
+ * particular property has any values specified.
+ *
+ * @param propertyName
+ * The property name.
+ * @return Returns a condition which evaluates to <code>true</code> if and
+ * only if a particular property has any values specified.
*/
- public boolean evaluate(ServerManagedObject<?> managedObject)
- throws ConfigException {
- return true;
+ public static Condition isPresent(String propertyName) {
+ return new IsPresentCondition(propertyName);
}
-
-
/**
- * {@inheritDoc}
+ * Creates a condition which evaluates to <code>true</code> if the
+ * sub-condition is <code>false</code>, or <code>false</code> if the
+ * sub-condition is <code>true</code>.
+ *
+ * @param condition
+ * The sub-condition which will be inverted.
+ * @return Returns a condition which evaluates to <code>true</code> if the
+ * sub-condition is <code>false</code>, or <code>false</code> if the
+ * sub-condition is <code>true</code>.
*/
- public void initialize(AbstractManagedObjectDefinition<?, ?> d)
- throws Exception {
- // No implementation required.
+ public static Condition not(Condition condition) {
+ return new NOTCondition(condition);
}
- };
+ /**
+ * Creates a condition which evaluates to <code>false</code> if and only if
+ * all of its sub-conditions are <code>false</code>.
+ *
+ * @param conditions
+ * The sub-conditions which be combined using a logical OR.
+ * @return Returns a condition which evaluates to <code>false</code> if and
+ * only if all of its sub-conditions are <code>false</code>.
+ */
+ public static Condition or(Condition... conditions) {
+ return new ORCondition(conditions);
+ }
-
-
- /**
- * Creates a condition which evaluates to <code>true</code> if and
- * only if all of its sub-conditions are <code>true</code>.
- *
- * @param conditions
- * The sub-conditions which be combined using a logical
- * AND.
- * @return Returns a condition which evaluates to <code>true</code>
- * if and only if all of its sub-conditions are
- * <code>true</code>.
- */
- public static Condition and(Condition... conditions) {
- return new ANDCondition(conditions);
- }
-
-
-
- /**
- * Creates a condition which evaluates to <code>true</code> if and
- * only if a property contains a particular value.
- *
- * @param propertyName
- * The property name.
- * @param propertyStringValue
- * The string representation of the required property
- * value.
- * @return Returns a condition which evaluates to <code>true</code>
- * if and only if a property contains a particular value.
- */
- public static Condition contains(String propertyName,
- String propertyStringValue) {
- return new ContainsCondition(propertyName, propertyStringValue);
- }
-
-
-
- /**
- * Creates a condition which evaluates to <code>false</code> if
- * and only if the first sub-condition evaluates to
- * <code>true</code> and the second sub-condition evaluates to
- * <code>false</code>. This can be used to represent if-then
- * relationships.
- *
- * @param premise
- * The sub-condition which, when <code>true</code>
- * implies that the implication sub-condition must also be
- * <code>true</code>.
- * @param implication
- * The sub-condition which, must be <code>true</code>
- * when the premise is <code>true</code>.
- * @return Returns a condition which evaluates to <code>false</code>
- * if and only if the first sub-condition evaluates to
- * <code>true</code> and the second sub-condition
- * evaluates to <code>false</code>.
- */
- public static Condition implies(Condition premise, Condition implication) {
- return or(not(premise), implication);
- }
-
-
-
- /**
- * Creates a condition which evaluates to <code>true</code> if and
- * only if a particular property has any values specified.
- *
- * @param propertyName
- * The property name.
- * @return Returns a condition which evaluates to <code>true</code>
- * if and only if a particular property has any values
- * specified.
- */
- public static Condition isPresent(String propertyName) {
- return new IsPresentCondition(propertyName);
- }
-
-
-
- /**
- * Creates a condition which evaluates to <code>true</code> if the
- * sub-condition is <code>false</code>, or <code>false</code>
- * if the sub-condition is <code>true</code>.
- *
- * @param condition
- * The sub-condition which will be inverted.
- * @return Returns a condition which evaluates to <code>true</code>
- * if the sub-condition is <code>false</code>, or
- * <code>false</code> if the sub-condition is
- * <code>true</code>.
- */
- public static Condition not(Condition condition) {
- return new NOTCondition(condition);
- }
-
-
-
- /**
- * Creates a condition which evaluates to <code>false</code> if
- * and only if all of its sub-conditions are <code>false</code>.
- *
- * @param conditions
- * The sub-conditions which be combined using a logical OR.
- * @return Returns a condition which evaluates to <code>false</code>
- * if and only if all of its sub-conditions are
- * <code>false</code>.
- */
- public static Condition or(Condition... conditions) {
- return new ORCondition(conditions);
- }
-
-
-
- // Prevent instantiation.
- private Conditions() {
- // No implementation required.
- }
+ // Prevent instantiation.
+ private Conditions() {
+ // No implementation required.
+ }
}
--
Gitblit v1.10.0