summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/certsrv/property
diff options
context:
space:
mode:
authorEndi Sukma Dewata <edewata@redhat.com>2012-03-24 02:27:47 -0500
committerEndi Sukma Dewata <edewata@redhat.com>2012-03-26 11:43:54 -0500
commit621d9e5c413e561293d7484b93882d985b3fe15f (patch)
tree638f3d75761c121d9a8fb50b52a12a6686c5ac5c /base/common/src/com/netscape/certsrv/property
parent40d3643b8d91886bf210aa27f711731c81a11e49 (diff)
downloadpki-621d9e5c413e561293d7484b93882d985b3fe15f.tar.gz
pki-621d9e5c413e561293d7484b93882d985b3fe15f.tar.xz
pki-621d9e5c413e561293d7484b93882d985b3fe15f.zip
Removed unnecessary pki folder.
Previously the source code was located inside a pki folder. This folder was created during svn migration and is no longer needed. This folder has now been removed and the contents have been moved up one level. Ticket #131
Diffstat (limited to 'base/common/src/com/netscape/certsrv/property')
-rw-r--r--base/common/src/com/netscape/certsrv/property/Descriptor.java93
-rw-r--r--base/common/src/com/netscape/certsrv/property/EPropertyException.java42
-rw-r--r--base/common/src/com/netscape/certsrv/property/IConfigTemplate.java68
-rw-r--r--base/common/src/com/netscape/certsrv/property/IDescriptor.java90
-rw-r--r--base/common/src/com/netscape/certsrv/property/PropertySet.java52
5 files changed, 345 insertions, 0 deletions
diff --git a/base/common/src/com/netscape/certsrv/property/Descriptor.java b/base/common/src/com/netscape/certsrv/property/Descriptor.java
new file mode 100644
index 000000000..bd2b56340
--- /dev/null
+++ b/base/common/src/com/netscape/certsrv/property/Descriptor.java
@@ -0,0 +1,93 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+package com.netscape.certsrv.property;
+
+import java.util.Locale;
+
+/**
+ * This interface represents a property descriptor. A descriptor
+ * includes information that describe a property.
+ *
+ * @version $Revision$, $Date$
+ */
+public class Descriptor implements IDescriptor {
+
+ protected String mSyntax = null;
+ protected String mConstraint = null;
+ protected String mDescription = null;
+ protected String mDef = null;
+
+ /**
+ * Constructs a descriptor.
+ *
+ * @param syntax syntax
+ * @param constraint constraint
+ * @param defValue default value
+ * @param description description
+ */
+ public Descriptor(String syntax, String constraint, String defValue, String description) {
+ mSyntax = syntax;
+ mConstraint = constraint;
+ mDef = defValue;
+ mDescription = description;
+ }
+
+ /**
+ * Returns the syntax of the property.
+ *
+ * @return syntax
+ */
+ public String getSyntax() {
+ return mSyntax;
+ }
+
+ /**
+ * Returns the default value of the property.
+ *
+ * @return default value
+ */
+ public String getDefaultValue() {
+ return mDef;
+ }
+
+ /**
+ * Constraint for the given syntax. For example,
+ * <p>
+ * - number(1-5): 1-5 is the constraint, and it indicates that the number must be in the range of 1 to 5.
+ * <p>
+ * - choice(cert,crl): cert,crl is the constraint for choice
+ * <p>
+ * If null, no constraint shall be enforced.
+ * <p>
+ *
+ * @return constraint
+ */
+ public String getConstraint() {
+ return mConstraint;
+ }
+
+ /**
+ * Retrieves the description of the property.
+ *
+ * @param locale user locale
+ * @return description
+ */
+ public String getDescription(Locale locale) {
+ return mDescription;
+ }
+}
diff --git a/base/common/src/com/netscape/certsrv/property/EPropertyException.java b/base/common/src/com/netscape/certsrv/property/EPropertyException.java
new file mode 100644
index 000000000..23f59a25f
--- /dev/null
+++ b/base/common/src/com/netscape/certsrv/property/EPropertyException.java
@@ -0,0 +1,42 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+package com.netscape.certsrv.property;
+
+import com.netscape.certsrv.base.EBaseException;
+
+/**
+ * This is the base exception for property handling.
+ *
+ * @version $Revision$, $Date$
+ */
+public class EPropertyException extends EBaseException {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = -6100285768016343010L;
+
+ /**
+ * Constructs property exception
+ *
+ * @param msg exception message
+ */
+ public EPropertyException(String msg) {
+ super(msg);
+ }
+}
diff --git a/base/common/src/com/netscape/certsrv/property/IConfigTemplate.java b/base/common/src/com/netscape/certsrv/property/IConfigTemplate.java
new file mode 100644
index 000000000..431c90de9
--- /dev/null
+++ b/base/common/src/com/netscape/certsrv/property/IConfigTemplate.java
@@ -0,0 +1,68 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+package com.netscape.certsrv.property;
+
+import java.util.Enumeration;
+import java.util.Locale;
+
+/**
+ * This interface provides a standard way to describe
+ * a set of configuration parameters and its associated syntax.
+ * It provides programmatic methods for querying
+ * template description.
+ * <p>
+ * A plugin, for example, can be described as a property template.
+ * <p>
+ *
+ * @version $Revision$, $Date$
+ */
+public interface IConfigTemplate {
+
+ /**
+ * Returns a list of configuration parameter names.
+ *
+ * @return parameter names
+ */
+ public Enumeration<String> getConfigNames();
+
+ /**
+ * Returns the descriptors of configuration parameter.
+ *
+ * @param locale user locale
+ * @param name configuration parameter name
+ * @return descriptor
+ */
+ public IDescriptor getConfigDescriptor(Locale locale, String name);
+
+ /**
+ * Sets configuration parameter.
+ *
+ * @param name parameter name
+ * @param value parameter value
+ * @exception EPropertyException failed to set parameter
+ */
+ public void setConfig(String name, String value)
+ throws EPropertyException;
+
+ /**
+ * Retrieves configuration parameter by name.
+ *
+ * @return parameter
+ */
+ public String getConfig(String name);
+}
diff --git a/base/common/src/com/netscape/certsrv/property/IDescriptor.java b/base/common/src/com/netscape/certsrv/property/IDescriptor.java
new file mode 100644
index 000000000..727c1130d
--- /dev/null
+++ b/base/common/src/com/netscape/certsrv/property/IDescriptor.java
@@ -0,0 +1,90 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+package com.netscape.certsrv.property;
+
+import java.util.Locale;
+
+/**
+ * This interface represents a property descriptor.
+ *
+ * @version $Revision$, $Date$
+ */
+public interface IDescriptor {
+
+ // syntax
+ public static String DATE = "date";
+ public static String PASSWORD = "password";
+ public static String PRETTY_PRINT = "pretty_print";
+ public static String IMAGE_URL = "image_url";
+ public static String INTEGER = "integer";
+ public static String BOOLEAN = "boolean";
+ public static String STRING = "string";
+ public static String STRING_LIST = "string_list";
+ public static String KEYGEN_REQUEST = "keygen_request";
+ public static String KEYGEN_REQUEST_TYPE = "keygen_request_type";
+ public static String ENC_KEYGEN_REQUEST = "enc_keygen_request";
+ public static String ENC_KEYGEN_REQUEST_TYPE = "enc_keygen_request_type";
+ public static String SIGN_KEYGEN_REQUEST = "sign_keygen_request";
+ public static String SIGN_KEYGEN_REQUEST_TYPE = "sign_keygen_request_type";
+ public static String DUAL_KEYGEN_REQUEST = "dual_keygen_request";
+ public static String DUAL_KEYGEN_REQUEST_TYPE = "dual_keygen_request_type";
+ public static String CERT_REQUEST = "cert_request";
+ public static String CERT_REQUEST_TYPE = "cert_request_type";
+ public static String CHOICE = "choice"; // choice of strings
+ public static String DN = "dn";
+ public static String IP = "ip";
+ public static String EMAIL = "email";
+
+ // constraint
+ public static String READONLY = "readonly";
+ public static String HIDDEN = "hidden";
+
+ /**
+ * Returns the syntax of the property.
+ *
+ * @return syntax
+ */
+ public String getSyntax();
+
+ /**
+ * Constraint for the given syntax. For example,
+ * - number(1-5): 1-5 is the constraint, and it indicates
+ * that the number must be in the range of 1 to 5.
+ * - choice(cert,crl): cert,crl is the constraint
+ * for choice
+ * If null, no constraint shall be enforced.
+ *
+ * @return constraint
+ */
+ public String getConstraint();
+
+ /**
+ * Retrieves the description of the property.
+ *
+ * @param locale user locale
+ * @return localized description
+ */
+ public String getDescription(Locale locale);
+
+ /**
+ * Retrieves the default value of the property.
+ *
+ * @return default value
+ */
+ public String getDefaultValue();
+}
diff --git a/base/common/src/com/netscape/certsrv/property/PropertySet.java b/base/common/src/com/netscape/certsrv/property/PropertySet.java
new file mode 100644
index 000000000..dc839deb1
--- /dev/null
+++ b/base/common/src/com/netscape/certsrv/property/PropertySet.java
@@ -0,0 +1,52 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+package com.netscape.certsrv.property;
+
+import java.util.Enumeration;
+import java.util.Hashtable;
+
+/**
+ * A set of properties.
+ */
+public class PropertySet {
+
+ private Hashtable<String, IDescriptor> mProperties = new Hashtable<String, IDescriptor>();
+
+ public PropertySet() {
+ }
+
+ public void add(String name, IDescriptor desc) {
+ mProperties.put(name, desc);
+ }
+
+ public Enumeration<String> getNames() {
+ return mProperties.keys();
+ }
+
+ public IDescriptor getDescriptor(String name) {
+ return (IDescriptor) mProperties.get(name);
+ }
+
+ public void remove(String name) {
+ mProperties.remove(name);
+ }
+
+ public int size() {
+ return mProperties.size();
+ }
+}