Package org.dasein.attributes

The Dasein Attributes Library contains an API that enables you to associate arbitrary attributes with an object managed by a complex type manager.

See:
          Description

Class Summary
AttributeMap An immutable mapping of attribute names to values.
AttributeMap.AmapEntry  
AttributeMap.AttributeWrapper<T>  
DataType<V> Represents a data type for the Dasein attributes system.
DataTypeFactory<V> Manages attribute data types and access to custom data types.
DataTypeFactory.Constraint A constraint helps narrow down the set of possible values associated with the underlying data type.
DataTypeMap Stores data types associated with an object.
 

Enum Summary
DataType.InputType Represents a type of input field associated with inputting values associated with this attributes system.
 

Exception Summary
InvalidAttributeException Represents some kind of error instantiating an attribute or its associated data type.
 

Package org.dasein.attributes Description

The Dasein Attributes Library contains an API that enables you to associate arbitrary attributes with an object managed by a complex type manager. Valtira originally developed this API to manage attributes for elements in the Simplicis Content Management System. In that system, a page may have an arbitrary set of attributes established by the developed. For example, a press release might have a dateline that includes a location and a date. The person creating the page type for press releases needs to tell the CMS to prompt content owners for that data and have it validated. So, the page type has two data types set up:

  1. a date of type "date"
  2. a location of type "string"

These generic attributes, or data types, are associated with the page type. When a content owner creates a press release, the UI prompts the content owner for values for date and location. The attributes library will then validate that entry and provide programmatic access to those values as instances of the correct Java data type (i.e. java.util.Date and java.lang.String).

This library includes the following built-in data types:

You can implement your own custom data types by subclasses the DataTypeFactory and DataType classes and then creating a configuration file /dasein/types.cfg that simply contains the names of your factory implementation classes, one per line.

The Dasein Persistence libraries additionally include utilities for persisting data types and stored attributes (both built-in and custom) to a database.



Copyright © 2011 enStratus Networks LLC. All Rights Reserved.