incubator-graffito-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Felix Meschberger (JIRA)" <>
Subject [jira] Updated: (GRFT-111) Extend Bean/Collection/FieldDescriptor with support for node type management tools
Date Tue, 17 Oct 2006 11:58:36 GMT
     [ ]

Felix Meschberger updated GRFT-111:


Patch and contributed Interfaces

> Extend Bean/Collection/FieldDescriptor with support for node type management tools
> ----------------------------------------------------------------------------------
>                 Key: GRFT-111
>                 URL:
>             Project: Graffito
>          Issue Type: Improvement
>            Reporter: Felix Meschberger
>         Attachments:
> I started working with Graffito JCR-Mapping some weeks ago noticing that it actually
implements what I planned to implement in my own tool - and more :-) So I started to like
that thing. While working on it I thought, that it would be nice to define node types based
on the mapping definitions and also noticed, that this is actually also supported by the mapping
> Still, the support by the descriptors has some drawbacks: Field descriptors are thought
to only map to properties, while collection and bean descriptors are thought to only map to
child nodes. Consequently the field descriptors support attributes for property definition
while bean and collection definitions support attributes for child node definition. While
this assumption is mostly true, it fails in the case of multi-valued properties, which is
implemented using a collection descriptor. I myself implemented another CollectionConverter,
which supports residual jcrName values. Also in this case, the collection descriptor maps
> Hence I proopse to extend the bean and collection descriptors with attributes for property
definition. Namely I propose the addition of "jcrType" and "jcrMultiple" attributes which
should contain the property type and multi-value flag respectively. The respective BeanDescriptor
and CollectionDescriptor classes are to be extended for these attributes.
> To further simplify node type management tools, I further propose, to define two interfaces
- PropertyDefDescriptor and ChildNodeDefDescriptor - which may be used by node type management
tools to extract the relevant information to define properties and child nodes. The FieldDescriptor
will only implement the PropertyDefDescriptor while the BeanDescriptor and CollectionDescriptor
classes will implement both interfaces. The node type management tool will then have to apply
heuristics to decide, whether a property or a child node should be defined.
> Attached you will find the patchs to the FieldDescriptor, BeanDescriptor and CollectionDescriptor
classes as well as the proposed interfaces.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message