[ 
https://issues.apache.org/jira/browse/BEANUTILS-406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13602219#comment-13602219
 ] 

Benedikt Ritter commented on BEANUTILS-406:
-------------------------------------------

Michael, I still didn't have the time to take a close look at your proposal. 
From a very brief look, there are a few things I'd like to discuss:

 * When talking about a DSL for describing DynaClasses, we should also think 
about how we want to define the DSL itself. In your proposal the language 
definition is only implicit in the code of the reader. XML provides a good 
infrastructure for defining new document formats. Maybe it would be better to 
create a DynaClass.xsd. This has the advantage of already available tool 
support (for parsing, aswell as for designing new DynaClass XML files)
 * Unit tests could just use equals on DynaClasses, DynaBeans and 
DynaProperties (instead of comparing properties). I'll try to have a look at 
the equals implementations of the affected classes and how equals is 
implemented.

For future contributions the following should be taken into account:
 * Please don't use tabs. Use spaces to indent code.
 * Please put a new line at the end of each file
 * Please don't use the @author tag. Your name will be listed in the 
contributors section of pom.xml
 * Please make sure every file includes the Apache Licence header

Thanks a lot for your interest in BeanUtils :)
                
> DynaClassReader to read DynaClass definitions from a "DSL"
> ----------------------------------------------------------
>
>                 Key: BEANUTILS-406
>                 URL: https://issues.apache.org/jira/browse/BEANUTILS-406
>             Project: Commons BeanUtils
>          Issue Type: New Feature
>          Components: DynaBean
>    Affects Versions: 1.8.3
>            Reporter: Michael Vorburger
>            Assignee: Benedikt Ritter
>             Fix For: LATER THAN 1.8.4
>
>         Attachments: 
> 0002-BEANUTILS-406-DynaClassReader-to-read-DynaClass-defi.patch
>
>
> It could sometimes be very useful to create DynaClass definitions not only 
> programmatically (as is possible today), but to define data structures in 
> some textual format (a "DSL"), and load that into DynaClass/DynaProperty and 
> create DynaBeans from that.
> This isn't very hard to add to BeanUtils (I've done it and will attach a 
> patch) and would allow the following usage, given:
> {noformat}Address  { 
>       zip:  java.lang.Long 
> }
> Employee {
>         firstName : java.lang.String
>       lastName :java.lang.String   
>       
>       mainAddress  : Address
>       boss         : Employee
>       subordinates : Employee *
>       address      : Address <>
> }{noformat}
> one could then use the new proposed DynaClassReader like so:
> {noformat}DynaClassReader r = new DynaClassReader();
> r.readClasspathResource("/DynaClassReaderTest.domain.txt");
> DynaClass klass = r.getDynaClass("Employee");
> {noformat}
> This requires BEANUTILS-405.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to