The normative reference here is the name of the composite being used - scdlLocation and scdlResource are things we've added to allow that name to be resolved in a Java runtime as, to date, there is no spec- defined mechanism for doing that. This is related to the artifact resolution thread Raymond and I are having.

In the federated case, I don't think that we can use the user- supplied SCDL to define what needs to be deployed. This is because the logical model supplied by the user can be mapped to different physical environments - for example, a single composite could be decomposed to multiple physical runtimes resulting in components from it being physically deployed separately. If that happens, what is physically running is not the user-supplied model but some subset of it.

I think we can handle this in a couple of ways. One is to synthesize composites to represent the physical deployments; this has the advantage of reusing the existing model but the disadvantage that it conflates the logical and physical models. Another is to add extensions to the logical model to reflect physical characteristics and then have each runtime just deploy the bits that are relevant to it; again this conflates the logical and physical models. A third is to separate logical and physical models entirely, passing to the runtimes just the information needed to build the runtime objects (basically a physical model); I think this is our better option as it separates the logical and physical concerns which is in line with our existing separation between config model and runtime objects.

Coming back to the original subject, this would mean that things like scdlLocation or any other artifact resolution metadata would only apply where the logical model was being processed. When it comes to the physical representation, these would have already been resolved and converted to their physical representation which would be passed to the target runtime /by-value./ All references would have been converted and the component builders on the target runtime would have a complete definition to work from.

I think we have to do this. If we pass references down to the targets then we run the risk that different targets will process the references differently leading to inconsistent deployment across the federation.

--
Jeremy


On Jan 29, 2007, at 2:30 PM, Meeraj Kunnumpurath wrote:

Hi,

Currently SCDL location is modelled as a URL in CompositeImplementation class. This works ok as long as the SCDL is loaded from a URL. However, with the stuff I am working on with federated assembly, an SCDL may be transported into the runtime through the discovery mechanism and thw SCDL contents may be materialized fully in memory. I was wondering whether we need a higher-level abstraction than URL or stick with URL and write custom protocol handlers were the source for the URL is not a standard one (an in-memory byte array for example).

To give a bit of context, I have been thinking of using the existing deployer/loader/builder framwork that is used for local deployment in the federated scenario as well.

Thanks
Meeraj

_________________________________________________________________
MSN Hotmail is evolving – check out the new Windows Live Mail http://ideas.live.com


---------------------------------------------------------------------
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]

Reply via email to