diff options
author | William R. Otte <wotte@dre.vanderbilt.edu> | 2009-02-06 18:29:30 +0000 |
---|---|---|
committer | William R. Otte <wotte@dre.vanderbilt.edu> | 2009-02-06 18:29:30 +0000 |
commit | c78b21e66270413e39bbe6424b7ecdef3ae0f561 (patch) | |
tree | 2a5b13b8bf4a6f7244671879e871448be3239745 | |
parent | 4fdcf8c4e7cf699ef9a016631c4d1d1434fd69ca (diff) | |
download | ATCD-c78b21e66270413e39bbe6424b7ecdef3ae0f561.tar.gz |
ChangeLogTag: Fri Feb 6 18:26:39 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu>
19 files changed, 806 insertions, 948 deletions
diff --git a/flat/CIAO/ChangeLog b/flat/CIAO/ChangeLog index 48bf065f6f1..84e2629179a 100644 --- a/flat/CIAO/ChangeLog +++ b/flat/CIAO/ChangeLog @@ -1,3 +1,38 @@ +Fri Feb 6 18:26:39 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> + + * DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp: + * DAnCE/NodeApplication/NodeApplication_Impl.cpp: + + Better exception handling. + + * DAnCE/bin/PythonDAnCE/generator/artifact.py: + * DAnCE/bin/PythonDAnCE/generator/comp_impl.py: + * DAnCE/bin/PythonDAnCE/generator/header.py: + * DAnCE/bin/generate_plan.py: + + Bugfixes for plangenerator. + + * examples/BasicSP/BMClosedED/BMClosedED_exec.h: + * examples/BasicSP/BMClosedED/BMClosedED_exec.cpp: + * examples/BasicSP/BMDevice/BMDevice_exec.h: + * examples/BasicSP/BMDevice/BMDevice_exec.cpp: + * examples/BasicSP/BMDisplay/BMDisplay_exec.h: + * examples/BasicSP/BMDisplay/BMDisplay_exec.cpp: + * examples/BasicSP/EC/EC_exec.h: + * examples/BasicSP/EC/EC_exec.cpp: + + Added component servant and executor factory operations. + + * examples/BasicSP/descriptors/BasicSP.dat: + * examples/BasicSP/descriptors/BasicSP_Unhomed.cdp: + * examples/BasicSP/descriptors/run_test.pl: + + Ported to new version of DAnCE. test script still needs to invoke correct controller. + + * examples/BasicSP/descriptors/BasicSP.cdp: + + Removed obsolete plan. + Fri Feb 6 13:44:54 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> * DAnCE/bin/PythonDAnCE: @@ -17,8 +52,8 @@ Fri Feb 6 13:44:54 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> * DAnCE/bin/PythonDAnCE/generator/templet.py: * DAnCE/bin/generate_plan.py: - First cut implementation of a very simple cdp generator. - + First cut implementation of a very simple cdp generator. + Thu Feb 5 19:36:49 UTC 2009 William R. Otte <wotte@dre.vanderbilt.edu> * ofccm/DAnCE_Scripts: diff --git a/flat/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp b/flat/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp index 3f0ab7cdb52..47f85e19812 100644 --- a/flat/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp +++ b/flat/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp @@ -480,6 +480,13 @@ DomainApplicationManager_Impl::preparePlan() "Propagating StartError exception caught here\n")); throw e; } + catch (CORBA::Exception &ex) + { + DANCE_ERROR ((LM_ERROR, DLINFO "DomainApplicationManager_Impl::preparePlan - " + "Caught a CORBA exception, propagating StartError: %s\n", + ex._info ().c_str ())); + throw ::Deployment::StartError (); + } catch (...) { DANCE_ERROR ((LM_ERROR, DLINFO "DomainApplicationManager_Impl::preparePlan - " diff --git a/flat/CIAO/DAnCE/NodeApplication/NodeApplication_Impl.cpp b/flat/CIAO/DAnCE/NodeApplication/NodeApplication_Impl.cpp index a14171dbbf6..1a82a6202c6 100644 --- a/flat/CIAO/DAnCE/NodeApplication/NodeApplication_Impl.cpp +++ b/flat/CIAO/DAnCE/NodeApplication/NodeApplication_Impl.cpp @@ -1614,8 +1614,11 @@ NodeApplication_Impl::getAllConnections() { DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::getAllConnections - " "Components::CCMObject_var::provide_facet() returned " - "::Components::InvalidName exception\n")); - throw ::Deployment::InvalidProperty(); + "::Components::InvalidName exception for connection %C and port %C\n", + this->plan_.connection[i].name.in (), + this->plan_.connection[i].internalEndpoint[j].portName.in ())); + throw ::Deployment::InvalidProperty(this->plan_.connection[i].name.in (), + "Container returned InvalidName"); } break; } @@ -1642,8 +1645,11 @@ NodeApplication_Impl::getAllConnections() { DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::getAllConnections - " "Components::CCMObject_var::get_consumer() returned " - "::Components::InvalidName exception\n")); - throw ::Deployment::InvalidProperty(); + "::Components::InvalidName exception for connection %C and port %C\n", + this->plan_.connection[i].name.in (), + this->plan_.connection[i].internalEndpoint[j].portName.in ())); + throw ::Deployment::InvalidProperty(this->plan_.connection[i].name.in (), + "Container returned InvalidName exception"); } break; } @@ -1727,147 +1733,158 @@ NodeApplication_Impl::finishLaunch (const Deployment::Connections & providedRefe if (name.compare (providedReference[i].name.in()) == 0) { - switch (conn.internalEndpoint[0].kind) - { - case Deployment::Facet: - { - DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - " - "set for facet %C \n", name.c_str ())); - Components::CCMObject_var ext_inst; - try - { - if (0 == conn.externalReference.length()) - { - if (conn.internalEndpoint.length () == 2 && - (conn.internalEndpoint[1].kind == Deployment::MultiplexReceptacle || - conn.internalEndpoint[1].kind == Deployment::SimplexReceptacle)) - { - obj = Components::CCMObject:: - _narrow (this->instances_[conn.internalEndpoint[1].instanceRef]->ref.in ()); - - this->connect_receptacle (obj.in (), - conn.internalEndpoint[1].portName.in(), - providedReference[i].endpoint[0].in()); - } - /* - DANCE_ERROR ((LM_ERROR, DLINFO "NodeApplication_impl::finishLaunch - " - "Unsupported facet connection; lacks either external reference or " - "multiple internalEndpoints.\n")); - throw ::Deployment::StartError (name.c_str (), - "Unsupported facet connection; lacks either external reference " - "or multiple internalEndpoints.\n"); - */ - break; - } - CORBA::Object_var tmp = - this->orb_->string_to_object (conn.externalReference[0].location.in()); - ext_inst = Components::CCMObject::_narrow (tmp); - if (CORBA::is_nil (ext_inst.in())) - { - DANCE_ERROR((LM_ERROR, DLINFO "NodeApplication_impl::finishLaunch - " - "facet for %C can't be narrowed \n", name.c_str ())); - break; - } - this->connect_receptacle_ext (ext_inst, - conn.externalReference[0].portName.in(), - providedReference[i].endpoint[0].in()); - } - catch (const CORBA::OBJECT_NOT_EXIST&) - { - // @@TODO: Shouldn't this be an error?!? - break; - } - catch (const CORBA::TRANSIENT&) - { - // @@TODO: Shouldn't this be an error?!? - break; - } - - break; - } - case Deployment::EventConsumer: - { - DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for consumer \n")); - Components::CCMObject_var ext_inst; - try - { - if (0 == conn.externalReference.length()) - { - break; - } - CORBA::Object_var tmp = - this->orb_->string_to_object (conn.externalReference[0].location.in()); - ext_inst = Components::CCMObject::_narrow (tmp); - if (CORBA::is_nil (ext_inst.in())) - { - DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::finishLaunch - " - "reference for %C can't be narrowed \n", name.c_str ())); - throw ::Deployment::InvalidConnection(); - break; - } - try - { - // Check is connection kind is consumer to emitter? - this->connect_emitter_ext (ext_inst, - conn.externalReference[0].portName.in(), - providedReference[i].endpoint[0].in()); - } - catch (const ::Components::InvalidName&) - { - // No this is consumer to publisher - this->connect_publisher (ext_inst, - conn.externalReference[0].portName.in(), - providedReference[i].endpoint[0].in()); - } - } - catch (const CORBA::OBJECT_NOT_EXIST&) - { - break; - } - catch (const CORBA::TRANSIENT&) - { - break; - } - break; - } - case Deployment::MultiplexReceptacle: - case Deployment::SimplexReceptacle: - { - // What we should do with Cookie, returned from connect call??? - DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for receptacle \n")); - this->connect_receptacle (obj.in(), - conn.internalEndpoint[0].portName.in(), - providedReference[i].endpoint[0].in()); - break; - } - case Deployment::EventEmitter: - { - DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for emitter \n")); - this->connect_emitter (obj.in(), - conn.internalEndpoint[0].portName.in(), - providedReference[i].endpoint[0].in()); - break; - } - case Deployment::EventPublisher: - { - DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for publisher \n")); - this->connect_publisher (obj.in(), - conn.internalEndpoint[0].portName.in(), - providedReference[i].endpoint[0].in()); - break; - } - default: - { - DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::finishLaunch - currect Connection.InternalEndPoint.Kind " - "is not a Deployment::SimplexReceptacle, Deployment::EventEmitter, Deployment::EventPublisher " - "(Connection:%C Kind:%i PortName:%C)\n", - conn.name.in(), - conn.internalEndpoint[0].kind, - conn.internalEndpoint[0].portName.in() - )); - throw ::Deployment::InvalidConnection(); - }//default - }//switch + try + { + switch (conn.internalEndpoint[0].kind) + { + case Deployment::Facet: + { + DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - " + "set for facet %C \n", name.c_str ())); + Components::CCMObject_var ext_inst; + try + { + if (0 == conn.externalReference.length()) + { + if (conn.internalEndpoint.length () == 2 && + (conn.internalEndpoint[1].kind == Deployment::MultiplexReceptacle || + conn.internalEndpoint[1].kind == Deployment::SimplexReceptacle)) + { + obj = Components::CCMObject:: + _narrow (this->instances_[conn.internalEndpoint[1].instanceRef]->ref.in ()); + + this->connect_receptacle (obj.in (), + conn.internalEndpoint[1].portName.in(), + providedReference[i].endpoint[0].in()); + } + /* + DANCE_ERROR ((LM_ERROR, DLINFO "NodeApplication_impl::finishLaunch - " + "Unsupported facet connection; lacks either external reference or " + "multiple internalEndpoints.\n")); + throw ::Deployment::StartError (name.c_str (), + "Unsupported facet connection; lacks either external reference " + "or multiple internalEndpoints.\n"); + */ + break; + } + CORBA::Object_var tmp = + this->orb_->string_to_object (conn.externalReference[0].location.in()); + ext_inst = Components::CCMObject::_narrow (tmp); + if (CORBA::is_nil (ext_inst.in())) + { + DANCE_ERROR((LM_ERROR, DLINFO "NodeApplication_impl::finishLaunch - " + "facet for %C can't be narrowed \n", name.c_str ())); + break; + } + this->connect_receptacle_ext (ext_inst, + conn.externalReference[0].portName.in(), + providedReference[i].endpoint[0].in()); + } + catch (const CORBA::OBJECT_NOT_EXIST&) + { + // @@TODO: Shouldn't this be an error?!? + break; + } + catch (const CORBA::TRANSIENT&) + { + // @@TODO: Shouldn't this be an error?!? + break; + } + + break; + } + case Deployment::EventConsumer: + { + DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for consumer \n")); + Components::CCMObject_var ext_inst; + try + { + if (0 == conn.externalReference.length()) + { + break; + } + CORBA::Object_var tmp = + this->orb_->string_to_object (conn.externalReference[0].location.in()); + ext_inst = Components::CCMObject::_narrow (tmp); + if (CORBA::is_nil (ext_inst.in())) + { + DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::finishLaunch - " + "reference for %C can't be narrowed \n", name.c_str ())); + throw ::Deployment::InvalidConnection(); + break; + } + try + { + // Check is connection kind is consumer to emitter? + this->connect_emitter_ext (ext_inst, + conn.externalReference[0].portName.in(), + providedReference[i].endpoint[0].in()); + } + catch (const ::Components::InvalidName&) + { + // No this is consumer to publisher + this->connect_publisher (ext_inst, + conn.externalReference[0].portName.in(), + providedReference[i].endpoint[0].in()); + } + } + catch (const CORBA::OBJECT_NOT_EXIST&) + { + break; + } + catch (const CORBA::TRANSIENT&) + { + break; + } + break; + } + case Deployment::MultiplexReceptacle: + case Deployment::SimplexReceptacle: + { + // What we should do with Cookie, returned from connect call??? + DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for receptacle \n")); + this->connect_receptacle (obj.in(), + conn.internalEndpoint[0].portName.in(), + providedReference[i].endpoint[0].in()); + break; + } + case Deployment::EventEmitter: + { + DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for emitter \n")); + this->connect_emitter (obj.in(), + conn.internalEndpoint[0].portName.in(), + providedReference[i].endpoint[0].in()); + break; + } + case Deployment::EventPublisher: + { + DANCE_DEBUG((LM_DEBUG, DLINFO "NodeApplication_impl::finishLaunch - set for publisher \n")); + this->connect_publisher (obj.in(), + conn.internalEndpoint[0].portName.in(), + providedReference[i].endpoint[0].in()); + break; + } + default: + { + DANCE_ERROR((LM_ERROR, DLINFO "NodeApplication_impl::finishLaunch - currect Connection.InternalEndPoint.Kind " + "is not a Deployment::SimplexReceptacle, Deployment::EventEmitter, Deployment::EventPublisher " + "(Connection:%C Kind:%i PortName:%C)\n", + conn.name.in(), + conn.internalEndpoint[0].kind, + conn.internalEndpoint[0].portName.in() + )); + throw ::Deployment::InvalidConnection(); + }//default + }//switch + } + catch (::Deployment::StartError &ex) + { + DANCE_ERROR ((LM_ERROR, DLINFO "NodeApplication_impl::finishLaunch - " + "Intercepted StartError exception while configuring %C conneciton, rethrowing\n", + name.c_str ())); + throw ::Deployment::StartError (name.c_str (), + ex.reason.in ()); + } }//if(name.compare(providedReference[i].name.in()) == 0) }//for ( unsigned int i = 0; i < providedReference.length(); ++i ) }//for ( unsigned int j = 0; j < this->plan_.connection.length(); ++j ) @@ -2049,19 +2066,19 @@ NodeApplication_Impl::connect_publisher (Components::CCMObject_ptr inst, { DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::finishLaunch - " "Components::CCMObject_var::subscribe() returned ::Components::InvalidName exception\n")); - throw ::Deployment::StartError(); + throw ::Deployment::StartError("", "Caught InvalidName exception"); } catch (const ::Components::InvalidConnection& ) { DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::finishLaunch - " "Components::CCMObject_var::subscribe() returned ::Components::InvalidConnection exception\n")); - throw ::Deployment::InvalidConnection(); + throw ::Deployment::InvalidConnection("", "Caught InvalidConnection exception"); } catch (const ::Components::ExceededConnectionLimit& ) { DANCE_ERROR((LM_ERROR, DLINFO " NodeApplication_impl::finishLaunch - " "Components::CCMObject_var::subscribe() returned ::Components::ExceededCOnnectionLimit exception\n")); - throw ::Deployment::InvalidConnection(); + throw ::Deployment::InvalidConnection("", "Caught ExceededConnectionLimit exception\n"); } return res; } diff --git a/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/artifact.py b/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/artifact.py index 07b3e897448..dbebad5291d 100755 --- a/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/artifact.py +++ b/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/artifact.py @@ -3,19 +3,19 @@ from templet import stringfunction @stringfunction def template (component_name): """ - <artifact xmi:id="${component_name}ExecArtifact"> + <artifact xmi:id="${component_name}_ExecArtifact"> <name>${component_name}_exec</name> <source/> <node/> <location>${component_name}_exec</location> </artifact> - <artifact xmi:id="${component_name}SvntArtifact"> + <artifact xmi:id="${component_name}_SvntArtifact"> <name>${component_name}_svnt</name> <source/> <node/> <location>${component_name}_svnt</location> </artifact> - <artifact xmi:id="${component_name}StubArtifact"> + <artifact xmi:id="${component_name}_StubArtifact"> <name>${component_name}_stub</name> <source/> <node/> diff --git a/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/comp_impl.py b/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/comp_impl.py index eb709fb4e51..6c311bc56bc 100755 --- a/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/comp_impl.py +++ b/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/comp_impl.py @@ -3,6 +3,7 @@ from templet import stringfunction @stringfunction def template (component_name) : """ + <implementation xmi:id="${component_name}ComponentImplementation"> <name>${component_name}ComponentImplementation</name> <source/> diff --git a/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/header.py b/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/header.py index 60dc096dd83..c16146ae028 100755 --- a/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/header.py +++ b/flat/CIAO/DAnCE/bin/PythonDAnCE/generator/header.py @@ -10,4 +10,5 @@ def template (uuid): xsi:schemaLocation="http://www.omg.org/Deployment Deployment.xsd"> <label>${uuid}</label> <UUID>${uuid}</UUID> - """ + +""" diff --git a/flat/CIAO/DAnCE/bin/generate_plan.py b/flat/CIAO/DAnCE/bin/generate_plan.py index 212c2ce61b0..1dee2cbb708 100755 --- a/flat/CIAO/DAnCE/bin/generate_plan.py +++ b/flat/CIAO/DAnCE/bin/generate_plan.py @@ -1,4 +1,8 @@ #!/usr/bin/python +import sys, os + +sys.path.append (os.getenv ("DANCE_ROOT")) + def parse_args (): from optparse import OptionParser @@ -34,32 +38,38 @@ def main (): artifacts = {} #implementations - - for item in opts.homes: - retval += generator.home_impl.template (item) - artifacts[item] = 1 + if opts.homes is not None: + for item in opts.homes: + retval += generator.home_impl.template (item) + artifacts[item] = 1 - for item in opts.homed_components: - retval += generator.homed_comp_impl.template (item) - artifacts[item] = 1 + if opts.homed_components is not None: + for item in opts.homed_components: + retval += generator.homed_comp_impl.template (item) + artifacts[item] = 1 - for item in opts.components: - retval += generator.comp_impl.template (item) - artifacts[item] = 1 + if opts.components is not None: + for item in opts.components: + retval += generator.comp_impl.template (item) + artifacts[item] = 1 #instances - for item in opts.homes: - retval += generator.home_inst.template (item) - - for item in opts.homed_components: - retval += generator.homed_comp_inst.template (item) - - for item in opts.components: - retval += generator.comp_inst.template (item) + if opts.homes is not None: + for item in opts.homes: + retval += generator.home_inst.template (item) + + if opts.homed_components is not None: + for item in opts.homed_components: + retval += generator.homed_comp_inst.template (item) + + if opts.components is not None: + for item in opts.components: + retval += generator.comp_inst.template (item) #artifacts - for item in artifacts.keys(): - retval += generator.artifact.template(item) + if artifacts is not None: + for item in artifacts.keys(): + retval += generator.artifact.template(item) retval += generator.footer.template () diff --git a/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.cpp b/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.cpp index cb12f9eacc5..a4d855213f7 100644 --- a/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.cpp +++ b/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.cpp @@ -115,6 +115,19 @@ MyImpl::BMClosedED_exec_i::ccm_remove () "MyImpl::BMClosedED_exec_i::ccm_remove\n")); } +extern "C" BMCLOSEDED_EXEC_Export ::Components::EnterpriseComponent_ptr +create_BasicSP_BMClosedED_Impl (void) +{ + ::Components::EnterpriseComponent_ptr retval = + ::Components::EnterpriseComponent::_nil (); + + ACE_NEW_RETURN (retval, + MyImpl::BMClosedED_exec_i, + ::Components::EnterpriseComponent::_nil ()); + + return retval; +} + /// Default ctor. MyImpl::BMClosedEDHome_exec_i::BMClosedEDHome_exec_i () { diff --git a/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.h b/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.h index 37152dfc70f..df241e09315 100644 --- a/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.h +++ b/flat/CIAO/examples/BasicSP/BMClosedED/BMClosedED_exec.h @@ -73,6 +73,9 @@ namespace MyImpl BasicSP::CCM_BMClosedED_Context_var context_; }; + extern "C" BMCLOSEDED_EXEC_Export ::Components::EnterpriseComponent_ptr + create_BasicSP_BMClosedED_Impl (void); + /** * @class BMClosedEDHome_exec_i * diff --git a/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp b/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp index ae59cdb167e..f19eb750f2a 100644 --- a/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp +++ b/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.cpp @@ -79,6 +79,19 @@ MyImpl::BMDevice_exec_i::ccm_remove () "MyImpl::BMDevice_exec_i::ccm_remove\n")); } +extern "C" BMDEVICE_EXEC_Export ::Components::EnterpriseComponent_ptr +create_BasicSP_BMDevice_Impl (void) +{ + ::Components::EnterpriseComponent_ptr retval = + ::Components::EnterpriseComponent::_nil (); + + ACE_NEW_RETURN (retval, + MyImpl::BMDevice_exec_i, + ::Components::EnterpriseComponent::_nil ()); + + return retval; +} + /// Default ctor. MyImpl::BMDeviceHome_exec_i::BMDeviceHome_exec_i () { diff --git a/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h b/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h index 896d2e8d6ff..16d97b47e32 100644 --- a/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h +++ b/flat/CIAO/examples/BasicSP/BMDevice/BMDevice_exec.h @@ -71,6 +71,9 @@ namespace MyImpl MyImpl::ReadData_Impl* data_read_; }; + extern "C" BMDEVICE_EXEC_Export ::Components::EnterpriseComponent_ptr + create_BasicSP_BMDevice_Impl (void); + /** * @class BMDeviceHome_exec_i * diff --git a/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.cpp b/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.cpp index 7b24088cef6..a7944d1a71d 100644 --- a/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.cpp +++ b/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.cpp @@ -87,6 +87,19 @@ MyImpl::BMDisplay_exec_i::ccm_remove () "MyImpl::BMDisplay_exec_i::ccm_remove\n")); } +extern "C" BMDISPLAY_EXEC_Export ::Components::EnterpriseComponent_ptr +create_BasicSP_BMDisplay_Impl (void) +{ + ::Components::EnterpriseComponent_ptr retval = + ::Components::EnterpriseComponent::_nil (); + + ACE_NEW_RETURN (retval, + MyImpl::BMDisplay_exec_i, + ::Components::EnterpriseComponent::_nil ()); + + return retval; +} + /// Default ctor. MyImpl::BMDisplayHome_exec_impl::BMDisplayHome_exec_impl () { diff --git a/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.h b/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.h index 47fec9f2cf6..c56d57a3825 100644 --- a/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.h +++ b/flat/CIAO/examples/BasicSP/BMDisplay/BMDisplay_exec.h @@ -61,6 +61,9 @@ namespace MyImpl BasicSP::CCM_BMDisplay_Context_var context_; }; + extern "C" BMDISPLAY_EXEC_Export ::Components::EnterpriseComponent_ptr + create_BasicSP_BMDisplay_Impl (void); + /** * @class BMDisplayHome_exec_impl * diff --git a/flat/CIAO/examples/BasicSP/EC/EC_exec.cpp b/flat/CIAO/examples/BasicSP/EC/EC_exec.cpp index 64a345b9c44..741f9826b5d 100644 --- a/flat/CIAO/examples/BasicSP/EC/EC_exec.cpp +++ b/flat/CIAO/examples/BasicSP/EC/EC_exec.cpp @@ -233,6 +233,19 @@ MyImpl::EC_exec_i::pulse (void) } } +extern "C" EC_EXEC_Export ::Components::EnterpriseComponent_ptr +create_BasicSP_EC_Impl (void) +{ + ::Components::EnterpriseComponent_ptr retval = + ::Components::EnterpriseComponent::_nil (); + + ACE_NEW_RETURN (retval, + MyImpl::EC_exec_i, + ::Components::EnterpriseComponent::_nil ()); + + return retval; +} + MyImpl::ECHome_exec_i::ECHome_exec_i () { } diff --git a/flat/CIAO/examples/BasicSP/EC/EC_exec.h b/flat/CIAO/examples/BasicSP/EC/EC_exec.h index a062995f151..67d0171082b 100644 --- a/flat/CIAO/examples/BasicSP/EC/EC_exec.h +++ b/flat/CIAO/examples/BasicSP/EC/EC_exec.h @@ -70,6 +70,9 @@ namespace MyImpl ACE_Thread_Manager thr_mgr_; }; + extern "C" EC_EXEC_Export ::Components::EnterpriseComponent_ptr + create_BasicSP_EC_Impl (void); + /** * @class EC_exec_i * diff --git a/flat/CIAO/examples/BasicSP/descriptors/BasicSP.cdp b/flat/CIAO/examples/BasicSP/descriptors/BasicSP.cdp deleted file mode 100644 index 9679a125e55..00000000000 --- a/flat/CIAO/examples/BasicSP/descriptors/BasicSP.cdp +++ /dev/null @@ -1,649 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no" ?> -<Deployment:deploymentPlan xmlns:Deployment="http://www.omg.org/Deployment" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/Deployment Deployment.xsd"> - - <UUID>1D6FDF7A-96B6-42C0-8C29-D9135ACD5491</UUID> - - <implementation id="_B89013A8-AE19-4719-BC89-A68C5FB57A83"> - <name>BasicSP.ComponentImplementations.BMClosedED.BMClosedED</name> - <source/> - <artifact>_2DB384A3-5C66-49DF-8F82-B5197B27B69D</artifact> - <artifact>_A4A6CF39-DC3C-4FBC-AC22-1F3140506315</artifact> - <artifact>_E7F6E4B9-39FD-4984-A445-CFAB41B12FCD</artifact> - </implementation> - - <implementation id="_0BA28CFB-6384-4CB8-8802-FBE2265F621C"> - <name>BasicSP.ComponentImplementations.BMDevice.BMDevice</name> - <source/> - <artifact>_65B95763-506E-43FF-BF45-74D39F3D6722</artifact> - <artifact>_224BE213-886F-4B13-93D3-306823AF3CCE</artifact> - <artifact>_48EAED0D-B445-49B6-A76D-7DFAB05DD062</artifact> - </implementation> - - <implementation id="_E6D5AE4E-0F9A-4BCB-9F8B-83BE7CD7796E"> - <name>BasicSP.ComponentImplementations.BMDisplay_Windows.BMDisplay_Windows</name> - <source/> - <artifact>_5015E55E-3D64-4A41-A828-93118654490F</artifact> - <artifact>_673E9592-F577-4EF4-96E7-A64EA82D2AAE</artifact> - <artifact>_2621661F-D144-4317-AEEE-118E8AFAAC7E</artifact> - </implementation> - - <implementation id="_903A5BA3-3794-4D58-A5A6-143EEF7EEB2A"> - <name>BasicSP.ComponentImplementations.EC_Windows.EC_Windows</name> - <source/> - <artifact>_3F773C52-78B8-49D1-8E0C-8C7DD346B3D9</artifact> - <artifact>_D2F6D6D3-A06D-426D-A179-484F35A6AE98</artifact> - <artifact>_DE25A81F-758F-4E23-87A8-C54ED43A36CD</artifact> - </implementation> - - <implementation id="_49DC6AC8-76B6-4166-B953-88CCAED17955"> - <name>BasicSP.ComponentImplementations.BMClosedED_Windows.BMClosedED_Windows</name> - <source/> - <artifact>_396EF214-CE5E-4A3B-8F0F-5DB1F6A23F12</artifact> - <artifact>_6D5A2477-3CD7-4AE6-BB00-D9948E77058B</artifact> - <artifact>_D1890470-82F5-4832-8C99-2E6DF64C636F</artifact> - </implementation> - - <implementation id="_6E94C415-564F-4DFE-A587-C37248382137"> - <name>BasicSP.ComponentImplementations.BMDevice_Windows.BMDevice_Windows</name> - <source/> - <artifact>_62852846-B6C5-4779-9E79-52B67E3DE268</artifact> - <artifact>_DED02302-3E81-4A6E-B71D-8821D6CEB2FE</artifact> - <artifact>_5060A846-E6AA-402D-A14C-774B914BF9EF</artifact> - </implementation> - - <implementation id="_5E0BC014-4F05-4374-9B21-03DBA0142B7F"> - <name>BasicSP.ComponentImplementations.BMDisplay.BMDisplay</name> - <source/> - <artifact>_EA190017-CEC5-48D4-AB26-34E40E6BCD03</artifact> - <artifact>_9D3A55F7-B7F9-4612-ABB5-A5FC5B69D710</artifact> - <artifact>_19089E67-07B1-47C4-A7F4-DC4F3EA81227</artifact> - </implementation> - - <implementation id="_D2F1AA1B-4E16-46AC-9A1B-9F04253F14BD"> - <name>BasicSP.ComponentImplementations.EC.EC</name> - <source/> - <artifact>_63C63797-2B3A-46F1-82B5-81DC6FAE6042</artifact> - <artifact>_219F2FAB-E96E-4CB4-B1F6-22CFFE7667F9</artifact> - <artifact>_AE86F474-9286-4AA2-8000-2C5813EB65A6</artifact> - </implementation> - - <implementation id="_71359436-E878-492B-86E9-660414403D25"> - <name>BasicSP.ComponentImplementations.BasicSPAsmImplementation.BasicSPAsmMonolithicImpl</name> - <source/> - <artifact>_66FB9FB8-EB86-48BD-9378-E0F68F34887B</artifact> - <artifact>_67BF3864-3AE9-4401-A661-50D2558FF7BF</artifact> - <artifact>_ADF31B15-6CCE-4BAF-A379-2592EC613B4E</artifact> - </implementation> - - <instance id="BasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED"> - <name>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED</name> - <node>BMDisplay</node> - <source/> - <implementation>_B89013A8-AE19-4719-BC89-A68C5FB57A83</implementation> - <configProperty> - <name>ComponentIOR</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>BMClosedED.ior</string> - </value> - </value> - </configProperty> - </instance> - - <instance id="BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDevice"> - <name>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDevice</name> - <node>BMDisplay</node> - <source/> - <implementation>_0BA28CFB-6384-4CB8-8802-FBE2265F621C</implementation> - <configProperty> - <name>ComponentIOR</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>BMDevice.ior</string> - </value> - </value> - </configProperty> - </instance> - - <instance id="BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDisplay"> - <name>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDisplay</name> - <node>BMDisplay</node> - <source/> - <implementation>_E6D5AE4E-0F9A-4BCB-9F8B-83BE7CD7796E</implementation> - <configProperty> - <name>ComponentIOR</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>BMDisplay.ior</string> - </value> - </value> - </configProperty> - </instance> - - <instance id="BasicSP.ComponentImplementations.BasicSP.BasicSP.EC"> - <name>BasicSP.ComponentImplementations.BasicSP.BasicSP.EC</name> - <node>EC</node> - <source/> - <implementation>_903A5BA3-3794-4D58-A5A6-143EEF7EEB2A</implementation> - <configProperty> - <name>ComponentIOR</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>EC.ior</string> - </value> - </value> - </configProperty> - </instance> - - <connection> - <name>datain_data_readBasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedEDBasicSP.ComponentImplementations.BasicSP.BasicSP.BMDevice</name> - <internalEndpoint> - <portName>datain</portName> - <kind>SimplexReceptacle</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED</instance> - </internalEndpoint> - <internalEndpoint> - <portName>data_read</portName> - <kind>Facet</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDevice</instance> - </internalEndpoint> - </connection> - - <connection> - <name>comp_data_dataoutBasicSP.ComponentImplementations.BasicSP.BasicSP.BMDisplayBasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED</name> - <internalEndpoint> - <portName>comp_data</portName> - <kind>SimplexReceptacle</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDisplay</instance> - </internalEndpoint> - <internalEndpoint> - <portName>dataout</portName> - <kind>Facet</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED</instance> - </internalEndpoint> - </connection> - - <connection> - <name>timeout_timeoutBasicSP.ComponentImplementations.BasicSP.BasicSP.ECBasicSP.ComponentImplementations.BasicSP.BasicSP.BMDevice</name> - <internalEndpoint> - <portName>timeout</portName> - <kind>EventPublisher</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.EC</instance> - </internalEndpoint> - <internalEndpoint> - <portName>timeout</portName> - <kind>EventConsumer</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDevice</instance> - </internalEndpoint> - </connection> - - <connection> - <name>data_available_in_availBasicSP.ComponentImplementations.BasicSP.BasicSP.BMDeviceBasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED</name> - <internalEndpoint> - <portName>data_available</portName> - <kind>EventPublisher</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDevice</instance> - </internalEndpoint> - <internalEndpoint> - <portName>in_avail</portName> - <kind>EventConsumer</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED</instance> - </internalEndpoint> - </connection> - - <connection> - <name>out_avail_data_readyBasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedEDBasicSP.ComponentImplementations.BasicSP.BasicSP.BMDisplay</name> - <internalEndpoint> - <portName>out_avail</portName> - <kind>EventPublisher</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedED</instance> - </internalEndpoint> - <internalEndpoint> - <portName>data_ready</portName> - <kind>EventConsumer</kind> - <instance>BasicSP.ComponentImplementations.BasicSP.BasicSP.BMDisplay</instance> - </internalEndpoint> - </connection> - - <artifact id="_2DB384A3-5C66-49DF-8F82-B5197B27B69D"> - <name>BasicSP.ImplementationArtifacts.BMClosedED.BMClosedED_exec</name> - <source/> - <node/> - <location>BMClosedED_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMClosedEDHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_E7F6E4B9-39FD-4984-A445-CFAB41B12FCD"> - <name>BasicSP.ImplementationArtifacts.BMClosedED.BMClosedED_stub</name> - <source/> - <node/> - <location>BMClosedED_stub</location> - </artifact> - - <artifact id="_A4A6CF39-DC3C-4FBC-AC22-1F3140506315"> - <name>BasicSP.ImplementationArtifacts.BMClosedED.BMClosedED_svnt</name> - <source/> - <node/> - <location>BMClosedED_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMClosedEDHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_396EF214-CE5E-4A3B-8F0F-5DB1F6A23F12"> - <name>BasicSP.ImplementationArtifacts.BMClosedED.BMClosedED_exec_Windows</name> - <source/> - <node/> - <location>BMClosedED_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMClosedEDHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_D1890470-82F5-4832-8C99-2E6DF64C636F"> - <name>BasicSP.ImplementationArtifacts.BMClosedED.BMClosedED_stub_Windows</name> - <source/> - <node/> - <location>BMClosedED_stub</location> - </artifact> - - <artifact id="_6D5A2477-3CD7-4AE6-BB00-D9948E77058B"> - <name>BasicSP.ImplementationArtifacts.BMClosedED.BMClosedED_svnt_Windows</name> - <source/> - <node/> - <location>BMClosedED_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMClosedEDHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_65B95763-506E-43FF-BF45-74D39F3D6722"> - <name>BasicSP.ImplementationArtifacts.BMDevice.BMDevice_exec</name> - <source/> - <node/> - <location>BMDevice_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDeviceHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_224BE213-886F-4B13-93D3-306823AF3CCE"> - <name>BasicSP.ImplementationArtifacts.BMDevice.BMDevice_stub</name> - <source/> - <node/> - <location>BMDevice_stub</location> - </artifact> - - <artifact id="_48EAED0D-B445-49B6-A76D-7DFAB05DD062"> - <name>BasicSP.ImplementationArtifacts.BMDevice.BMDevice_svnt</name> - <source/> - <node/> - <location>BMDevice_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDeviceHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_DED02302-3E81-4A6E-B71D-8821D6CEB2FE"> - <name>BasicSP.ImplementationArtifacts.BMDevice.BMDevice_svnt_Windows</name> - <source/> - <node/> - <location>BMDevice_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDeviceHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_5060A846-E6AA-402D-A14C-774B914BF9EF"> - <name>BasicSP.ImplementationArtifacts.BMDevice.BMDevice_stub_Windows</name> - <source/> - <node/> - <location>BMDevice_stub</location> - </artifact> - - <artifact id="_62852846-B6C5-4779-9E79-52B67E3DE268"> - <name>BasicSP.ImplementationArtifacts.BMDevice.BMDevice_exec_Windows</name> - <source/> - <node/> - <location>BMDevice_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDeviceHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_19089E67-07B1-47C4-A7F4-DC4F3EA81227"> - <name>BasicSP.ImplementationArtifacts.BMDisplay.BMDisplay_exec</name> - <source/> - <node/> - <location>BMDisplay_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDisplayHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_9D3A55F7-B7F9-4612-ABB5-A5FC5B69D710"> - <name>BasicSP.ImplementationArtifacts.BMDisplay.BMDisplay_svnt</name> - <source/> - <node/> - <location>BMDisplay_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDisplayHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_EA190017-CEC5-48D4-AB26-34E40E6BCD03"> - <name>BasicSP.ImplementationArtifacts.BMDisplay.BMDisplay_stub</name> - <source/> - <node/> - <location>BMDisplay_stub</location> - </artifact> - - <artifact id="_2621661F-D144-4317-AEEE-118E8AFAAC7E"> - <name>BasicSP.ImplementationArtifacts.BMDisplay.BMDisplay_exec_Windows</name> - <source/> - <node/> - <location>BMDisplay_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDisplayHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_673E9592-F577-4EF4-96E7-A64EA82D2AAE"> - <name>BasicSP.ImplementationArtifacts.BMDisplay.BMDisplay_svnt_Windows</name> - <source/> - <node/> - <location>BMDisplay_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BMDisplayHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_5015E55E-3D64-4A41-A828-93118654490F"> - <name>BasicSP.ImplementationArtifacts.BMDisplay.BMDisplay_stub_Windows</name> - <source/> - <node/> - <location>BMDisplay_stub</location> - </artifact> - - <artifact id="_219F2FAB-E96E-4CB4-B1F6-22CFFE7667F9"> - <name>BasicSP.ImplementationArtifacts.EC.EC_exec</name> - <source/> - <node/> - <location>EC_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_ECHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_AE86F474-9286-4AA2-8000-2C5813EB65A6"> - <name>BasicSP.ImplementationArtifacts.EC.EC_svnt</name> - <source/> - <node/> - <location>EC_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_ECHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_63C63797-2B3A-46F1-82B5-81DC6FAE6042"> - <name>BasicSP.ImplementationArtifacts.EC.EC_stub</name> - <source/> - <node/> - <location>EC_stub</location> - </artifact> - - <artifact id="_3F773C52-78B8-49D1-8E0C-8C7DD346B3D9"> - <name>BasicSP.ImplementationArtifacts.EC.EC_stub_Windows</name> - <source/> - <node/> - <location>EC_stub</location> - </artifact> - - <artifact id="_D2F6D6D3-A06D-426D-A179-484F35A6AE98"> - <name>BasicSP.ImplementationArtifacts.EC.EC_svnt_Windows</name> - <source/> - <node/> - <location>EC_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_ECHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_DE25A81F-758F-4E23-87A8-C54ED43A36CD"> - <name>BasicSP.ImplementationArtifacts.EC.EC_exec_Windows</name> - <source/> - <node/> - <location>EC_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_ECHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_C1990F73-87B6-42AF-93CA-858EC98A4D87"> - <name>BasicSP.ImplementationArtifacts.CommonArtifacts.BasicSP_stub</name> - <source/> - <node/> - <location/> - </artifact> - - <artifact id="_96FC1B6C-062F-4C29-867F-2C26352279CF"> - <name>BasicSP.ImplementationArtifacts.CommonArtifacts.BasicSP_svnt</name> - <source/> - <node/> - <location/> - </artifact> - - <artifact id="_E7C42E93-353F-4D17-96C5-3DAF63647247"> - <name>BasicSP.ImplementationArtifacts.CommonArtifacts.BasicSP_svnt_Windows</name> - <source/> - <node/> - <location/> - </artifact> - - <artifact id="_5CF0BFBB-81CE-4FA4-85C2-36287EF9495A"> - <name>BasicSP.ImplementationArtifacts.CommonArtifacts.BasicSP_stub_Windows</name> - <source/> - <node/> - <location/> - </artifact> - - <artifact id="_513FCD8E-7AFD-415B-9CB2-913FDD4A90FA"> - <name>BasicSP.ImplementationArtifacts.CommonArtifacts.BasicSP_exec</name> - <source/> - <node/> - <location/> - </artifact> - - <artifact id="_03E19F2A-9CA2-4050-A0D7-5277E3BD9BF2"> - <name>BasicSP.ImplementationArtifacts.CommonArtifacts.BasicSP_exec_Windows</name> - <source/> - <node/> - <location/> - </artifact> - - <artifact id="_66FB9FB8-EB86-48BD-9378-E0F68F34887B"> - <name>BasicSP.ImplementationArtifacts.BasicSPAsmArtifacts.BasicSPAsm_stub</name> - <source/> - <node/> - <location>BasicSPAsm_stub</location> - </artifact> - - <artifact id="_67BF3864-3AE9-4401-A661-50D2558FF7BF"> - <name>BasicSP.ImplementationArtifacts.BasicSPAsmArtifacts.BasicSPAsm_svnt</name> - <source/> - <node/> - <location>BasicSPAsm_svnt</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BasicSPAsmHome_Servant</string> - </value> - </value> - </execParameter> - </artifact> - - <artifact id="_ADF31B15-6CCE-4BAF-A379-2592EC613B4E"> - <name>BasicSP.ImplementationArtifacts.BasicSPAsmArtifacts.BasicSPAsm_exec</name> - <source/> - <node/> - <location>BasicSPAsm_exec</location> - <execParameter> - <name>entryPoint</name> - <value> - <type> - <kind>tk_string</kind> - </type> - <value> - <string>create_BasicSP_BasicSPAsmHome_Impl</string> - </value> - </value> - </execParameter> - </artifact> - -</Deployment:deploymentPlan> diff --git a/flat/CIAO/examples/BasicSP/descriptors/BasicSP.dat b/flat/CIAO/examples/BasicSP/descriptors/BasicSP.dat index f6723ab42fb..2131aeec973 100644 --- a/flat/CIAO/examples/BasicSP/descriptors/BasicSP.dat +++ b/flat/CIAO/examples/BasicSP/descriptors/BasicSP.dat @@ -1,2 +1,4 @@ -EC corbaloc:iiop:localhost:10000/NodeManager -BMDisplay corbaloc:iiop:localhost:20000/NodeManager
\ No newline at end of file +EC corbaloc:iiop:localhost:10000/EC.NodeManager +BMDisplay corbaloc:iiop:localhost:20000/BMDisplay.NodeManager +BMClosedED corbaloc:iiop:localhost:30000/BMClosedED.NodeManager +BMDevice corbaloc:iiop:localhost:40000/BMDevice.NodeManager diff --git a/flat/CIAO/examples/BasicSP/descriptors/BasicSP_Unhomed.cdp b/flat/CIAO/examples/BasicSP/descriptors/BasicSP_Unhomed.cdp new file mode 100644 index 00000000000..cab36e8bb0e --- /dev/null +++ b/flat/CIAO/examples/BasicSP/descriptors/BasicSP_Unhomed.cdp @@ -0,0 +1,397 @@ +<Deployment:DeploymentPlan + xmlns:Deployment="http://www.omg.org/Deployment" + xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.omg.org/Deployment Deployment.xsd"> + <label>BasicSP_Unhomed</label> + <UUID>BasicSP_Unhomed</UUID> + + <implementation xmi:id="BMDisplayComponentImplementation"> + <name>BMDisplayComponentImplementation</name> + <source/> + <artifact xmi:idref="BMDisplay_ExecArtifact" /> + <artifact xmi:idref="BMDisplay_SvntArtifact" /> + <execParameter> + <!-- entrypoint as exec parameter (see 10.6.1) --> + <name>component factory</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_BMDisplay_Impl</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantEntrypoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_BMDisplay_Servant</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>BMDisplay_svnt</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ExecutorArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>BMDisplay_exec</string> + </value> + </value> + </execParameter> + </implementation> + + <implementation xmi:id="BMClosedEDComponentImplementation"> + <name>BMClosedEDComponentImplementation</name> + <source/> + <artifact xmi:idref="BMClosedED_ExecArtifact" /> + <artifact xmi:idref="BMClosedED_SvntArtifact" /> + <execParameter> + <!-- entrypoint as exec parameter (see 10.6.1) --> + <name>component factory</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_BMClosedED_Impl</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantEntrypoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_BMClosedED_Servant</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>BMClosedED_svnt</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ExecutorArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>BMClosedED_exec</string> + </value> + </value> + </execParameter> + </implementation> + + <implementation xmi:id="BMDeviceComponentImplementation"> + <name>BMDeviceComponentImplementation</name> + <source/> + <artifact xmi:idref="BMDevice_ExecArtifact" /> + <artifact xmi:idref="BMDevice_SvntArtifact" /> + <execParameter> + <!-- entrypoint as exec parameter (see 10.6.1) --> + <name>component factory</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_BMDevice_Impl</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantEntrypoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_BMDevice_Servant</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>BMDevice_svnt</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ExecutorArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>BMDevice_exec</string> + </value> + </value> + </execParameter> + </implementation> + + <implementation xmi:id="ECComponentImplementation"> + <name>ECComponentImplementation</name> + <source/> + <artifact xmi:idref="EC_ExecArtifact" /> + <artifact xmi:idref="EC_SvntArtifact" /> + <execParameter> + <!-- entrypoint as exec parameter (see 10.6.1) --> + <name>component factory</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_EC_Impl</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantEntrypoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_BasicSP_EC_Servant</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ServantArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>EC_svnt</string> + </value> + </value> + </execParameter> + <execParameter> + <name>edu.vanderbilt.dre.CIAO.ExecutorArtifact</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>EC_exec</string> + </value> + </value> + </execParameter> + </implementation> + <instance xmi:id="BMDisplayComponentInstance"> + <name>BMDisplayComponent</name> + <node>BMDisplay</node> + <!-- hostname --> + <source/> + <implementation xmi:idref="BMDisplayComponentImplementation" /> + </instance> + <instance xmi:id="BMClosedEDComponentInstance"> + <name>BMClosedEDComponent</name> + <node>BMClosedED</node> + <!-- hostname --> + <source/> + <implementation xmi:idref="BMClosedEDComponentImplementation" /> + </instance> + <instance xmi:id="BMDeviceComponentInstance"> + <name>BMDeviceComponent</name> + <node>BMDevice</node> + <!-- hostname --> + <source/> + <implementation xmi:idref="BMDeviceComponentImplementation" /> + </instance> + <instance xmi:id="ECComponentInstance"> + <name>ECComponent</name> + <node>EC</node> + <!-- hostname --> + <source/> + <implementation xmi:idref="ECComponentImplementation" /> + </instance> + + <connection> + <name>datain_data_readBasicSP.ComponentImplementations.BasicSP.BasicSP.BMClosedEDBMDeviceComponentInstance</name> + <internalEndpoint> + <portName>datain</portName> + <provider>false</provider> + <kind>SimplexReceptacle</kind> + <instance xmi:idref="BMClosedEDComponentInstance" /> + </internalEndpoint> + <internalEndpoint> + <portName>data_read</portName> + <provider>true</provider> + <kind>Facet</kind> + <instance xmi:idref="BMDeviceComponentInstance" /> + </internalEndpoint> + </connection> + + <connection> + <name>comp_data_dataoutBMDisplayComponentInstanceBMDisplayComponentInstance</name> + <internalEndpoint> + <portName>comp_data</portName> + <provider>false</provider> + <kind>SimplexReceptacle</kind> + <instance xmi:idref="BMDisplayComponentInstance" /> + </internalEndpoint> + <internalEndpoint> + <portName>dataout</portName> + <provider>true</provider> + <kind>Facet</kind> + <instance xmi:idref="BMClosedEDComponentInstance" /> + </internalEndpoint> + </connection> + + <connection> + <name>timeout_timeoutECComponentInstanceBMDeviceComponentInstance</name> + <internalEndpoint> + <portName>timeout</portName> + <provider>false</provider> + <kind>EventPublisher</kind> + <instance xmi:idref="ECComponentInstance" /> + </internalEndpoint> + <internalEndpoint> + <portName>timeout</portName> + <provider>true</provider> + <kind>EventConsumer</kind> + <instance xmi:idref="BMDeviceComponentInstance" /> + </internalEndpoint> + </connection> + + <connection> + <name>data_available_in_availBMDeviceComponentInstanceBMDisplayComponentInstance</name> + <internalEndpoint> + <portName>data_available</portName> + <provider>false</provider> + <kind>EventPublisher</kind> + <instance xmi:idref="BMDeviceComponentInstance" /> + </internalEndpoint> + <internalEndpoint> + <portName>in_avail</portName> + <provider>true</provider> + <kind>EventConsumer</kind> + <instance xmi:idref="BMClosedEDComponentInstance" /> + </internalEndpoint> + </connection> + + <connection> + <name>out_avail_data_readyBMDisplayComponentInstanceBMDisplayComponentInstance</name> + <internalEndpoint> + <portName>out_avail</portName> + <provider>false</provider> + <kind>EventPublisher</kind> + <instance xmi:idref="BMClosedEDComponentInstance" /> + </internalEndpoint> + <internalEndpoint> + <portName>data_ready</portName> + <provider>true</provider> + <kind>EventConsumer</kind> + <instance xmi:idref="BMDisplayComponentInstance" /> + </internalEndpoint> + </connection> + + <artifact xmi:id="BMDisplay_ExecArtifact"> + <name>BMDisplay_exec</name> + <source/> + <node/> + <location>BMDisplay_exec</location> + </artifact> + <artifact xmi:id="BMDisplay_SvntArtifact"> + <name>BMDisplay_svnt</name> + <source/> + <node/> + <location>BMDisplay_svnt</location> + </artifact> + <artifact xmi:id="BMDisplay_StubArtifact"> + <name>BMDisplay_stub</name> + <source/> + <node/> + <location>BMDisplay_stub</location> + </artifact> + <artifact xmi:id="BMClosedED_ExecArtifact"> + <name>BMClosedED_exec</name> + <source/> + <node/> + <location>BMClosedED_exec</location> + </artifact> + <artifact xmi:id="BMClosedED_SvntArtifact"> + <name>BMClosedED_svnt</name> + <source/> + <node/> + <location>BMClosedED_svnt</location> + </artifact> + <artifact xmi:id="BMClosedED_StubArtifact"> + <name>BMClosedED_stub</name> + <source/> + <node/> + <location>BMClosedED_stub</location> + </artifact> + <artifact xmi:id="EC_ExecArtifact"> + <name>EC_exec</name> + <source/> + <node/> + <location>EC_exec</location> + </artifact> + <artifact xmi:id="EC_SvntArtifact"> + <name>EC_svnt</name> + <source/> + <node/> + <location>EC_svnt</location> + </artifact> + <artifact xmi:id="EC_StubArtifact"> + <name>EC_stub</name> + <source/> + <node/> + <location>EC_stub</location> + </artifact> + <artifact xmi:id="BMDevice_ExecArtifact"> + <name>BMDevice_exec</name> + <source/> + <node/> + <location>BMDevice_exec</location> + </artifact> + <artifact xmi:id="BMDevice_SvntArtifact"> + <name>BMDevice_svnt</name> + <source/> + <node/> + <location>BMDevice_svnt</location> + </artifact> + <artifact xmi:id="BMDevice_StubArtifact"> + <name>BMDevice_stub</name> + <source/> + <node/> + <location>BMDevice_stub</location> + </artifact> +</Deployment:DeploymentPlan>
\ No newline at end of file diff --git a/flat/CIAO/examples/BasicSP/descriptors/run_test.pl b/flat/CIAO/examples/BasicSP/descriptors/run_test.pl index 668207a717a..c4622e41b73 100755 --- a/flat/CIAO/examples/BasicSP/descriptors/run_test.pl +++ b/flat/CIAO/examples/BasicSP/descriptors/run_test.pl @@ -1,6 +1,6 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' - & eval 'exec perl -S $0 $argv:q' - if 0; + & eval 'exec perl -S $0 $argv:q' + if 0; # $Id$ # -*- perl -*- @@ -14,107 +14,88 @@ $DAnCE = "$ENV{'CIAO_ROOT'}/DAnCE"; $daemons_running = 0; $em_running = 0; $ns_running = 0; -$pl_running = 0; -$daemons = 2; -@ports = ( 10000, 20000 ); -@iorfiles = ( "NodeManager1.ior", "NodeManager2.ior" ); -@componentiorfiles = ("BMDevice.ior", "BMDisplay.ior", "BMClosedED.ior", "EC.ior"); - +$daemons = 4; +@ports = ( 10000, 20000, 30000, 40000 ); +@iorfiles = ( "NodeApp1.ior", "NodeApp2.ior", "NodeApp3.ior", "NodeApp4.ior" ); +@nodenames = ( "EC", "BMDisplay", "BMClosedED", "BMDevice" ); $status = 0; $dat_file = "BasicSP.dat"; -$cdp_file = "BasicSP.cdp"; -$emior_file = "EM.ior"; -$nsior_file = "ns.ior"; -$damior_file = "DAM.ior"; -$controller_exec = "$CIAO_ROOT/examples/BasicSP/EC/controller"; +$cdp_file = "BasicSP_Unhomed.cdp"; +$controller_exec = "$CIAO_ROOT/examples/BasicSP/"; + +$nsior = PerlACE::LocalFile ("ns.ior"); -$nsior = PerlACE::LocalFile ($nsior_file); -$emior = PerlACE::LocalFile ($emior_file); -$damior = PerlACE::LocalFile ($damior_file); +unlink $nsior; -$PL = 0; +$E = 0; $EM = 0; # Delete if there are any .ior files. sub delete_ior_files { - for ($i = 0; $i < @iorfiles; ++$i) { + for ($i = 0; $i < $daemons; ++$i) { unlink $iorfiles[$i]; } - for ($i = 0; $i < @componentiorfiles; ++$i) { - unlink $componentiorfiles[$i]; - } - unlink $nsior; - unlink $emior; - unlink $damior; -} - -sub run_node_daemons { - for ($i = 0; $i < @iorfiles; ++$i) { - $iorfile = $iorfiles[$i]; - $port = $ports[$i]; - - $iiop = "iiop://localhost:$port"; - $node_app = "$CIAO_ROOT/bin/NodeApplication"; - - $d_cmd = "$CIAO_ROOT/bin/NodeManager"; - $d_param = "-ORBEndpoint $iiop -s $node_app -o $iorfile -d 30"; - - $Daemons[$i] = new PerlACE::Process ($d_cmd, $d_param); - $result = $Daemons[$i]->Spawn (); - push(@processes, $Daemons[$i]); - - if (PerlACE::waitforfile_timed ($iorfile, - $PerlACE::wait_interval_for_process_creation) == -1) { - print STDERR - "ERROR: The ior file of node daemon $i could not be found\n"; - for (; $i >= 0; --$i) { - $Daemons[$i]->Kill (); - $Daemons[$i]->TimedWait (1); - } - return -1; - } - } - return 0; + unlink PerlACE::LocalFile ("EM.ior"); + unlink PerlACE::LocalFile ("Receiver.ior"); + unlink PerlACE::LocalFile ("Sender.ior"); + unlink PerlACE::LocalFile ("DAM.ior"); + unlink PerlACE::LocalFile ("ns.ior"); } sub kill_node_daemons { - for ($i = 0; $i < $daemons; ++$i) { - $Daemons[$i]->Kill (); - $Daemons[$i]->TimedWait (1); - } + for ($i = 0; $i < $daemons; ++$i) { + $Daemons[$i]->Kill (); $Daemons[$i]->TimedWait (1); + } } sub kill_open_processes { - if ($daemons_running == 1) { - kill_node_daemons (); - } + if ($daemons_running == 1) { + kill_node_daemons (); + } - if ($em_running == 1) { - $EM->Kill (); - $EM->TimedWait (1); - } + if ($em_running == 1) { + $EM->Kill (); + $EM->TimedWait (1); + } - if ($ns_running == 1) { - $NS->Kill (); - $NS->TimedWait (1); - } - - if ($pl1_running == 1) { - $PL1->Kill(); - $PL1->TimedWait (1); - } + if ($ns_running == 1) { + $NS->Kill (); + $NS->TimedWait (1); + } - if ($pl2_running == 1) { - $PL2->Kill(); - $PL2->TimedWait (1); - } +} - delete_ior_files(); +sub run_node_daemons { + for ($i = 0; $i < $daemons; ++$i) + { + $iorfile = $iorfiles[$i]; + $port = $ports[$i]; + $nodename = $nodenames[$i]; + $iiop = "iiop://localhost:$port"; + $node_app = "$CIAO_ROOT/bin/ciao_componentserver"; + + $d_cmd = "$DAnCE/bin/dance_node_manager"; + $d_param = "-ORBEndpoint $iiop -s $node_app -n $nodename=$iorfile -t 30 --instance-nc corbaloc:rir:/NameService"; + print "$d_param\n"; + $Daemons[$i] = new PerlACE::Process ($d_cmd, $d_param); + $result = $Daemons[$i]->Spawn (); + push(@processes, $Daemons[$i]); + + if (PerlACE::waitforfile_timed ($iorfile, + 30) == -1) { + print STDERR + "ERROR: The ior $iorfile file of node daemon $i could not be found\n"; + for (; $i >= 0; --$i) { + $Daemons[$i]->Kill (); $Daemons[$i]->TimedWait (1); + } + return -1; + } + } + return 0; } delete_ior_files (); - # Invoke naming service $NS = new PerlACE::Process ("$TAO_ROOT/orbsvcs/Naming_Service/Naming_Service", "-m 0 -ORBEndpoint iiop://localhost:60003 -o ns.ior"); @@ -123,7 +104,8 @@ $NS->Spawn (); print STDERR "Starting Naming Service\n"; -if (PerlACE::waitforfile_timed ($nsior, $PerlACE::wait_interval_for_process_creation) == -1) { +if (PerlACE::waitforfile_timed ($nsior, $PerlACE::wait_interval_for_process_creation) == -1) +{ print STDERR "ERROR: cannot find naming service IOR file\n"; $NS->Kill (); exit 1; @@ -134,25 +116,26 @@ $ns_running = 1; # Set up NamingService environment $ENV{"NameServiceIOR"} = "corbaloc:iiop:localhost:60003/NameService"; + # Invoke node daemons. print "Invoking node daemons\n"; $status = run_node_daemons (); if ($status != 0) { - print STDERR "ERROR: Unable to execute the node daemons\n"; - kill_open_processes (); - exit 1; + print STDERR "ERROR: Unable to execute the node daemons\n"; + kill_open_processes (); + exit 1; } $daemons_running = 1; # Invoke execution manager. print "Invoking execution manager\n"; -$EM = new PerlACE::Process ("$CIAO_ROOT/bin/Execution_Manager", - "-o $emior_file -i $dat_file"); +$EM = new PerlACE::Process ("$DAnCE/bin/dance_execution_manager", + "-eEM.ior --node-map $dat_file"); $EM->Spawn (); -if (PerlACE::waitforfile_timed ("$emior_file", +if (PerlACE::waitforfile_timed ("EM.ior", $PerlACE::wait_interval_for_process_creation) == -1) { print STDERR "ERROR: The ior file of execution manager could not be found\n"; @@ -162,43 +145,31 @@ if (PerlACE::waitforfile_timed ("$emior_file", $em_running = 1; -# Deploy the application -print "Invoking plan_launcher - deploy the application -\n"; -$PL1 = - new PerlACE::Process ("$CIAO_ROOT/bin/plan_launcher", - "-p $cdp_file -k file://$emior_file -o $damior_file"); -$PL1->Spawn (); +# Invoke executor - start the application -. +print "Invoking executor - start the application -\n"; +$E = + new PerlACE::Process ("$DAnCE/bin/dance_plan_launcher", + "-x $cdp_file -k file://EM.ior"); -$pl1_running = 1; +$E->SpawnWaitKill (5000); -if (PerlACE::waitforfile_timed ("$damior_file", - $PerlACE::wait_interval_for_process_creation) == -1) { - print STDERR - "ERROR: The ior file of domain application manager could not be found\n"; +if (PerlACE::waitforfile_timed ( + "Receiver.ior", + $PerlACE::wait_interval_for_process_creation) == -1) { + print STDERR "ERROR: The ior file of receiver could not be found\n"; kill_open_processes (); exit 1; } - -sleep (10); - -# Invoke executor - start the application -. -print "Starting the application\n"; -$controller = new PerlACE::Process ("$controller_exec", - "-k file://$componentiorfiles[3] -o"); -$result = $controller->SpawnWaitKill (3000); - -if ($result != 0) { - print STDERR "ERROR: The controller returned $result\n"; - $status = 1; +if (PerlACE::waitforfile_timed ("Sender.ior", + $PerlACE::wait_interval_for_process_creation) == -1) { + print STDERR "ERROR: The ior file of sender could not be found\n"; + kill_open_processes (); + exit 1; } -sleep (10); - -# Invoke executor - stop the application -. -print "Stopping the application\n"; -$controller = new PerlACE::Process ("$controller_exec", - "-k file://$componentiorfiles[3] -f"); +print "Invoking the controller\n"; +$controller = new PerlACE::Process ("$controller_exec", "-k file://Sender.ior"); $result = $controller->SpawnWaitKill (3000); if ($result != 0) { @@ -207,14 +178,16 @@ if ($result != 0) { } # Invoke executor - stop the application -. -print "Invoking plan_launcher - tearing down the application\n"; -$PL2 = - new PerlACE::Process ("$CIAO_ROOT/bin/plan_launcher", - "-k file://$emior_file -p $cdp_file -i file://$damior_file"); -$PL2->Spawn(); +print "Invoking executor - stop the application -\n"; +$E = + new PerlACE::Process ("$DAnCE/bin/dance_plan_launcher", + "-k file://EM.ior -x $cdp_file -q"); +$E->SpawnWaitKill (3000); -$pl2_running = 1; +print "Executor returned.\n"; +print "Shutting down rest of the processes.\n"; -sleep(5); +delete_ior_files (); +kill_open_processes (); -kill_open_processes(); +exit $status; |