## EjbRel

Implemented in class xdoclet.modules.ejb.dd.RelationTagsHandler.

- Block Tags
- Content Tags

### Block Tags:

#### forAllRelationships (block template)

Evaluates the body block for each relationship. Relations are denoted by ejb:relation for the getter method of the cmr-field.

#### ifIsNotACollection (block template)

Evaluates the body block if current method's return type is not a java.util.Collection or java.util.Set. Used by forAllRelationships.

#### ifIsOne2One (block template)

Evaluates the body block if the current relationship is a one to one type, meaning, neither side of the relation returns java.util.Collection or java.util.Set. Used by forAllRelationships.

#### ifNotIsOne2One (block template)

Evaluates the body block if the current relationship IS NOT a one to one type, meaning, at least one side of the relation returns java.util.Collection or java.util.Set. Used by forAllRelationships.

#### ifIsOne2Many (block template)

Evaluates the body block if the current relationship is a one to many type, meaning, ONLY ONE side of the relation returns java.util.Collection or java.util.Set. Used by forAllRelationships.

#### ifNotIsOne2Many (block template)

Evaluates the body block if the current relationship IS NOT a one to many type, meaning, either both sides, or neither side of the relation returns java.util.Collection or java.util.Set. Used by forAllRelationships.

#### ifIsMany2Many (block template)

Evaluates the body block if the current relationship is a many to many type, meaning, both sides of the relation returns java.util.Collection or java.util.Set. Used by forAllRelationships.

#### ifNotIsMany2Many (block template)

Evaluates the body block if the current relationship IS NOT a many to many type, meaning, at least one side of the relation does not return java.util.Collection or java.util.Set. Used by forAllRelationships.

#### forAllBeans (block template)

Evaluates the body block for each EJBean derived from one of the three EJB types: EntityBean, SessionBean or MessageDrivenBean.

#### ifIsAConcreteEJBean (block template)

Evaluates the body block if current bean is a concrete bean meaning the generate parameter of ejb:bean is either not specified or equals to "true", otherwise the bean is just an abstract base class bean not meant to be used as a EJBean but serve as the base for other EJBeans.

#### ifLocalEjb (block template)

#### ifRemoteEjb (block template)

#### ifServiceEndpointEjb (block template)

#### ifNotLocalEjb (block template)

#### ifNotRemoteEjb (block template)

#### ifNotServiceEndpointEjb (block template)

### Content templates:

#### ejbRefName (content template)

Returns the name of EJB ref.

#### ejbRefName (content template)

Returns the name of EJB ref.

#### ejbName (content template)

Returns the name of current EJB bean.

[prefixWithEjbSlash] | Specifies whether to prefix it with ejb/ or not. False by default. Valid Values = {true,false}

#### ejbExternalRefName (content template)

Returns the name of EJB ref.

#### symbolicClassName (content template)

Returns the symbolic name of the current class. For an EJBean it's the value of ejb:bean's name parameter.

#### shortEjbName (content template)

Returns short version of ejbName(). Example: "foo.bar.MyBean" ->"MyBean", "foo/bar/MyBean" ->"MyBean"

#### beanType (content template)

Returns Bean type : "Entity", "Session" or "Message Driven".

#### concreteFullClassName (content template)

Returns the full-qualified name of the current class's concrete class. This is the class that is generated and is derived from current class.

#### id (content template)

Returns unique id for current ejb.