[ http://issues.apache.org/jira/browse/GRFT-111?page=all ]

Christophe Lombart resolved GRFT-111.
-------------------------------------

    Resolution: Fixed

Now it is resolved - unit tests are there

> Extend Bean/Collection/FieldDescriptor with support for node type management 
> tools
> ----------------------------------------------------------------------------------
>
>                 Key: GRFT-111
>                 URL: http://issues.apache.org/jira/browse/GRFT-111
>             Project: Graffito
>          Issue Type: Improvement
>            Reporter: Felix Meschberger
>         Assigned To: Christophe Lombart
>         Attachments: GRFT-111.zip, GRFT-111_NodeTypeManagement.diff, 
> NodeTypeManagerImpl.java
>
>
> 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 descriptors.
> 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 properties.
> 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: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to