diff options
author | mharmsen <mharmsen@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2011-10-29 04:43:21 +0000 |
---|---|---|
committer | mharmsen <mharmsen@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2011-10-29 04:43:21 +0000 |
commit | db615a895b644af038308ae71b680f1d93f78f70 (patch) | |
tree | 6d1a4510d625fd4d6afe2848b8de686af74a118a /pki/base/common/src/com/netscape/certsrv/property | |
parent | a8a64c7f1dcaf3012fa8d3cd164c890ceb146d0d (diff) | |
download | pki-db615a895b644af038308ae71b680f1d93f78f70.tar.gz pki-db615a895b644af038308ae71b680f1d93f78f70.tar.xz pki-db615a895b644af038308ae71b680f1d93f78f70.zip |
Bugzilla Bug #737761 - Update Dogtag Packages for Fedora 16DOGTAG_9_0_FEDORA_15_16_17_20111028
git-svn-id: svn+ssh://svn.fedorahosted.org/svn/pki/tags/DOGTAG_9_0_FEDORA_15_16_17_20111028@2279 c9f7a03b-bd48-0410-a16d-cbbf54688b0b
Diffstat (limited to 'pki/base/common/src/com/netscape/certsrv/property')
5 files changed, 348 insertions, 0 deletions
diff --git a/pki/base/common/src/com/netscape/certsrv/property/Descriptor.java b/pki/base/common/src/com/netscape/certsrv/property/Descriptor.java new file mode 100644 index 000000000..a4b0ecb2d --- /dev/null +++ b/pki/base/common/src/com/netscape/certsrv/property/Descriptor.java @@ -0,0 +1,94 @@ +// --- 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.*; + + +/** + * 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/pki/base/common/src/com/netscape/certsrv/property/EPropertyException.java b/pki/base/common/src/com/netscape/certsrv/property/EPropertyException.java new file mode 100644 index 000000000..3be0aa1ea --- /dev/null +++ b/pki/base/common/src/com/netscape/certsrv/property/EPropertyException.java @@ -0,0 +1,38 @@ +// --- 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.*; + +/** + * This is the base exception for property handling. + * + * @version $Revision$, $Date$ + */ +public class EPropertyException extends EBaseException { + + /** + * Constructs property exception + * + * @param msg exception message + */ + public EPropertyException(String msg) { + super(msg); + } +} diff --git a/pki/base/common/src/com/netscape/certsrv/property/IConfigTemplate.java b/pki/base/common/src/com/netscape/certsrv/property/IConfigTemplate.java new file mode 100644 index 000000000..c37d484b8 --- /dev/null +++ b/pki/base/common/src/com/netscape/certsrv/property/IConfigTemplate.java @@ -0,0 +1,70 @@ +// --- 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.*; + + +/** + * 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 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/pki/base/common/src/com/netscape/certsrv/property/IDescriptor.java b/pki/base/common/src/com/netscape/certsrv/property/IDescriptor.java new file mode 100644 index 000000000..d3db4b494 --- /dev/null +++ b/pki/base/common/src/com/netscape/certsrv/property/IDescriptor.java @@ -0,0 +1,88 @@ +// --- 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.*; + + +/** + * 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 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/pki/base/common/src/com/netscape/certsrv/property/PropertySet.java b/pki/base/common/src/com/netscape/certsrv/property/PropertySet.java new file mode 100644 index 000000000..c6d66b43b --- /dev/null +++ b/pki/base/common/src/com/netscape/certsrv/property/PropertySet.java @@ -0,0 +1,58 @@ +// --- 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.*; + + +/** + * A set of properties. + */ +public class PropertySet { + + private Hashtable mProperties = new Hashtable(); + + public PropertySet() + { + } + + public void add(String name, IDescriptor desc) + { + mProperties.put(name, desc); + } + + public Enumeration 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(); + } +} |