What do you mean ?
James.Strachan wrote: > > 2009/1/6 cmoulliard <cmoulli...@gmail.com>: >> >> "In your case, I'd add the hooks to scan packages/classes for >> annotations to your custom DataFormat? Rather like with JAXB or >> XStream you can configure a list of classes/packages, you'd be doing >> something similar right?" >> >> This is exactly what I have done. The name of the package is provided as >> parameter to the DataFormat class. Next, using reflection/introspection >> the >> classes of the model are retrieved. I have implemented something simple >> but >> we can bind one or several classes to a CSV record. >> >> ex : >> >> public class Client { >> >> @DataField(name = "ClientNumber", pos = 1, formatType = >> "java.lang.String") >> public String clientNr; >> >> @DataField(name = "firstName", pos = 2, formatType = >> "java.lang.String") >> public String FirstName; >> >> @DataField(name = "lastName", pos = 3, formatType = >> "java.lang.String") >> public String LastName; >> >> @Record(separator =",", name = "Order") >> public class Order { >> >> @DataField(name = "Number", pos = 0, formatType = >> "java.lang.Integer") >> public int orderNr; >> >> @LinkField( from = "com.xpectis.csv.model.Order", to = >> "com.xpectis.csv.model.Client", linkType = LinkType.OneToOne) >> public Client client; >> >> @DataField(name = "ISIN", pos = 4, formatType = >> "java.lang.String") >> public String ISIN_Code; >> >> @DataField(name = "Name", pos = 5, formatType = >> "java.lang.String") >> public String Instrument_Name; >> >> @DataField(name = "Quantity", pos = 6, formatType = >> "java.lang.String") >> public String Quantity; >> >> @DataField(name = "Cur", pos = 7, formatType = "java.lang.String") >> public String Currency; >> >> Remark : It is also possible to link class together (but only One to One >> relation is supported) using the annotation @LinkField and makes sense >> because I don't want to support nested CSV. > > Great stuff! > > BTW could the pos & formatType be inferred from the > reflection/introspection? > > -- > James > ------- > http://macstrac.blogspot.com/ > > Open Source Integration > http://fusesource.com/ > > ----- Charles Moulliard SOA Architect My Blog : http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/ -- View this message in context: http://www.nabble.com/Advise-on-%40Annotation---Reflection-%21%21-tp21141422s22882p21311190.html Sent from the Camel - Users mailing list archive at Nabble.com.