diff options
author | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2012-12-11 06:13:02 +0000 |
---|---|---|
committer | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2012-12-11 06:13:02 +0000 |
commit | 36adc76235fb0a38e7042bc751f988b71627e2a0 (patch) | |
tree | fc83b3f4e0afeb3932c8d200f5493f0a8d6c4619 /sca-cpp/trunk/components/chat/chat-sender2.cpp | |
parent | 86b1de85536e93c59a25702a5a2d3e384202ffd2 (diff) |
Changes to get successful C++11 based build. Code cleanup, dependency upgrades, and const + inline optimizations in components, samples, and app hosting server.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1420007 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-cpp/trunk/components/chat/chat-sender2.cpp')
-rw-r--r-- | sca-cpp/trunk/components/chat/chat-sender2.cpp | 36 |
1 files changed, 12 insertions, 24 deletions
diff --git a/sca-cpp/trunk/components/chat/chat-sender2.cpp b/sca-cpp/trunk/components/chat/chat-sender2.cpp index 0e00728022..2101617899 100644 --- a/sca-cpp/trunk/components/chat/chat-sender2.cpp +++ b/sca-cpp/trunk/components/chat/chat-sender2.cpp @@ -41,7 +41,7 @@ namespace sender { /** * Post an item to an XMPP JID. */ -const failable<value> post(const lambda<value(const list<value>&)>& jid, const lambda<value(const list<value>&)>& pass, const lambda<value(const list<value>&)>& to, const lambda<value(const list<value>&)>& msg, const list<value>& params) { +const failable<value> post(const lvvlambda& jid, const lvvlambda& pass, const lvvlambda& to, const lvvlambda& msg, const list<value>& params) { const value vjid = jid(mklist<value>("get", params)); const value vpass = pass(mklist<value>("get", params)); @@ -65,14 +65,16 @@ const failable<value> post(const lambda<value(const list<value>&)>& jid, const l } /** - * Chat sender component lambda function + * Start the component. */ -class chatSender { -public: - chatSender(const lambda<value(const list<value>&)>& jid, const lambda<value(const list<value>&)>& pass, const lambda<value(const list<value>&)>& to, const lambda<value(const list<value>&)>& msg) : jid(jid), pass(pass), to(to), msg(msg) { - } +const failable<value> start(const list<value>& params) { - const value operator()(const list<value>& params) const { + // Return the chat sender component lambda function + const lvvlambda jid = car(params); + const lvvlambda pass = cadr(params); + const lvvlambda to = caddr(params); + const lvvlambda msg = cadddr(params); + const lvvlambda sender = [jid, pass, to, msg](const list<value>& params) -> const value { const tuscany::value func(car(params)); if (func == "get") return post(jid, pass, to, msg, cdr(params)); @@ -81,23 +83,9 @@ public: if (func != "stop") return mkfailure<value>(); debug("chat::sender::stop"); - return failable<value>(value(lambda<value(const list<value>&)>())); - } - -private: - const lambda<value(const list<value>&)> jid; - const lambda<value(const list<value>&)> pass; - const lambda<value(const list<value>&)> to; - const lambda<value(const list<value>&)> msg; -}; - -/** - * Start the component. - */ -const failable<value> start(const list<value>& params) { - - // Return the chat sender component lambda function - return value(lambda<value(const list<value>&)>(chatSender(car(params), cadr(params), caddr(params), cadddr(params)))); + return failable<value>(value(lvvlambda())); + }; + return value(sender); } } |