// --- 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; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; /** * This interface represents a property descriptor. A descriptor * includes information that describe a property. * * @version $Revision$, $Date$ */ @XmlRootElement @XmlAccessorType(XmlAccessType.FIELD) public class Descriptor implements IDescriptor { protected String mSyntax = null; protected String mConstraint = null; protected String mDescription = null; protected String mDef = null; public Descriptor() { // required for JAX-B } /** * 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, *

* - 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() { return mConstraint; } /** * Retrieves the description of the property. * * @param locale user locale * @return description */ public String getDescription(Locale locale) { return mDescription; } @Override public String toString() { return "Descriptor [mSyntax=" + mSyntax + ", mConstraint=" + mConstraint + ", mDescription=" + mDescription + ", mDef=" + mDef + "]"; } }