Mike Edwards wrote:
Greg Dritschler wrote:
Hi. I have noticed that there doesn't seem to be a way to remove
definitions (policy sets etc) from the domain. The specs don't
explicitly
say how this would happen, but surely this can't be a one-way process
(you
can add but can't delete). I can only guess that if definitions are
added
as part of a contribution, then those definitions should be removed
when the
contribution is removed? There are some interesting issues, like what if
there are other contributions using elements of those definitions.
As an aside, I've noticed that SCADefinitionsImpl doesn't synchronize the
lists of policy sets, intents, etc. that it keeps, so it is exposed to
bad
things happening if multiple threads try to add definitions at the same
time. SCADefinitionsUtil also does clear/addAll operations that need
to be
made thread-safe.
Greg
Greg,
Artifacts arrive in the domain through Contributions being added to the
domain. Those same contributions can be removed from the domain - and
this causes the artifacts in the contribution to be removed from the
domain.
This applies to definitions as much as it applies to composites or to
Java class files. It might be wise to keep some forms of definition
separate from contributions containing executable code, so that Policy
Sets can be changed without the need to redeploy all the contributions
in the domain, for example.
Or make deployment of contributions really seamless... For example a
contribution can be a directory that the domain points to, that
directory can contain a definitions.xml file, and we shouldn't require a
special deployment step to tell the code that reads that definitions.xml
file that it has changed.
The good news is that it's how it works in Tuscany at the moment :)
The process for updating a policySet is as follows:
1. notepad c:/a-contribution/definitions.xml
2. make changes
3. save
4. restart the nodes
5. they'll get the new updated stuff
That's how it looks from the SCA spec point of view.
You make a good point about the SCADefinitionsImpl - sounds like some
changes are needed there to handle multi threading.
I'm not sure I'm getting the multi-threading thing, could you say a bit
more about it?
--
Jean-Sebastien
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]