PropertyDefinition Interface

com.bea.p13n.property
PropertyDefinition Interface

public interface PropertyDefinition

Public interface for a property definition. A property definition is meta-data about a property that might be set on a Configurable Entity. It contains information such as the property's datatype, a default value, whether it is restricted to a set of allowable values, and whether it supports multiple values.

The property type constants here are imported from com.beasys.commerce.util.TypesHelper, and are duplicated here for convenience, and in case TypesHelper is not included in future releases.

You can use the no-arg constructor for the internal class com.bea.p13n.property.internal.PropertyDefinitionImpl when creating a PropertyDefinition. PropertyDefinitionImpl extends com.bea.p13n.property.AbstractPropertyDefinition. For example:

PropertyDefinitionImpl myPropSetDefImpl = new PropertyDefinitionImpl();
myPropSetDefImpl.setDescription(pdDesc);
myPropSetDefImpl.setMultiValued(pdMV);
myPropSetDefImpl.setRestricted(pdRest);
myPropSetDefImpl.setType(pdType);
myPropSetDefImpl.setDefaultValue(pdDefVal);
myPropSetDefImpl.setRestrictedValues(pdRestVals);

The setType() will use constants described below under the Field Summary Section.

Related Topics

PropertySet
ConfigurableEntity
AbstractPropertyDefinition


All Known Implementing Classes
AbstractPropertyDefinition

Field Summary

public static final int
BOOLEAN
The constant for a boolean type (0).
public static final int
DATETIME
The constant for a datetime java.sql.Timestamp type (4).
public static final int
FLOAT
The constant for the floating-point numeric type (2).
public static final int
INTEGER
The constant for a numeric type (1).
public static final int
TEXT
The constant for a text type (3).
public static final int
USER_DEFINED
The constant for a user defined type (5).
 

Method Summary

public Object
getDefaultValue()
Get the default value for this property.
public String
getDescription()
Get the description of this property
public Collection
getRestrictedValues()
Get the allowable values, if this property is restricted.
public int
getType()
Get the datatype of the property
public boolean
isMultiValued()
Can this property support multiple values?
public boolean
isRestricted()
Is this property restricted to a certain list of values?
public void
validate(Object value)
Check to see if a value is valid for this property definition.

Field Detail

BOOLEAN

public static final int BOOLEAN
The constant for a boolean type (0).


DATETIME

public static final int DATETIME
The constant for a datetime java.sql.Timestamp type (4).


FLOAT

public static final int FLOAT
The constant for the floating-point numeric type (2).


INTEGER

public static final int INTEGER
The constant for a numeric type (1).


TEXT

public static final int TEXT
The constant for a text type (3).


USER_DEFINED

public static final int USER_DEFINED
The constant for a user defined type (5).

 

Method Detail

getDefaultValue() Method

public Object getDefaultValue()
Get the default value for this property. If it is multivalued, this might be a collection of values. Note: this returns a clone of the default value; if it is a collection, and the property values are mutable objects, care must be taken not to modify them.

Returns

the default value, or null if there is none

getDescription() Method

public String getDescription()
Get the description of this property


getRestrictedValues() Method

public Collection getRestrictedValues()
Get the allowable values, if this property is restricted. Note: this does a shallow clone to prevent the collection from being modified, but if any property values are mutable, care must be taken not to modify them.

Returns

a Collection of allowable values, or null if there are none

getType() Method

public int getType()
Get the datatype of the property


isMultiValued() Method

public boolean isMultiValued()
Can this property support multiple values?


isRestricted() Method

public boolean isRestricted()
Is this property restricted to a certain list of values?


validate(Object) Method

public void validate(Object value)
throws PropertyValidationException
Check to see if a value is valid for this property definition.

Exceptions

PropertyValidationException
if the value is not valid.