I have some questions : is the node management tools is based on the existing one ? Is it possible to customize this tools to support other JCR servers. I expect that is supporting Jackrabbit but it should be nice to suport other jcr impl.
On 10/17/06, Christophe Lombart <[EMAIL PROTECTED]> wrote:
No comment :-) Thanks for this contribution. I'm waiting for your new jira issue. -- Best regards, Christophe On 10/17/06, Felix Meschberger <[EMAIL PROTECTED]> wrote: > Hi all, > > 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. > > What do you think of these extensions ? They certainly make my life easier, > as I implemented a very simple node type management tool. > > Thanks for any comments. > > Regards > Felix >
-- Best regards, Christophe