java.lang.Comparable<java.lang.reflect.Method>, PackagedPropertyDescriptor<java.lang.reflect.Method>, PropertyDescriptor<java.lang.reflect.Method>, SingleValuePropertyDescriptor<java.lang.reflect.Method>public final class MethodProperty
extends java.lang.Object
Rule developers can limit the rules to those within designated packages per the 'legalPackages' argument in the constructor which can be an array of partial package names, i.e., ["java.lang", "com.mycompany" ].
| Modifier and Type | Class | Description |
|---|---|---|
static class |
MethodProperty.MethodPBuilder |
| Modifier and Type | Field | Description |
|---|---|---|
protected PackagedPropertyModule<T> |
module |
MULTI_VALUE_DELIMITER, PACKAGE_NAME_DELIMITER| Constructor | Description |
|---|---|
MethodProperty(java.lang.String theName,
java.lang.String theDescription,
java.lang.reflect.Method theDefault,
java.lang.String[] legalPackageNames,
float theUIOrder) |
Constructor for MethodProperty.
|
MethodProperty(java.lang.String theName,
java.lang.String theDescription,
java.lang.String defaultMethodStr,
java.lang.String[] legalPackageNames,
float theUIOrder) |
Deprecated.
will be removed in 7.0.0
|
| Modifier and Type | Method | Description |
|---|---|---|
protected void |
addAttributesTo(java.util.Map<PropertyDescriptorField,java.lang.String> attributes) |
Adds this property's attributes to the map.
|
java.lang.String |
asDelimitedString(T value) |
Formats the object onto a string suitable for storage within the property map.
|
protected java.lang.String |
asString(java.lang.reflect.Method value) |
Returns a string representation of the value, even if it's null.
|
java.util.Map<PropertyDescriptorField,java.lang.String> |
attributeValuesById() |
Returns a map representing all the property attributes of the receiver in string form.
|
int |
compareTo(PropertyDescriptor<?> otherProperty) |
|
java.lang.reflect.Method |
createFrom(java.lang.String valueString) |
Parse a string and returns an instance of a value.
|
protected java.lang.String |
defaultAsString() |
Returns a string representation of the default value.
|
T |
defaultValue() |
Default value to use when the user hasn't specified one or when they wish to revert to a known-good state.
|
java.lang.String |
description() |
Describes the property and the role it plays within the rule it is specified for.
|
boolean |
equals(java.lang.Object obj) |
|
java.lang.String |
errorFor(T value) |
Validation function that returns a diagnostic error message for a sample property value.
|
int |
hashCode() |
|
boolean |
isDefinedExternally() |
True if this descriptor was defined in the ruleset xml.
|
boolean |
isMultiValue() |
Returns whether the property is multi-valued, i.e.
|
java.lang.String[] |
legalPackageNames() |
Returns the legal package names.
|
java.lang.String |
name() |
The name of the property without spaces as it serves as the key into the property map.
|
static MethodProperty.MethodPBuilder |
named(java.lang.String name) |
|
protected java.lang.String[] |
packageNamesIn(java.util.Map<PropertyDescriptorField,java.lang.String> params) |
|
int |
preferredRowCount() |
If the datatype is a String then return the preferred number of rows to allocate in the text widget, returns a
value of one for all other types.
|
java.lang.String |
propertyErrorFor(Rule rule) |
A convenience method that returns an error string if the rule holds onto a property value that has a problem.
|
java.lang.String |
toString() |
|
java.lang.Class<java.lang.reflect.Method> |
type() |
Denotes the value datatype.
|
float |
uiOrder() |
Denotes the relative order the property field should occupy if we are using an auto-generated UI to display and
edit property values.
|
protected java.lang.String |
valueErrorFor(T value) |
Checks the value for an error.
|
T |
valueFrom(java.lang.String valueString) |
Returns the value represented by this string.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitasDelimitedString, attributeValuesById, defaultValue, description, errorFor, isDefinedExternally, isMultiValue, name, preferredRowCount, propertyErrorFor, uiOrder, valueFromprotected final PackagedPropertyModule<T> module
public MethodProperty(java.lang.String theName,
java.lang.String theDescription,
java.lang.reflect.Method theDefault,
java.lang.String[] legalPackageNames,
float theUIOrder)
theName - Name of the propertytheDescription - DescriptiontheDefault - Default valuelegalPackageNames - Legal packagestheUIOrder - UI orderpublic MethodProperty(java.lang.String theName,
java.lang.String theDescription,
java.lang.String defaultMethodStr,
java.lang.String[] legalPackageNames,
float theUIOrder)
theName - Name of the propertytheDescription - DescriptiondefaultMethodStr - Default value, that will be parsed into a Method objectlegalPackageNames - Legal packagestheUIOrder - UI orderprotected java.lang.String asString(java.lang.reflect.Method value)
value - The value to describepublic java.lang.Class<java.lang.reflect.Method> type()
PropertyDescriptorpublic java.lang.reflect.Method createFrom(java.lang.String valueString)
throws java.lang.IllegalArgumentException
valueString - String to parsejava.lang.IllegalArgumentExceptionpublic static MethodProperty.MethodPBuilder named(java.lang.String name)
protected void addAttributesTo(java.util.Map<PropertyDescriptorField,java.lang.String> attributes)
PropertyDescriptorField.attributes - The map to fillprotected java.lang.String valueErrorFor(T value)
value - Value to checkpublic java.lang.String[] legalPackageNames()
PackagedPropertyDescriptorlegalPackageNames in interface PackagedPropertyDescriptor<T>protected java.lang.String[] packageNamesIn(java.util.Map<PropertyDescriptorField,java.lang.String> params)
public final T defaultValue()
PropertyDescriptordefaultValue in interface PropertyDescriptor<T>public final boolean isMultiValue()
PropertyDescriptorAs unary property rule properties will return a value of one, you must use the get/setProperty accessors when working with the actual values. When working with multi-value properties then the get/setProperties accessors must be used.
isMultiValue in interface PropertyDescriptor<T>public java.lang.String asDelimitedString(T value)
PropertyDescriptorasDelimitedString in interface PropertyDescriptor<T>value - Objectpublic java.lang.String propertyErrorFor(Rule rule)
PropertyDescriptorpropertyErrorFor in interface PropertyDescriptor<T>rule - Rulepublic java.lang.String errorFor(T value)
PropertyDescriptorerrorFor in interface PropertyDescriptor<T>value - The value to check.protected final java.lang.String defaultAsString()
public final T valueFrom(java.lang.String valueString)
throws java.lang.IllegalArgumentException
PropertyDescriptorvalueFrom in interface PropertyDescriptor<T>valueString - The string to parsejava.lang.IllegalArgumentException - if the given string cannot be parsedpublic java.lang.String description()
PropertyDescriptordescription in interface PropertyDescriptor<T>public float uiOrder()
PropertyDescriptorExample:
name -> 0.0 description 1.0 minValue -> 2.0 maxValue -> 2.1
name: [ ] description: [ ] minimum: [ ] maximum: [ ]uiOrder in interface PropertyDescriptor<T>public final int compareTo(PropertyDescriptor<?> otherProperty)
compareTo in interface java.lang.Comparable<T>public int preferredRowCount()
PropertyDescriptorpreferredRowCount in interface PropertyDescriptor<T>public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.String name()
PropertyDescriptorname in interface PropertyDescriptor<T>public final java.util.Map<PropertyDescriptorField,java.lang.String> attributeValuesById()
PropertyDescriptorattributeValuesById in interface PropertyDescriptor<T>public boolean isDefinedExternally()
PropertyDescriptorRuleSetWriter
to write out the property correctly: if it was defined externally, then its definition must be written out,
otherwise only its value.isDefinedExternally in interface PropertyDescriptor<T>Copyright © 2002–2018 PMD. All rights reserved.