|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | |||||||||
@Retention(value=CLASS) @Target(value=METHOD) public @interface AttributeDefinition
AttributeDefinition information for the annotated method.
Each method of a type annotated by ObjectClassDefinition has an
implied AttributeDefinition annotation. This annotation is only used to
specify non-default AttributeDefinition information.
The id of this AttributeDefinition is generated from the name of the
annotated method. The annotated method name is processed from left to right
changing each character as follows:
'$' \u0024) is removed unless it is followed
by another dollar sign in which case the two consecutive dollar signs (
'$$') are changed to a single dollar sign.'_' \u005F) is changed to a full stop (
'.' \u002E) unless is it followed by another low line in which
case the two consecutive low lines ('__') are changed to a single low
line.This annotation is not processed at runtime. It must be processed by tools and used to generate a Meta Type Resource document for the bundle.
| Optional Element Summary | |
|---|---|
int |
cardinality
The cardinality of this AttributeDefinition. |
String[] |
defaultValue
The default value for this AttributeDefinition. |
String |
description
The human readable description of this AttributeDefinition. |
String |
max
The maximum value for this AttributeDefinition. |
String |
min
The minimum value for this AttributeDefinition. |
String |
name
The human readable name of this AttributeDefinition. |
Option[] |
options
The option information for this AttributeDefinition. |
boolean |
required
The required value for this AttributeDefinition. |
AttributeType |
type
The type of this AttributeDefinition. |
public abstract String name
If not specified, the name of this AttributeDefinition is derived from
the name of the annotated method. For example, low line ('_'
\u005F) and dollar sign ('$' \u0024) are replaced with
space ( ' ' \u0020) and space is inserted between camel case
words.
If the name begins with the percent sign ('%' \u0025), the
name can be localized.
public abstract String description
If not specified, the description of this AttributeDefinition is the empty string.
If the description begins with the percent sign ('%' \u0025),
the description can be localized.
public abstract AttributeType type
This must be one of the defined attributes types.
If not specified, the type is derived from the return type of the
annotated method. Return types of Class and Enum are
mapped to STRING. A tool processing the
annotation should declare an error for unsupported return types.
public abstract int cardinality
If not specified, the cardinality is derived from the return type of the annotated method. For non-array and non-Collection return types, that is a scalar type, the cardinality is 0. For array return types, the cardinality is a large positive value. For Collection return types, the cardinality is a large negative value.
public abstract String min
If not specified, there is no minimum value.
public abstract String max
If not specified, there is no maximum value.
public abstract String[] defaultValue
If not specified, if the annotated element is part of an annotation and
has a default value, then the value is the
default value of the annotated element. Otherwise, there is
no default value.
public abstract boolean required
If not specified, the value is true.
public abstract Option[] options
For each specified Option, an Option element is generated
for this AttributeDefinition. If not specified, no Option elements will
be generated.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | |||||||||