Dear Wiki user, You have subscribed to a wiki page or wiki category on "Ws Wiki" for change notification.
The following page has been changed by KelvinGoodson: http://wiki.apache.org/ws/Tuscany/TuscanyJava/Design/SDO/ChangeSummary ------------------------------------------------------------------------------ == Queries == * I don't suppose this is the case, but just to clarify, if a Type is open and a ChangeSummary instance is attached to an instance my assumption is that this would not trigger change recording activity. + * how do you trigger DocumentRoot to be a class that supports change tracking? A global element of the type ChangeSummaryType? -- A little quirky! * The spec says that a ChangeSummaryType must be isMany=false and readOnly=true, but the example on P 78 doesnt show that explicitly. Does that mean that these are the normal defaults (can't be!), or that we apply special defaults, or that the example is wrong. * Answer, p. 94 shows special defaulting behaviour of XSD to SDO mapping, readOnly=true. * The existing Tuscany source file for ChangeSummaryImpl is generated, but I can't find an xsd for it. Is it necessary to go back to the xsd that was used orignally to generate ChangeSummaryImpl? I can't find that. @@ -29, +30 @@ ==== Issues/Things I can see that would need to be done ==== + * model definition + * how do you trigger DocumentRoot to be a class that supports change tracking? A global element of the type? * run time * permit dynamic type creation with change summary attribute * update class to indicate change summary tracking possible * create new attribute with * the default value for a ChangeSummary is not null. It is a ChangeSummaryImpl with logging set to on/off -- check which it is? + * when does the ChangeSummary get instantiated (if default is loggin is on , then it makes sense to do it in the factory) * change getter behaviour on DataObject to look for CS on DO * implementation will walk up the containment links towards the root, looking for a ChangeSummary attribute. * cycle over attributes, checking for type = ChangeSummaryType (or instanceType = ChangeSummaryImpl?) @@ -42, +46 @@ *e.g. no overlap (how do I guard that? -- something in existing presence of Notification?) * generator * is there anything out of the ordinary that the generator must do? + * could have get<ChangeSummary>() implement the defaulting behaviour at the top level? * meta model (saving this stuff about metamodel here - although I think it is irrelevant and misguided, but I may change my mind) * Is there a change required in the metamodel to support this? * can the behaviour change be implemented without a change to the meta model? (Yes, I think so) @@ -67, +72 @@ It wouldn't be appropriate from a memory footprint perspective to symmetrically inflate the DataObject with an instance member in the way that DataGraph has one. So the Type will cache the ChangeSummary property. + + == Implementation Work == + + new basic test schema + + {{{ + <xsd:schema + targetNamespace="http://www.example.com/changes" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:sdo="commonj.sdo" + xmlns:chg="http://www.example.com/changes"> + + <xsd:element name="class" type="chg:simpleTrackedType"/> + + <xsd:complexType name="simpleTrackedType" > + <xsd:sequence> + <xsd:element name="value" type="xsd:string" /> + <xsd:element name="changeSummary" type="sdo:ChangeSummaryType" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:schema> + }}} + --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
