On Tue, Oct 5, 2010 at 12:54 PM, Millies, Sebastian <[email protected]> wrote: > Hello there, > > I have three questions about this topic, one regarding the up-to-dateness of > the SDO FAQ, one regarding the XSD2JavaGenerator, and one regarding the use > of factories for extensions to generated classes. > > The SDO FAQ still states: > > "2) I cannot (yet) simply subclass a generated SDO class, this may be > addressed in TUSCANY-513" > > while TUSCANY-513 has been resolved in 2007 for Java-SDO-1.0, and Tuscany 1.6 > presumably includes > Java-SDO-1.1. > > In the generated code, extensibility behaviour is the default, as the base > class for generated > SDOs, DataObjectBase, extends ExtensibleDataObjectImpl. However, the > generator option > "-noExtensibility" which is mentioned in TUSCANY-513 is not accepted by the > generator. > > So here are the first two questions: > a) How can I (or someone else) update the FAQ > b) has the generator ever been updated with that option? > > Among the generated classes, there is a factory class with a create method, > e. g.: > public DataObject create(int typeNumber) > { > switch (typeNumber) > { > case TYPE1: return (DataObject)createType1(); > case TYPE2: return (DataObject)createType2(); // (*) > default: > return super.create(typeNumber); > } > } > > Here is the third question: > Now, when I extend the generated implementation class of type 2, and want to > use that > subclass everywhere instead of the generated class, can I simply edit the > factory? e. g. > replace line (*) with > case TYPE2: return createSubclassOfType2(); > where createSubclassOfType2() is not a generated method but defined by me? > > -- Sebastian > > > > >
Hi Sebastien Physical FAQ updates/corrections are easy. Just raise a JIRA with what you want changed and any committer can fix the wiki that generates the web page. I am though not an expert on the SDO code itself so I'm hoping one of the SDO people will pitch in. Regards Simon -- Apache Tuscany committer: tuscany.apache.org Co-author of a book about Tuscany and SCA: tuscanyinaction.com
