public interface AttributeDefinition
An AttributeDefinition
object defines a description of the data
type of a property/attribute.
Modifier and Type | Field and Description |
---|---|
static int |
BIGDECIMAL
Deprecated.
As of 1.1.
|
static int |
BIGINTEGER
Deprecated.
As of 1.1.
|
static int |
BOOLEAN
The
BOOLEAN (11) type. |
static int |
BYTE
The
BYTE (6) type. |
static int |
CHARACTER
The
CHARACTER (5) type. |
static int |
DOUBLE
The
DOUBLE (7) type. |
static int |
FLOAT
The
FLOAT (8) type. |
static int |
INTEGER
The
INTEGER (3) type. |
static int |
LONG
The
LONG (2) type. |
static int |
SHORT
The
SHORT (4) type. |
static int |
STRING
The
STRING (1) type. |
Modifier and Type | Method and Description |
---|---|
int |
getCardinality()
Return the cardinality of this attribute.
|
String[] |
getDefaultValue()
Return a default for this attribute.
|
String |
getDescription()
Return a description of this attribute.
|
String |
getID()
Unique identity for this attribute.
|
String |
getName()
Get the name of the attribute.
|
String[] |
getOptionLabels()
Return a list of labels of option values.
|
String[] |
getOptionValues()
Return a list of option values that this attribute can take.
|
int |
getType()
Return the type for this attribute.
|
String |
validate(String value)
Validate an attribute in
String form. |
static final int STRING
STRING
(1) type.
Attributes of this type should be stored as String
,
Vector
with String
or String[]
objects,
depending on the getCardinality()
value.
static final int LONG
LONG
(2) type.
Attributes of this type should be stored as Long
,
Vector
with Long
or long[]
objects,
depending on the getCardinality()
value.static final int INTEGER
INTEGER
(3) type.
Attributes of this type should be stored as Integer
,
Vector
with Integer
or int[]
objects,
depending on the getCardinality()
value.static final int SHORT
SHORT
(4) type.
Attributes of this type should be stored as Short
,
Vector
with Short
or short[]
objects,
depending on the getCardinality()
value.static final int CHARACTER
CHARACTER
(5) type.
Attributes of this type should be stored as Character
,
Vector
with Character
or char[]
objects,
depending on the getCardinality()
value.static final int BYTE
BYTE
(6) type.
Attributes of this type should be stored as Byte
,
Vector
with Byte
or byte[]
objects,
depending on the getCardinality()
value.static final int DOUBLE
DOUBLE
(7) type.
Attributes of this type should be stored as Double
,
Vector
with Double
or double[]
objects,
depending on the getCardinality()
value.static final int FLOAT
FLOAT
(8) type.
Attributes of this type should be stored as Float
,
Vector
with Float
or float[]
objects,
depending on the getCardinality()
value.static final int BIGINTEGER
BIGINTEGER
(9) type.
Attributes of this type should be stored as BigInteger
,
Vector
with BigInteger
or BigInteger[]
objects, depending on the getCardinality()
value.static final int BIGDECIMAL
BIGDECIMAL
(10) type.
Attributes of this type should be stored as BigDecimal
,
Vector
with BigDecimal
or BigDecimal[]
objects depending on getCardinality()
.static final int BOOLEAN
BOOLEAN
(11) type.
Attributes of this type should be stored as Boolean
,
Vector
with Boolean
or boolean[]
objects
depending on getCardinality()
.String getName()
String getID()
cn
or commonName
must always be a String
and the semantics are always a name of some object. They share this
aspect with LDAP/X.500 attributes. In these standards the OSI Object
Identifier (OID) is used to uniquely identify an attribute. If such an
OID exists, (which can be requested at several standard organisations and
many companies already have a node in the tree) it can be returned here.
Otherwise, a unique id should be returned which can be a Java class name
(reverse domain name) or generated with a GUID algorithm. Note that all
LDAP defined attributes already have an OID. It is strongly advised to
define the attributes from existing LDAP schemes which will give the OID.
Many such schemes exist ranging from postal addresses to DHCP parameters.String getDescription()
int getCardinality()
Vector
objects. The return value is defined as follows:
x = Integer.MIN_VALUE no limit, but use Vector x < 0 -x = max occurrences, store in Vector x > 0 x = max occurrences, store in array [] x = Integer.MAX_VALUE no limit, but use array [] x = 0 1 occurrence required
int getType()
Defined in the following constants which map to the appropriate Java
type. STRING
,LONG
,INTEGER
,
CHAR
,BYTE
,DOUBLE
,FLOAT
,
BOOLEAN
.
String[] getOptionValues()
If the function returns null
, there are no option values
available.
Each value must be acceptable to validate() (return "") and must be a
String
object that can be converted to the data type defined
by getType() for this attribute.
This list must be in the same sequence as getOptionLabels()
.
I.e. for each index i in getOptionValues
, i in
getOptionLabels()
should be the label.
For example, if an attribute can have the value male, female, unknown,
this list can return
new String[] { "male", "female", "unknown" }
.
String[] getOptionLabels()
The purpose of this method is to allow menus with localized labels. It is
associated with getOptionValues
. The labels returned here are
ordered in the same way as the values in that method.
If the function returns null
, there are no option labels
available.
This list must be in the same sequence as the getOptionValues()
method. I.e. for each index i in getOptionLabels
, i in
getOptionValues()
should be the associated value.
For example, if an attribute can have the value male, female, unknown,
this list can return (for dutch)
new String[] { "Man", "Vrouw", "Onbekend" }
.
String validate(String value)
String
form.
An attribute might be further constrained in value. This method will
attempt to validate the attribute according to these constraints. It can
return three different values:
null No validation present "" No problems detected "..." A localized description of why the value is wrong
value
- The value before turning it into the basic data typenull
, "", or another stringString[] getDefaultValue()
getType()
. The return type is a list of String
objects that can be converted to the appropriate type. The cardinality of
the return array must follow the absolute cardinality of this type. E.g.
if the cardinality = 0, the array must contain 1 element. If the
cardinality is 1, it must contain 0 or 1 elements. If it is -5, it must
contain from 0 to max 5 elements. Note that the special case of a 0
cardinality, meaning a single value, does not allow arrays or vectors of
0 elements.null
if no default exists.Copyright © 2018 JBoss by Red Hat. All rights reserved.