summaryrefslogtreecommitdiff
path: root/modules/CIAO/docs/Porting_Hints.txt
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/docs/Porting_Hints.txt')
-rw-r--r--modules/CIAO/docs/Porting_Hints.txt55
1 files changed, 55 insertions, 0 deletions
diff --git a/modules/CIAO/docs/Porting_Hints.txt b/modules/CIAO/docs/Porting_Hints.txt
new file mode 100644
index 00000000000..feed93d2eb7
--- /dev/null
+++ b/modules/CIAO/docs/Porting_Hints.txt
@@ -0,0 +1,55 @@
+Porting applications to the refactored DAnCE:
+
+1) ciao_client_dnc base projects should be changed to ccm_stub
+2) ciao_component_dnc should be changed to ciao_executor
+3) ciao_servant_dnc should be changed to ciao_servant
+4) Executor implementations now require that the configuration_complete
+ operation be implemented.
+5) ciao_{pre,post}activate are no longer invoked.
+
+It should be noted that this new version of CIAO/DAnCE no longer supports
+implicitly homed components. Components must either be explicitly homed
+(ie, an explicitly deployed home instance combined with a component instance
+that specifically identifies that home), or unhomed. In the unhomed case,
+a factory method that instantiates the component executor must be added
+to the _exec header and source files.
+
+
+Porting the plan
+===================
+There are a number of changes to the plan structure to better comply with
+the specification.
+
+1) idref refrences must now be made using an attribute xmi:idref instead
+ of using element content, i.e.,
+
+ <artifact>Receiver_Stub</artifact>
+
+ should be transformed into
+
+ <artifact xmi:idref="Receiver_Stub" />
+
+2) Entrypoint information is now listed in the execParameters for the
+ monolithicImplementation instead of the implementationArtifact elements.
+ Furthermore, the container (servant) and executor artifacts must be
+ explicitly identified. The following execParameters must be present
+ on all monolithic implementations for homes and unhomed components:
+
+ . "home factory" - contains the executor entrypoint for homes
+ . "component factory" - contains the executory entrypoint for unhomed
+ components
+ . "edu.vanderbilt.dre.CIAO.ServantEntrypoint" - contains the container
+ (servant) entrypoint for both homes and unhomed components
+ . "edu.vanderbilt.dre.CIAO.ServantArtifact" - Identifies the name
+ element of the artifact that implements the container (servant)
+ . "edu.vanderbilt.dre.CIAO.ExecutorArtifact" - Identifies the name
+ element of the artifact that implements the executor.
+
+3) IOR output configProperties have changed:
+ . "RegisterNaming" is now edu.vanderbilt.dre.DAnCE.RegisterNaming
+ . "ComponentIOR" is now edu.vanderbilt.dre.DAnCE.InstanceIOR
+
+4) Connection endpoints must now include the <provider> element after the <portName> element.
+. SimplexReceptacle, MultiplexReceptacle, EventEmitter, and EventPublisher should be false
+. Facet and EventConsumer should be true
+