public final class Property extends java.lang.Object implements java.lang.Comparable<Property>
value type
and category (internal or external)
of the property are included in the property definition. The available
choice values are also stored for open and closed choice value types.Modifier and Type | Class and Description |
---|---|
static class |
Property.PropertyType |
static class |
Property.ValueType |
Modifier and Type | Field and Description |
---|---|
private java.util.Set<java.lang.String> |
choices
The available choices for the open and closed choice value types.
|
private boolean |
internal |
private java.lang.String |
name |
private Property |
primaryProperty |
private static java.util.Map<java.lang.String,Property> |
properties |
private Property.PropertyType |
propertyType |
private Property[] |
secondaryExtractProperties |
private Property.ValueType |
valueType |
Modifier | Constructor and Description |
---|---|
private |
Property(java.lang.String name,
boolean internal,
Property.PropertyType propertyType,
Property.ValueType valueType) |
private |
Property(java.lang.String name,
boolean internal,
Property.PropertyType propertyType,
Property.ValueType valueType,
java.lang.String[] choices) |
private |
Property(java.lang.String name,
boolean internal,
Property.PropertyType propertyType,
Property.ValueType valueType,
java.lang.String[] choices,
Property primaryProperty,
Property[] secondaryExtractProperties) |
private |
Property(java.lang.String name,
boolean internal,
Property.ValueType valueType) |
private |
Property(java.lang.String name,
boolean internal,
Property.ValueType valueType,
java.lang.String[] choices) |
Modifier and Type | Method and Description |
---|---|
int |
compareTo(Property o) |
static Property |
composite(Property primaryProperty,
Property[] secondaryExtractProperties)
Constructs a new composite property from the given primary and array of secondary properties.
|
boolean |
equals(java.lang.Object o) |
static Property |
externalBoolean(java.lang.String name) |
static Property |
externalClosedChoise(java.lang.String name,
java.lang.String... choices) |
static Property |
externalDate(java.lang.String name) |
static Property |
externalInteger(java.lang.String name) |
static Property |
externalOpenChoise(java.lang.String name,
java.lang.String... choices) |
static Property |
externalReal(java.lang.String name) |
static Property |
externalText(java.lang.String name) |
static Property |
externalTextBag(java.lang.String name) |
static Property |
get(java.lang.String key)
Retrieve the property object that corresponds to the given key
|
java.util.Set<java.lang.String> |
getChoices()
Returns the (immutable) set of choices for the values of this property.
|
java.lang.String |
getName() |
Property |
getPrimaryProperty()
Gets the primary property for a composite property
|
static java.util.SortedSet<Property> |
getProperties(java.lang.String prefix) |
Property.PropertyType |
getPropertyType() |
static Property.PropertyType |
getPropertyType(java.lang.String key)
Get the type of a property
|
Property[] |
getSecondaryExtractProperties()
Gets the secondary properties for a composite property
|
Property.ValueType |
getValueType() |
int |
hashCode() |
static Property |
internalBoolean(java.lang.String name) |
static Property |
internalClosedChoise(java.lang.String name,
java.lang.String... choices) |
static Property |
internalDate(java.lang.String name) |
static Property |
internalInteger(java.lang.String name) |
static Property |
internalIntegerSequence(java.lang.String name) |
static Property |
internalOpenChoise(java.lang.String name,
java.lang.String... choices) |
static Property |
internalRational(java.lang.String name) |
static Property |
internalReal(java.lang.String name) |
static Property |
internalText(java.lang.String name) |
static Property |
internalTextBag(java.lang.String name) |
static Property |
internalURI(java.lang.String name) |
boolean |
isExternal() |
boolean |
isInternal() |
boolean |
isMultiValuePermitted()
Is the PropertyType one which accepts multiple values?
|
private static final java.util.Map<java.lang.String,Property> properties
private final java.lang.String name
private final boolean internal
private final Property.PropertyType propertyType
private final Property.ValueType valueType
private final Property primaryProperty
private final Property[] secondaryExtractProperties
private final java.util.Set<java.lang.String> choices
private Property(java.lang.String name, boolean internal, Property.PropertyType propertyType, Property.ValueType valueType, java.lang.String[] choices, Property primaryProperty, Property[] secondaryExtractProperties)
private Property(java.lang.String name, boolean internal, Property.PropertyType propertyType, Property.ValueType valueType, java.lang.String[] choices)
private Property(java.lang.String name, boolean internal, Property.ValueType valueType, java.lang.String[] choices)
private Property(java.lang.String name, boolean internal, Property.ValueType valueType)
private Property(java.lang.String name, boolean internal, Property.PropertyType propertyType, Property.ValueType valueType)
public java.lang.String getName()
public boolean isInternal()
public boolean isExternal()
public boolean isMultiValuePermitted()
public static Property.PropertyType getPropertyType(java.lang.String key)
key
- name of the propertypublic static Property get(java.lang.String key)
key
- the property key or namepublic Property.PropertyType getPropertyType()
public Property.ValueType getValueType()
public java.util.Set<java.lang.String> getChoices()
open
and
closed choice
value types.null
public Property getPrimaryProperty()
public Property[] getSecondaryExtractProperties()
public static java.util.SortedSet<Property> getProperties(java.lang.String prefix)
public static Property internalBoolean(java.lang.String name)
public static Property internalClosedChoise(java.lang.String name, java.lang.String... choices)
public static Property internalDate(java.lang.String name)
public static Property internalInteger(java.lang.String name)
public static Property internalIntegerSequence(java.lang.String name)
public static Property internalRational(java.lang.String name)
public static Property internalOpenChoise(java.lang.String name, java.lang.String... choices)
public static Property internalReal(java.lang.String name)
public static Property internalText(java.lang.String name)
public static Property internalTextBag(java.lang.String name)
public static Property internalURI(java.lang.String name)
public static Property externalClosedChoise(java.lang.String name, java.lang.String... choices)
public static Property externalOpenChoise(java.lang.String name, java.lang.String... choices)
public static Property externalDate(java.lang.String name)
public static Property externalReal(java.lang.String name)
public static Property externalInteger(java.lang.String name)
public static Property externalBoolean(java.lang.String name)
public static Property externalText(java.lang.String name)
public static Property externalTextBag(java.lang.String name)
public static Property composite(Property primaryProperty, Property[] secondaryExtractProperties)
Note that name of the composite property is taken from its primary property, and primary and secondary properties must not be composite properties themselves.
primaryProperty
- secondaryExtractProperties
- public int compareTo(Property o)
compareTo
in interface java.lang.Comparable<Property>
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object