summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormsmit <msmit@remedy.nl>2009-08-18 10:02:19 +0000
committermsmit <msmit@remedy.nl>2009-08-18 10:02:19 +0000
commitf386e337396d00aaccde3da08f0fe9a65430f363 (patch)
tree8972cbd39edabf558100cb132b8d1388a26b5079
parent7b5c99b6319a8a32083f445a1f641806330a0cf5 (diff)
downloadATCD-f386e337396d00aaccde3da08f0fe9a65430f363.tar.gz
Tue Aug 18 09:59:07 UTC 2009 Marcel Smit <msmit@remedy.nl>
* tests/AMI_CCM/Hello_Base/Hello_Base.idl: * tests/AMI_CCM/Receiver/Hello_Receiver.idl: * tests/AMI_CCM/Receiver/Hello_Receiver_exec.h: * tests/AMI_CCM/Receiver/Hello_Receiver_exec.cpp: * tests/AMI_CCM/Sender/Hello_Sender.idl: * tests/AMI_CCM/Sender/Hello_Sender_exec.h: * tests/AMI_CCM/Sender/Hello_Sender_exec.cpp: * tests/AMI_CCM/descriptors/Plan.cdp: * tests/AMI_CCM/descriptors/run_test.pl: Baseline for AMI implementation. Sender and Receiver components are deployable and runable.
-rw-r--r--modules/CIAO/ChangeLog16
-rw-r--r--modules/CIAO/tests/AMI_CCM/Hello_Base/Hello_Base.idl2
-rw-r--r--modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver.idl4
-rw-r--r--modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.cpp11
-rw-r--r--modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.h5
-rw-r--r--modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender.idl4
-rw-r--r--modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.cpp83
-rw-r--r--modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.h57
-rw-r--r--modules/CIAO/tests/AMI_CCM/descriptors/Plan.cdp8
-rwxr-xr-xmodules/CIAO/tests/AMI_CCM/descriptors/run_test.pl16
10 files changed, 101 insertions, 105 deletions
diff --git a/modules/CIAO/ChangeLog b/modules/CIAO/ChangeLog
index a90f2b85b65..b3d8dc78d89 100644
--- a/modules/CIAO/ChangeLog
+++ b/modules/CIAO/ChangeLog
@@ -1,3 +1,17 @@
+Tue Aug 18 09:59:07 UTC 2009 Marcel Smit <msmit@remedy.nl>
+
+ * tests/AMI_CCM/Hello_Base/Hello_Base.idl:
+ * tests/AMI_CCM/Receiver/Hello_Receiver.idl:
+ * tests/AMI_CCM/Receiver/Hello_Receiver_exec.h:
+ * tests/AMI_CCM/Receiver/Hello_Receiver_exec.cpp:
+ * tests/AMI_CCM/Sender/Hello_Sender.idl:
+ * tests/AMI_CCM/Sender/Hello_Sender_exec.h:
+ * tests/AMI_CCM/Sender/Hello_Sender_exec.cpp:
+ * tests/AMI_CCM/descriptors/Plan.cdp:
+ * tests/AMI_CCM/descriptors/run_test.pl:
+ Baseline for AMI implementation. Sender and Receiver
+ components are deployable and runable.
+
Fri Jul 24 11:54:48 UTC 2009 Marcel Smit <msmit@remedy.nl>
* tests/AMI_CCM/Hello_Base/Hello_Base.mpc:
@@ -7,7 +21,7 @@ Fri Jul 24 11:54:48 UTC 2009 Marcel Smit <msmit@remedy.nl>
* tests/AMI_CCM/Sender/Hello_Sender.mpc:
* tests/AMI_CCM/Sender/Hello_Sender_exec.h:
* tests/AMI_CCM/Sender/Hello_Sender_exec.cpp:
- Rerun example.
+ Rerun example.
* tests/AMI_CCM/descriptors/Plan.cdp:
Added connectors. Now both components
diff --git a/modules/CIAO/tests/AMI_CCM/Hello_Base/Hello_Base.idl b/modules/CIAO/tests/AMI_CCM/Hello_Base/Hello_Base.idl
index ae6031a46b9..ae3bda94d5b 100644
--- a/modules/CIAO/tests/AMI_CCM/Hello_Base/Hello_Base.idl
+++ b/modules/CIAO/tests/AMI_CCM/Hello_Base/Hello_Base.idl
@@ -9,7 +9,7 @@ module CCM_AMI
interface AMI_foo
{
- long asynch_foo (in string in_str, out string answer)
+ long asynch_foo (in string in_str)
raises (InternalError);
void foo_callback (in long result, in string answer);
};
diff --git a/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver.idl b/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver.idl
index 8ae6046cc75..e2cf42ae8db 100644
--- a/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver.idl
+++ b/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver.idl
@@ -11,8 +11,8 @@ module Hello_AMI
{
component Receiver
{
- provides CCM_AMI::AMI_foo asynch_foo;
- uses CCM_AMI::AMI_foo callback_foo;
+ provides CCM_AMI::AMI_foo perform_asynch_foo;
+ //uses CCM_AMI::AMI_foo callback_foo;
};
home ReceiverHome manages Receiver
diff --git a/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.cpp b/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.cpp
index 805d0196080..f9dfe329243 100644
--- a/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.cpp
+++ b/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.cpp
@@ -49,11 +49,11 @@ namespace CIAO_Hello_AMI_Receiver_Impl
::CORBA::Long
AMI_foo_exec_i::asynch_foo (
- const char * /* in_str */,
- ::CORBA::String_out /* answer */)
+ const char * in_str )
{
/* Your code here. */
- return 0;
+ printf ("\n\n\n\n\nReceived string <%s>!!!!\n", in_str);
+ return 15;
}
void
@@ -83,10 +83,11 @@ namespace CIAO_Hello_AMI_Receiver_Impl
// Port operations.
::CCM_AMI::CCM_AMI_foo_ptr
- Receiver_exec_i::get_asynch_foo (void)
+ Receiver_exec_i::get_perform_asynch_foo (void)
{
/* Your code here. */
- return ::CCM_AMI::CCM_AMI_foo::_nil ();
+ return new AMI_foo_exec_i ();
+ //return ::CCM_AMI::CCM_AMI_foo::_nil ();
}
// Operations from Components::SessionComponent.
diff --git a/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.h b/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.h
index 08a7853f2fa..b7f501a5848 100644
--- a/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.h
+++ b/modules/CIAO/tests/AMI_CCM/Receiver/Hello_Receiver_exec.h
@@ -58,8 +58,7 @@ namespace CIAO_Hello_AMI_Receiver_Impl
virtual ::CORBA::Long
asynch_foo (
- const char * in_str,
- ::CORBA::String_out answer);
+ const char * in_str);
// TAO_IDL - Generated from
// be/be_visitor_operation/operation_ch.cpp:46
@@ -85,7 +84,7 @@ namespace CIAO_Hello_AMI_Receiver_Impl
// Port operations.
virtual ::CCM_AMI::CCM_AMI_foo_ptr
- get_asynch_foo (void);
+ get_perform_asynch_foo (void);
// Operations from Components::SessionComponent.
diff --git a/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender.idl b/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender.idl
index 3e03ce2245f..f87b683701c 100644
--- a/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender.idl
+++ b/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender.idl
@@ -11,8 +11,8 @@ module Hello_AMI
{
component Sender
{
- uses CCM_AMI::AMI_foo asynch_foo;
- provides CCM_AMI::AMI_foo callback_foo;
+ uses CCM_AMI::AMI_foo run_asynch_foo;
+ //provides CCM_AMI::AMI_foo callback_foo;
};
home SenderHome manages Sender
diff --git a/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.cpp b/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.cpp
index 3811e86c369..ff715aa8304 100644
--- a/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.cpp
+++ b/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.cpp
@@ -31,44 +31,45 @@
#include "Hello_Sender_exec.h"
#include "ciao/CIAO_common.h"
+
+
+
namespace CIAO_Hello_AMI_Sender_Impl
{
- //============================================================
- // Facet Executor Implementation Class: AMI_foo_exec_i
- //============================================================
-
- AMI_foo_exec_i::AMI_foo_exec_i (void)
- {
- }
-
- AMI_foo_exec_i::~AMI_foo_exec_i (void)
- {
- }
-
- // Operations from ::CCM_AMI::AMI_foo
-
- ::CORBA::Long
- AMI_foo_exec_i::asynch_foo (
- const char * /* in_str */,
- ::CORBA::String_out /* answer */)
- {
- /* Your code here. */
- return 0;
- }
-
- void
- AMI_foo_exec_i::foo_callback (
- ::CORBA::Long /* result */,
- const char * /* answer */)
- {
- /* Your code here. */
- }
-
+
+pulse_generator::pulse_generator (::CCM_AMI::AMI_foo_ptr foo_receiver)
+ : foo_receiver_ (::CCM_AMI::AMI_foo::_duplicate (foo_receiver))
+{
+ printf ("pulse_generator::pulse_generator\n");
+}
+
+pulse_generator::~pulse_generator ()
+{
+}
+
+int pulse_generator::svc ()
+{
+ printf ("pulse_generator::svc");
+ ACE_OS::sleep (10);
+ while (1)
+ {
+ if (CORBA::is_nil (foo_receiver_))
+ printf ("foo_receiver is NIL !!!\n");
+ foo_receiver_->asynch_foo ("@#$%~!@$&%$^&*#$%@!# Do something funny %^*&%^$%^#%#@!$%");
+ printf ("asynch_foo called\n");
+ ACE_OS::sleep (2);
+ }
+ return 0;
+}
+
+
+
//============================================================
// Component Executor Implementation Class: Sender_exec_i
//============================================================
Sender_exec_i::Sender_exec_i (void)
+ :pulser_(0)
{
}
@@ -82,13 +83,6 @@ namespace CIAO_Hello_AMI_Sender_Impl
// Port operations.
- ::CCM_AMI::CCM_AMI_foo_ptr
- Sender_exec_i::get_callback_foo (void)
- {
- /* Your code here. */
- return ::CCM_AMI::CCM_AMI_foo::_nil ();
- }
-
// Operations from Components::SessionComponent.
void
@@ -103,18 +97,23 @@ namespace CIAO_Hello_AMI_Sender_Impl
throw ::CORBA::INTERNAL ();
}
}
-
+
void
Sender_exec_i::configuration_complete (void)
{
- /* Your code here. */
}
void
Sender_exec_i::ccm_activate (void)
{
- /* Your code here. */
-
+ printf ("\n\nCCM active\n");
+ ::CCM_AMI::AMI_foo_var foo =
+ this->context_->get_connection_run_asynch_foo ();
+
+ this->pulser_= new pulse_generator (foo);
+
+ this->pulser_->activate (THR_NEW_LWP | THR_JOINABLE,
+ 1);
}
void
diff --git a/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.h b/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.h
index 7d5db0fb764..45f41326219 100644
--- a/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.h
+++ b/modules/CIAO/tests/AMI_CCM/Sender/Hello_Sender_exec.h
@@ -40,55 +40,37 @@
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include "tao/LocalObject.h"
+#include "ace/Task.h"
+
namespace CIAO_Hello_AMI_Sender_Impl
{
- class AMI_foo_exec_i
- : public virtual ::CCM_AMI::CCM_AMI_foo,
- public virtual ::CORBA::LocalObject
+ class Sender_exec_i;
+
+ class pulse_generator : public virtual ACE_Task_Base
{
public:
- AMI_foo_exec_i (void);
- virtual ~AMI_foo_exec_i (void);
-
- // Operations and attributes from ::CCM_AMI::AMI_foo
-
- // TAO_IDL - Generated from
- // be/be_visitor_operation/operation_ch.cpp:46
-
- virtual ::CORBA::Long
- asynch_foo (
- const char * in_str,
- ::CORBA::String_out answer);
-
- // TAO_IDL - Generated from
- // be/be_visitor_operation/operation_ch.cpp:46
-
- virtual void
- foo_callback (
- ::CORBA::Long result,
- const char * answer);
+ pulse_generator (::CCM_AMI::AMI_foo_ptr foo_receiver);
+
+ ~pulse_generator ();
+
+ virtual int svc (void);
+
+ private:
+ /// Maintains a handle that actually process the event
+ ::CCM_AMI::AMI_foo_var foo_receiver_;
+
};
-
+
class Sender_exec_i
: public virtual Sender_Exec,
public virtual ::CORBA::LocalObject
{
public:
Sender_exec_i (void);
+
virtual ~Sender_exec_i (void);
-
- // Supported operations and attributes.
-
- // Component attributes.
-
- // Port operations.
-
- virtual ::CCM_AMI::CCM_AMI_foo_ptr
- get_callback_foo (void);
-
- // Operations from Components::SessionComponent.
-
+
virtual void
set_session_context (
::Components::SessionContext_ptr ctx);
@@ -101,7 +83,8 @@ namespace CIAO_Hello_AMI_Sender_Impl
private:
::Hello_AMI::CCM_Sender_Context_var context_;
- };
+ pulse_generator* pulser_;
+ };
extern "C" HELLO_SENDER_EXEC_Export ::Components::EnterpriseComponent_ptr
create_Hello_AMI_Sender_Impl (void);
diff --git a/modules/CIAO/tests/AMI_CCM/descriptors/Plan.cdp b/modules/CIAO/tests/AMI_CCM/descriptors/Plan.cdp
index b63bdb74246..025eb226043 100644
--- a/modules/CIAO/tests/AMI_CCM/descriptors/Plan.cdp
+++ b/modules/CIAO/tests/AMI_CCM/descriptors/Plan.cdp
@@ -144,20 +144,20 @@
<connection>
<name>asynch_foo_connection</name>
<internalEndpoint>
- <portName>asynch_foo</portName>
+ <portName>perform_asynch_foo</portName>
<provider>true</provider>
<kind>Facet</kind>
<instance xmi:idref="Hello.ComponentImplementations.HelloImplementation.Hello.Receiver" />
</internalEndpoint>
<internalEndpoint>
- <portName>asynch_foo</portName>
+ <portName>run_asynch_foo</portName>
<provider>false</provider>
<kind>SimplexReceptacle</kind>
<instance xmi:idref="Hello.ComponentImplementations.HelloImplementation.Hello.Sender" />
</internalEndpoint>
</connection>
- <connection>
+ <!--connection>
<name>callback_foo_connection</name>
<internalEndpoint>
<portName>callback_foo</portName>
@@ -171,7 +171,7 @@
<kind>SimplexReceptacle</kind>
<instance xmi:idref="Hello.ComponentImplementations.HelloImplementation.Hello.Receiver" />
</internalEndpoint>
- </connection>
+ </connection-->
<!--connection>
<name>Hello.ComponentImplementations.HelloImplementation.Hello.Receiver:read_quoter-Hello.ComponentImplementations.HelloImplementation.Hello.Sender:push_quoter</name>
diff --git a/modules/CIAO/tests/AMI_CCM/descriptors/run_test.pl b/modules/CIAO/tests/AMI_CCM/descriptors/run_test.pl
index 881c63d70cc..be3a1f3b002 100755
--- a/modules/CIAO/tests/AMI_CCM/descriptors/run_test.pl
+++ b/modules/CIAO/tests/AMI_CCM/descriptors/run_test.pl
@@ -189,15 +189,15 @@ if (PerlACE::waitforfile_timed ("Sender.ior",
print "Invoking executor - stop the application -\n";
print "by running dance_plan_launcher.exe with -k file://EM.ior -x $cdp_file -q\n";
-$E =
- new PerlACE::Process ("$DAnCE/bin/dance_plan_launcher",
- "-k file://EM.ior -x $cdp_file -q");
-$E->SpawnWaitKill (30);
+# $E =
+# new PerlACE::Process ("$DAnCE/bin/dance_plan_launcher",
+# "-k file://EM.ior -x $cdp_file -q");
+# $E->SpawnWaitKill (30);
-print "Executor returned.\n";
-print "Shutting down rest of the processes.\n";
+# print "Executor returned.\n";
+# print "Shutting down rest of the processes.\n";
-delete_ior_files ();
-kill_open_processes ();
+# delete_ior_files ();
+# kill_open_processes ();
exit $status;