xdoclet.modules.ejb.entity

Class ValueObjectTagsHandler

public class ValueObjectTagsHandler extends EjbTagsHandler

Tags used by the Value Object templates.

Version: $Revision: 1.28 $

Author: Vincent Harcq (vincent.harcq@hubmethods.com)

UNKNOWN: 13. juni 2002 namespace = "EjbValueObj"

Method Summary
StringcollectionType()
Returns the collection type for the current field.
StringconcreteCollectionType()
Type of the constructor for aggregates or compositions.
StringcurrentAggregateName(Properties attributes)
Returns the current aggregate's name
StringcurrentAggregateType(Properties attributes)
Returns the class name of the current aggregate attribute's type.
StringcurrentRelationBeanClass()
Return the bean class name for the current relation.
StringcurrentValueObjectAttribute()
Return the current value object's attribute name.
StringcurrentValueObjectClass()
Return the current value object's class name.
StringcurrentValueObjectMatch()
Return the current value object's match parameter.
StringextendsFrom(Properties attributes)
Returns the name of the class the specified value object extends.
voidforAllAggregates(String template, Properties attributes)
Loop over all the aggregate fields in the given value object, and generate the body for each one.
voidforAllComposes(String template, Properties attributes)
Loop over all the composed fields in the given value object, and generate the body for each one.
voidforAllRelations(String template, Properties attributes)
Loop over all the relation fields in the given value object, and generate the body for each one.
protected voidforAllSetters(String template, String methodName)
voidforAllSuperSetValue(String template)
Describe what the method does
voidforAllValueObjects(String pTemplate)
Loops over all the ejb.value-object tags in the class, and generates the body for each one.
static StringgetCurrentValueObjectAttribute(XTag tag)
Gets the CurrentValueObjectAttribute attribute of the ValueObjectTagsHandler class
static StringgetCurrentValueObjectClass(XClass clazz, XTag tag)
Gets the CurrentValueObjectClass attribute of the ValueObjectTagsHandler class
static StringgetCurrentValueObjectExtends(XTag tag)
static StringgetCurrentValueObjectImplements(XTag tag)
static StringgetCurrentValueObjectMatch(XTag tag)
Gets the CurrentValueObjectMatch attribute of the ValueObjectTagsHandler class
static StringgetCurrentValueObjectName(XTag tag)
Gets the CurrentValueObjectName attribute of the ValueObjectTagsHandler class
StringgetValueMostSuperObjectClass(XClass clazz)
voidifGeneratePKConstructor(String template, Properties attributes)
Evaluates the body if the valueobject subtask's generatePKConstructor parameter is true.
voidifIsAbstractValueObject(String template)
Evaluates the body if the abstract parameter is set to true on the ejb.value-object tag for the current VO.
voidifIsCollection(String template)
Executes the body only if the current field is a collection.
voidifIsNotCollection(String template)
Executes the body only if the current field is not a collection.
voidifNotIsAbstractValueObject(String template)
Evaluates the body if the abstract parameter is set to false (or is missing) on the ejb.value-object tag for the current VO.
voidifUsingValueObject(String template)
Evaluate the body block if Value Object subtask being used.
booleanisAbstractValueObject(String valueObjectName, XClass currentClass)
Whether or not the abstract parameter is set to true on the supplied class' ejb.value-object tag for the given VO name.
static booleanisGenerationNeeded(XClass clazz)
Gets the GenerationNeeded attribute of the ValueObjectTagsHandler class
static booleanisValueObjectRelation(XMethod method, String valueObject)
Checks if a method is a value object relation (aggregate or compose) matching a certain valueObject
StringvalueMostSuperObjectClass()
Returns the data-object class name highest in the hierarchy of derived beans.
StringvalueObjectClass()
Return the current value object's class name.
StringvalueObjectImplements()
return interfaces to be implemented
StringvalueObjectMatch()
Return the current value object's match parameter.
StringvalueObjectName()
Return the current value object's name.

Method Detail

collectionType

public String collectionType()
Returns the collection type for the current field.

Returns: the type

Throws: XDocletException if an error occures

UNKNOWN: type = "content"

concreteCollectionType

public String concreteCollectionType()
Type of the constructor for aggregates or compositions.

Returns: Type of the constructor for aggregates or compositions.

Throws: XDocletException

UNKNOWN: type = "content"

currentAggregateName

public String currentAggregateName(Properties attributes)
Returns the current aggregate's name

Parameters: attributes

Returns: aggregate name

Throws: XDocletException if an error occures

UNKNOWN: name = "plural" optional = "true" values = "true, false" default = "false" descriptions = "return * the plural of the aggregate's name if set to true" name = "decapitalize" optional = "true" values = "true, false" default = "false" descriptions = "return the decapitalize aggregate's name if set to true" type = "content"

currentAggregateType

public String currentAggregateType(Properties attributes)
Returns the class name of the current aggregate attribute's type.

Parameters: attributes The attributes of the template tag

Returns: class

UNKNOWN: type = "content" name = "short" description = "Use the short (not fully-qualified) class name."

currentRelationBeanClass

public String currentRelationBeanClass()
Return the bean class name for the current relation.

Returns: class name

UNKNOWN: type = "content"

currentValueObjectAttribute

public String currentValueObjectAttribute()
Return the current value object's attribute name.

Returns: attribute

UNKNOWN: type = "content"

currentValueObjectClass

public String currentValueObjectClass()
Return the current value object's class name.

Returns: class name

UNKNOWN: type = "content"

currentValueObjectMatch

public String currentValueObjectMatch()
Return the current value object's match parameter.

Returns: match value

UNKNOWN: type = "content"

extendsFrom

public String extendsFrom(Properties attributes)
Returns the name of the class the specified value object extends. If no extends parameter exists on the ejb.value-object tag, java.lang.Object is returned.

Parameters: attributes The attributes of the template tag

Returns: The name of generated PK class.

Throws: XDocletException

UNKNOWN: type = "content" name = "valueobject" optional = "false" description = "The name of the value object to * check."

forAllAggregates

public void forAllAggregates(String template, Properties attributes)
Loop over all the aggregate fields in the given value object, and generate the body for each one.

Parameters: template The body of the block tag attributes The attributes of the template tag

Throws: XDocletException

UNKNOWN: type = "block" name = "superclasses" values = "true,false" description = "Whether to include fields in * superclasses." name = "valueobject" optional = "false" description = "The value object name."

forAllComposes

public void forAllComposes(String template, Properties attributes)
Loop over all the composed fields in the given value object, and generate the body for each one.

Parameters: template The body of the block tag attributes The attributes of the template tag

Throws: XDocletException

UNKNOWN: type = "block" name = "superclasses" values = "true,false" description = "Whether to include fields in * superclasses." name = "valueobject" optional = "false" description = "The value object name."

forAllRelations

public void forAllRelations(String template, Properties attributes)
Loop over all the relation fields in the given value object, and generate the body for each one.

Parameters: template The body of the block tag attributes The attributes of the template tag

Throws: XDocletException

UNKNOWN: type = "block" name = "superclasses" values = "true,false" description = "Whether to include fields in * superclasses." name = "valueobject" optional = "false" description = "The value object name."

forAllSetters

protected void forAllSetters(String template, String methodName)

forAllSuperSetValue

public void forAllSuperSetValue(String template)
Describe what the method does

Parameters: template The body of the block tag

Throws: XDocletException

UNKNOWN: type = "block"

forAllValueObjects

public void forAllValueObjects(String pTemplate)
Loops over all the ejb.value-object tags in the class, and generates the body for each one.

Parameters: pTemplate The body of the block tag

Throws: XDocletException

UNKNOWN: type = "block"

getCurrentValueObjectAttribute

public static String getCurrentValueObjectAttribute(XTag tag)
Gets the CurrentValueObjectAttribute attribute of the ValueObjectTagsHandler class

Parameters: tag Describe what the parameter does

Returns: The CurrentValueObjectAttribute value

Throws: XDocletException

getCurrentValueObjectClass

public static String getCurrentValueObjectClass(XClass clazz, XTag tag)
Gets the CurrentValueObjectClass attribute of the ValueObjectTagsHandler class

Parameters: clazz Describe what the parameter does tag Describe what the parameter does

Returns: The CurrentValueObjectClass value

Throws: XDocletException

getCurrentValueObjectExtends

public static String getCurrentValueObjectExtends(XTag tag)

getCurrentValueObjectImplements

public static String getCurrentValueObjectImplements(XTag tag)

getCurrentValueObjectMatch

public static String getCurrentValueObjectMatch(XTag tag)
Gets the CurrentValueObjectMatch attribute of the ValueObjectTagsHandler class

Parameters: tag Describe what the parameter does

Returns: The CurrentValueObjectMatch value

getCurrentValueObjectName

public static String getCurrentValueObjectName(XTag tag)
Gets the CurrentValueObjectName attribute of the ValueObjectTagsHandler class

Parameters: tag Describe what the parameter does

Returns: The CurrentValueObjectName value

Throws: XDocletException

getValueMostSuperObjectClass

public String getValueMostSuperObjectClass(XClass clazz)

Parameters: clazz Description of Parameter

Returns: the full qualified data-object class name

Throws: XDocletException

ifGeneratePKConstructor

public void ifGeneratePKConstructor(String template, Properties attributes)
Evaluates the body if the valueobject subtask's generatePKConstructor parameter is true.

Parameters: template The body of the block tag attributes The attributes of the template tag

Throws: XDocletException

UNKNOWN: type = "block"

ifIsAbstractValueObject

public void ifIsAbstractValueObject(String template)
Evaluates the body if the abstract parameter is set to true on the ejb.value-object tag for the current VO.

Parameters: template The body of the block tag

Throws: XDocletException

UNKNOWN: type = "block"

ifIsCollection

public void ifIsCollection(String template)
Executes the body only if the current field is a collection.

Parameters: template the template

Throws: XDocletException if an error occures

UNKNOWN: type = "block"

ifIsNotCollection

public void ifIsNotCollection(String template)
Executes the body only if the current field is not a collection.

Parameters: template the template

Throws: XDocletException if an error occures

UNKNOWN: type = "block"

ifNotIsAbstractValueObject

public void ifNotIsAbstractValueObject(String template)
Evaluates the body if the abstract parameter is set to false (or is missing) on the ejb.value-object tag for the current VO.

Parameters: template The body of the block tag

Throws: XDocletException

UNKNOWN: type = "block"

ifUsingValueObject

public void ifUsingValueObject(String template)
Evaluate the body block if Value Object subtask being used.

Parameters: template The body of the block tag

Throws: XDocletException

UNKNOWN: type = "block"

isAbstractValueObject

public boolean isAbstractValueObject(String valueObjectName, XClass currentClass)
Whether or not the abstract parameter is set to true on the supplied class' ejb.value-object tag for the given VO name.

Parameters: valueObjectName currentClass

Returns:

Throws: XDocletException

isGenerationNeeded

public static boolean isGenerationNeeded(XClass clazz)
Gets the GenerationNeeded attribute of the ValueObjectTagsHandler class

Parameters: clazz Describe what the parameter does

Returns: The GenerationNeeded value

isValueObjectRelation

public static boolean isValueObjectRelation(XMethod method, String valueObject)
Checks if a method is a value object relation (aggregate or compose) matching a certain valueObject

Parameters: method valueObject

Returns:

valueMostSuperObjectClass

public String valueMostSuperObjectClass()
Returns the data-object class name highest in the hierarchy of derived beans. Because of possible inheritance between entity bean, the type of the generated getData method must be the one of the most super class of the current entity bean. The current Data class must extend the corresponding super Data class.

Returns: The data-object class name highest in the hierarchy of derived beans.

Throws: XDocletException

UNKNOWN: type = "content"

valueObjectClass

public String valueObjectClass()
Return the current value object's class name.

Returns: class name

Throws: XDocletException

UNKNOWN: type = "content"

valueObjectImplements

public String valueObjectImplements()
return interfaces to be implemented

Returns: interfaces

UNKNOWN: type = "content"

valueObjectMatch

public String valueObjectMatch()
Return the current value object's match parameter.

Returns: match value

Throws: XDocletException

UNKNOWN: type = "content"

valueObjectName

public String valueObjectName()
Return the current value object's name.

Returns: VO name

Throws: XDocletException

UNKNOWN: type = "content"