summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/components
diff options
context:
space:
mode:
authorjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2010-02-22 06:08:34 +0000
committerjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2010-02-22 06:08:34 +0000
commit8c771c8ecd9bdc6b3ef0d5417db9bb9917b65fa9 (patch)
treea3671bc719d351a822b3728323e6456f163af2c3 /sca-cpp/trunk/components
parentd11cbfda813c7c6b32c06ddb33242fe3c82514eb (diff)
Moved component start calls from HTTPD postConfig to childInit, to give components an opportunity to start and setup connections and resources in each HTTPD child process. Adjusted utility components and test cases to this change. Minor code cleanup of Java components and integration tests.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@912491 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-cpp/trunk/components')
-rw-r--r--sca-cpp/trunk/components/cache/mcache.cpp2
-rw-r--r--sca-cpp/trunk/components/chat/chat.composite2
-rw-r--r--sca-cpp/trunk/components/chat/chatter.cpp4
-rw-r--r--sca-cpp/trunk/components/chat/xmpp.hpp3
-rw-r--r--sca-cpp/trunk/components/queue/queue-listener.cpp8
-rw-r--r--sca-cpp/trunk/components/webservice/webservice-client.cpp2
6 files changed, 11 insertions, 10 deletions
diff --git a/sca-cpp/trunk/components/cache/mcache.cpp b/sca-cpp/trunk/components/cache/mcache.cpp
index 50b642106f..782de605c6 100644
--- a/sca-cpp/trunk/components/cache/mcache.cpp
+++ b/sca-cpp/trunk/components/cache/mcache.cpp
@@ -125,7 +125,7 @@ extern "C" {
const tuscany::value apply(const tuscany::list<tuscany::value>& params) {
const tuscany::value func(car(params));
- if (func == "start" || func == "restart")
+ if (func == "start")
return tuscany::mcache::start(cdr(params));
return tuscany::mkfailure<tuscany::value>();
}
diff --git a/sca-cpp/trunk/components/chat/chat.composite b/sca-cpp/trunk/components/chat/chat.composite
index f02eed1418..569dbfc4b2 100644
--- a/sca-cpp/trunk/components/chat/chat.composite
+++ b/sca-cpp/trunk/components/chat/chat.composite
@@ -46,7 +46,7 @@
<service name="print">
<t:binding.http uri="print"/>
</service>
- <reference name="report" target="print-sender"/>
+ <reference name="report" target="print-chatter"/>
</component>
</composite>
diff --git a/sca-cpp/trunk/components/chat/chatter.cpp b/sca-cpp/trunk/components/chat/chatter.cpp
index 5a6d4909df..95f2d40077 100644
--- a/sca-cpp/trunk/components/chat/chatter.cpp
+++ b/sca-cpp/trunk/components/chat/chatter.cpp
@@ -110,7 +110,7 @@ public:
// Disconnect and shutdown the worker thread
disconnect(const_cast<XMPPClient&>(xc));
- shutdown(const_cast<worker&>(w));
+ cancel(const_cast<worker&>(w));
debug("chat::chatter::stopped");
return failable<value>(value(lambda<value(const list<value>&)>()));
@@ -154,7 +154,7 @@ extern "C" {
const tuscany::value apply(const tuscany::list<tuscany::value>& params) {
const tuscany::value func(car(params));
- if (func == "start" || func == "restart")
+ if (func == "start")
return tuscany::chat::start(cdr(params));
return tuscany::mkfailure<tuscany::value>();
}
diff --git a/sca-cpp/trunk/components/chat/xmpp.hpp b/sca-cpp/trunk/components/chat/xmpp.hpp
index 0f84d5ec4a..34ab13ed98 100644
--- a/sca-cpp/trunk/components/chat/xmpp.hpp
+++ b/sca-cpp/trunk/components/chat/xmpp.hpp
@@ -318,7 +318,8 @@ const failable<bool> listen(const lambda<failable<bool>(const value&, const valu
debug("chat::listen");
xc.listener = listener;
xmpp_handler_add(xc.conn, messageHandler, NULL, "message", NULL, &xc);
- while(xc.connected && !isNil(xc.listener))
+ xc.ctx->loop_status = XMPP_LOOP_RUNNING;
+ while(xc.connected && !isNil(xc.listener) && xc.ctx->loop_status == XMPP_LOOP_RUNNING)
xmpp_run_once(xc.ctx, 1000L);
return true;
}
diff --git a/sca-cpp/trunk/components/queue/queue-listener.cpp b/sca-cpp/trunk/components/queue/queue-listener.cpp
index 57a63b620c..d714101583 100644
--- a/sca-cpp/trunk/components/queue/queue-listener.cpp
+++ b/sca-cpp/trunk/components/queue/queue-listener.cpp
@@ -100,9 +100,9 @@ public:
debug("queue::listener::stop");
// TODO check why stop() and close() hang in child processes
- //stop(const_cast<QpidSubscription&>(qsub));
- //close(const_cast<QpidSession&>(qs));
- //close(const_cast<QpidConnection&>(qc));
+ stop(const_cast<QpidSubscription&>(qsub));
+ close(const_cast<QpidSession&>(qs));
+ close(const_cast<QpidConnection&>(qc));
cancel(const_cast<worker&>(w));
debug("queue::listener::stopped");
@@ -150,7 +150,7 @@ extern "C" {
const tuscany::value apply(const tuscany::list<tuscany::value>& params) {
const tuscany::value func(car(params));
- if (func == "start" || func == "restart")
+ if (func == "start")
return tuscany::queue::start(cdr(params));
return tuscany::mkfailure<tuscany::value>();
}
diff --git a/sca-cpp/trunk/components/webservice/webservice-client.cpp b/sca-cpp/trunk/components/webservice/webservice-client.cpp
index cb756c015e..06db6c01b8 100644
--- a/sca-cpp/trunk/components/webservice/webservice-client.cpp
+++ b/sca-cpp/trunk/components/webservice/webservice-client.cpp
@@ -57,7 +57,7 @@ extern "C" {
const tuscany::value apply(const tuscany::list<tuscany::value>& params) {
const tuscany::value func(car(params));
- if (func == "start" || func == "restart")
+ if (func == "start")
return tuscany::mkfailure<tuscany::value>();
return tuscany::webservice::apply(func, cdr(params));
}