On Aug 15, 2006, at 10:24 AM, Raymond Feng wrote:
I don't think we're mixing the model and runtime here.
"MyExtensionDefinition" is the model object, which is the result of
the "load". Now I need to access the corresponding runtime
metatdata "MyExtension" which is supposed to be built from
"MyExtensionDefinition".
Can we step back and look at the use case we are trying to satisfy?
Runtime "metadata" sounds like the "model" to me. Perhaps what you
need is an ObjectFactory which handles this? That's how we handle
other extensions.
The reason I'm asking for this kind of extensibility is that not
all the extensions can be resolved at "load" time. For example, I
may need to resolve the "databinding.sdo" against an "import.sdo".
Can you elaborate?
Thanks,
Raymond
----- Original Message ----- From: "Jim Marino"
<[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Tuesday, August 15, 2006 10:12 AM
Subject: Re: How to build SCDL model extensions?
On Aug 15, 2006, at 9:58 AM, Raymond Feng wrote:
As defined by the SCA spec, we are allowed to add extensions to
the SCDL model, for example, we can add "myExtension" to a
"composite" as illustrated below.
<composite ...>
<ns1:myExtension xmlns:ns1="http://my.extension/">
...
</ns1:myExtension>
</composite>
With the current extensibility story, I can register a loader to
load the "myExtension" XML stanza to creat
"MyExtensionDefinition" model object. Is the CompositeLoader
supposed to add the "MyExtensionDefinition" instance returned
from my loader to its extension map using
ModelObject.getExtensions().put(..., myExtensionDefinition) if it
doesn't belong to the base SCDL model?
Assuming the answer is yes, then I would like to register a
builder to create the runtime metadata out of the
MyExtensionDefinition (AFAIK, this extensibility doesn't exist
today) and attach it to the owning SCAObject (unfortunately,
SCAObject interface doesn't have the extensions).
Why would this go on the runtime artifact as it sounds like we
are mixing runtime with model? Wouldn't it be better to handle
this in the model loading?
Does this requirement make sense? It comes out as I investigate
the "import.sdo" story.
Thanks,
Raymond
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]