Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/broker.hpp.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/broker.hpp.html?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/broker.hpp.html (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/broker.hpp.html Thu Apr 14 18:29:35 2016 @@ -128,9 +128,9 @@ https://github.com/apache/qpid-proton/bl <span class="c1">/// The examples add functionality as needed, this helps to make it</span> <span class="c1">/// easier to see the important differences between the examples.</span> -<span class="cp">#include</span> <span class="cpf">"proton/event.hpp"</span><span class="cp"></span> -<span class="cp">#include</span> <span class="cpf">"proton/message.hpp"</span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"proton/connection.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/handler.hpp"</span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"proton/message.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/sender.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/transport.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/url.hpp"</span><span class="cp"></span> @@ -248,30 +248,28 @@ https://github.com/apache/qpid-proton/bl <span class="kt">uint64_t</span> <span class="n">next_id_</span><span class="p">;</span> <span class="c1">// Use to generate unique queue IDs.</span> <span class="p">};</span> +<span class="cp">#include</span> <span class="cpf">"fake_cpp11.hpp"</span><span class="cp"></span> <span class="k">class</span> <span class="nc">broker_handler</span> <span class="o">:</span> <span class="k">public</span> <span class="n">proton</span><span class="o">::</span><span class="n">handler</span> <span class="p">{</span> <span class="k">public</span><span class="o">:</span> <span class="n">broker_handler</span><span class="p">(</span><span class="n">queues</span><span class="o">&</span> <span class="n">qs</span><span class="p">)</span> <span class="o">:</span> <span class="n">queues_</span><span class="p">(</span><span class="n">qs</span><span class="p">)</span> <span class="p">{}</span> - <span class="kt">void</span> <span class="n">on_link_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">proton</span><span class="o">::</span><span class="n">link</span> <span class="n">lnk</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">link</span><span class="p">();</span> + <span class="kt">void</span> <span class="n">on_sender_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">sender</span> <span class="o">&</span><span class="n">sender</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">proton</span><span class="o">::</span><span class="n">terminus</span> <span class="n">remote_source</span><span class="p">(</span><span class="n">sender</span><span class="p">.</span><span class="n">remote_source</span><span class="p">());</span> + <span class="n">queue</span> <span class="o">&</span><span class="n">q</span> <span class="o">=</span> <span class="n">remote_source</span><span class="p">.</span><span class="n">dynamic</span><span class="p">()</span> <span class="o">?</span> + <span class="n">queues_</span><span class="p">.</span><span class="n">dynamic</span><span class="p">()</span> <span class="o">:</span> <span class="n">queues_</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">remote_source</span><span class="p">.</span><span class="n">address</span><span class="p">());</span> + <span class="n">sender</span><span class="p">.</span><span class="n">local_source</span><span class="p">().</span><span class="n">address</span><span class="p">(</span><span class="n">q</span><span class="p">.</span><span class="n">name</span><span class="p">());</span> + + <span class="n">q</span><span class="p">.</span><span class="n">subscribe</span><span class="p">(</span><span class="n">sender</span><span class="p">);</span> + <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"broker outgoing link from "</span> <span class="o"><<</span> <span class="n">q</span><span class="p">.</span><span class="n">name</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> + <span class="p">}</span> - <span class="k">if</span> <span class="p">(</span><span class="o">!!</span><span class="n">lnk</span><span class="p">.</span><span class="n">sender</span><span class="p">())</span> <span class="p">{</span> - <span class="n">proton</span><span class="o">::</span><span class="n">terminus</span> <span class="n">remote_source</span><span class="p">(</span><span class="n">lnk</span><span class="p">.</span><span class="n">remote_source</span><span class="p">());</span> - <span class="n">queue</span> <span class="o">&</span><span class="n">q</span> <span class="o">=</span> <span class="n">remote_source</span><span class="p">.</span><span class="n">dynamic</span><span class="p">()</span> <span class="o">?</span> - <span class="n">queues_</span><span class="p">.</span><span class="n">dynamic</span><span class="p">()</span> <span class="o">:</span> <span class="n">queues_</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">remote_source</span><span class="p">.</span><span class="n">address</span><span class="p">());</span> - <span class="n">lnk</span><span class="p">.</span><span class="n">local_source</span><span class="p">().</span><span class="n">address</span><span class="p">(</span><span class="n">q</span><span class="p">.</span><span class="n">name</span><span class="p">());</span> - - <span class="n">q</span><span class="p">.</span><span class="n">subscribe</span><span class="p">(</span><span class="n">lnk</span><span class="p">.</span><span class="n">sender</span><span class="p">());</span> - <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"broker outgoing link from "</span> <span class="o"><<</span> <span class="n">q</span><span class="p">.</span><span class="n">name</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> - <span class="p">}</span> <span class="k">else</span> <span class="p">{</span> - <span class="c1">// Receiver</span> - <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">address</span> <span class="o">=</span> <span class="n">lnk</span><span class="p">.</span><span class="n">remote_target</span><span class="p">().</span><span class="n">address</span><span class="p">();</span> - <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">address</span><span class="p">.</span><span class="n">empty</span><span class="p">())</span> <span class="p">{</span> - <span class="n">lnk</span><span class="p">.</span><span class="n">local_target</span><span class="p">().</span><span class="n">address</span><span class="p">(</span><span class="n">address</span><span class="p">);</span> - <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"broker incoming link to "</span> <span class="o"><<</span> <span class="n">address</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> - <span class="p">}</span> + <span class="kt">void</span> <span class="n">on_receiver_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">receiver</span> <span class="o">&</span><span class="n">receiver</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">address</span> <span class="o">=</span> <span class="n">receiver</span><span class="p">.</span><span class="n">remote_target</span><span class="p">().</span><span class="n">address</span><span class="p">();</span> + <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">address</span><span class="p">.</span><span class="n">empty</span><span class="p">())</span> <span class="p">{</span> + <span class="n">receiver</span><span class="p">.</span><span class="n">local_target</span><span class="p">().</span><span class="n">address</span><span class="p">(</span><span class="n">address</span><span class="p">);</span> + <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"broker incoming link to "</span> <span class="o"><<</span> <span class="n">address</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="p">}</span> <span class="p">}</span> @@ -283,28 +281,24 @@ https://github.com/apache/qpid-proton/bl <span class="p">}</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_link_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">proton</span><span class="o">::</span><span class="n">link</span> <span class="n">lnk</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">link</span><span class="p">();</span> - - <span class="k">if</span> <span class="p">(</span><span class="o">!!</span><span class="n">lnk</span><span class="p">.</span><span class="n">sender</span><span class="p">())</span> <span class="p">{</span> - <span class="n">unsubscribe</span><span class="p">(</span><span class="n">lnk</span><span class="p">.</span><span class="n">sender</span><span class="p">());</span> - <span class="p">}</span> + <span class="kt">void</span> <span class="n">on_sender_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">sender</span> <span class="o">&</span><span class="n">sender</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">unsubscribe</span><span class="p">(</span><span class="n">sender</span><span class="p">);</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_connection_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">remove_stale_consumers</span><span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">());</span> + <span class="kt">void</span> <span class="n">on_connection_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">connection</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">remove_stale_consumers</span><span class="p">(</span><span class="n">c</span><span class="p">);</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_transport_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">remove_stale_consumers</span><span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">());</span> + <span class="kt">void</span> <span class="n">on_transport_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">transport</span> <span class="o">&</span><span class="n">t</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">remove_stale_consumers</span><span class="p">(</span><span class="n">t</span><span class="p">.</span><span class="n">connection</span><span class="p">());</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_transport_error</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"broker client disconnect: "</span> <span class="o"><<</span> <span class="n">e</span><span class="p">.</span><span class="n">transport</span><span class="p">().</span><span class="n">condition</span><span class="p">().</span><span class="n">what</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> + <span class="kt">void</span> <span class="n">on_transport_error</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">transport</span> <span class="o">&</span><span class="n">t</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"broker client disconnect: "</span> <span class="o"><<</span> <span class="n">t</span><span class="p">.</span><span class="n">condition</span><span class="p">().</span><span class="n">what</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_unhandled_error</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">,</span> <span class="k">const</span> <span class="n">proton</span><span class="o">::</span><span class="n">condition</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="p">{</span> - <span class="n">std</span><span class="o">::</span><span class="n">cerr</span> <span class="o"><<</span> <span class="s">"broker error: "</span> <span class="o"><<</span> <span class="n">e</span><span class="p">.</span><span class="n">name</span><span class="p">()</span> <span class="o"><<</span> <span class="s">":"</span> <span class="o"><<</span> <span class="n">c</span><span class="p">.</span><span class="n">what</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> + <span class="kt">void</span> <span class="n">on_unhandled_error</span><span class="p">(</span><span class="k">const</span> <span class="n">proton</span><span class="o">::</span><span class="n">condition</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">std</span><span class="o">::</span><span class="n">cerr</span> <span class="o"><<</span> <span class="s">"broker error: "</span> <span class="o"><<</span> <span class="n">c</span><span class="p">.</span><span class="n">what</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="p">}</span> <span class="kt">void</span> <span class="n">remove_stale_consumers</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">connection</span> <span class="n">connection</span><span class="p">)</span> <span class="p">{</span> @@ -315,17 +309,15 @@ https://github.com/apache/qpid-proton/bl <span class="p">}</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_sendable</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">proton</span><span class="o">::</span><span class="n">link</span> <span class="n">lnk</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">link</span><span class="p">();</span> - <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">address</span> <span class="o">=</span> <span class="n">lnk</span><span class="p">.</span><span class="n">local_source</span><span class="p">().</span><span class="n">address</span><span class="p">();</span> - <span class="n">proton</span><span class="o">::</span><span class="n">sender</span> <span class="n">s</span> <span class="o">=</span> <span class="n">lnk</span><span class="p">.</span><span class="n">sender</span><span class="p">();</span> + <span class="kt">void</span> <span class="n">on_sendable</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">sender</span> <span class="o">&</span><span class="n">s</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">address</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">local_source</span><span class="p">().</span><span class="n">address</span><span class="p">();</span> <span class="n">queues_</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">address</span><span class="p">).</span><span class="n">dispatch</span><span class="p">(</span><span class="o">&</span><span class="n">s</span><span class="p">);</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_message</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">address</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">link</span><span class="p">().</span><span class="n">local_target</span><span class="p">().</span><span class="n">address</span><span class="p">();</span> - <span class="n">queues_</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">address</span><span class="p">).</span><span class="n">publish</span><span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">message</span><span class="p">(),</span> <span class="n">e</span><span class="p">.</span><span class="n">link</span><span class="p">().</span><span class="n">receiver</span><span class="p">());</span> + <span class="kt">void</span> <span class="n">on_message</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">delivery</span> <span class="o">&</span><span class="n">d</span><span class="p">,</span> <span class="n">proton</span><span class="o">::</span><span class="n">message</span> <span class="o">&</span><span class="n">m</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">address</span> <span class="o">=</span> <span class="n">d</span><span class="p">.</span><span class="n">link</span><span class="p">().</span><span class="n">local_target</span><span class="p">().</span><span class="n">address</span><span class="p">();</span> + <span class="n">queues_</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">address</span><span class="p">).</span><span class="n">publish</span><span class="p">(</span><span class="n">m</span><span class="p">,</span> <span class="n">d</span><span class="p">.</span><span class="n">link</span><span class="p">().</span><span class="n">receiver</span><span class="p">());</span> <span class="p">}</span> <span class="k">protected</span><span class="o">:</span>
Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp Thu Apr 14 18:29:35 2016 @@ -21,13 +21,14 @@ #include "options.hpp" #include "proton/container.hpp" -#include "proton/event.hpp" #include "proton/handler.hpp" #include "proton/connection.hpp" #include <iostream> #include <vector> +#include "fake_cpp11.hpp" + class client : public proton::handler { private: proton::url url; @@ -38,8 +39,8 @@ class client : public proton::handler { public: client(const proton::url &u, const std::vector<std::string>& r) : url(u), requests(r) {} - void on_start(proton::event &e) { - sender = e.container().open_sender(url); + void on_container_start(proton::container &c) override { + sender = c.open_sender(url); // Create a receiver with a dynamically chosen unique address. receiver = sender.connection().open_receiver("", proton::link_options().dynamic_address(true)); } @@ -52,24 +53,20 @@ class client : public proton::handler { sender.send(req); } - void on_link_open(proton::event &e) { - if (e.link() == receiver) { - send_request(); - } + void on_receiver_open(proton::receiver &) override { + send_request(); } - void on_message(proton::event &e) { + void on_message(proton::delivery &d, proton::message &response) override { if (requests.empty()) return; // Spurious extra message! - proton::message& response = e.message(); - std::cout << requests.front() << " => " << response.body() << std::endl; requests.erase(requests.begin()); if (!requests.empty()) { send_request(); } else { - e.connection().close(); + d.connection().close(); } } }; Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp.html?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp.html (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/client.cpp.html Thu Apr 14 18:29:35 2016 @@ -118,13 +118,14 @@ https://github.com/apache/qpid-proton/bl <h1>client.cpp</h1> <div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf">"options.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/container.hpp"</span><span class="cp"></span> -<span class="cp">#include</span> <span class="cpf">"proton/event.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/handler.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/connection.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf"><iostream></span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf"><vector></span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"fake_cpp11.hpp"</span><span class="cp"></span> + <span class="k">class</span> <span class="nc">client</span> <span class="o">:</span> <span class="k">public</span> <span class="n">proton</span><span class="o">::</span><span class="n">handler</span> <span class="p">{</span> <span class="k">private</span><span class="o">:</span> <span class="n">proton</span><span class="o">::</span><span class="n">url</span> <span class="n">url</span><span class="p">;</span> @@ -135,8 +136,8 @@ https://github.com/apache/qpid-proton/bl <span class="k">public</span><span class="o">:</span> <span class="n">client</span><span class="p">(</span><span class="k">const</span> <span class="n">proton</span><span class="o">::</span><span class="n">url</span> <span class="o">&</span><span class="n">u</span><span class="p">,</span> <span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">>&</span> <span class="n">r</span><span class="p">)</span> <span class="o">:</span> <span class="n">url</span><span class="p">(</span><span class="n">u</span><span class="p">),</span> <span class="n">requests</span><span class="p">(</span><span class="n">r</span><span class="p">)</span> <span class="p">{}</span> - <span class="kt">void</span> <span class="n">on_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">sender</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">container</span><span class="p">().</span><span class="n">open_sender</span><span class="p">(</span><span class="n">url</span><span class="p">);</span> + <span class="kt">void</span> <span class="n">on_container_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">container</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">sender</span> <span class="o">=</span> <span class="n">c</span><span class="p">.</span><span class="n">open_sender</span><span class="p">(</span><span class="n">url</span><span class="p">);</span> <span class="c1">// Create a receiver with a dynamically chosen unique address.</span> <span class="n">receiver</span> <span class="o">=</span> <span class="n">sender</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">open_receiver</span><span class="p">(</span><span class="s">""</span><span class="p">,</span> <span class="n">proton</span><span class="o">::</span><span class="n">link_options</span><span class="p">().</span><span class="n">dynamic_address</span><span class="p">(</span><span class="nb">true</span><span class="p">));</span> <span class="p">}</span> @@ -149,24 +150,20 @@ https://github.com/apache/qpid-proton/bl <span class="n">sender</span><span class="p">.</span><span class="n">send</span><span class="p">(</span><span class="n">req</span><span class="p">);</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_link_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="k">if</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">link</span><span class="p">()</span> <span class="o">==</span> <span class="n">receiver</span><span class="p">)</span> <span class="p">{</span> - <span class="n">send_request</span><span class="p">();</span> - <span class="p">}</span> + <span class="kt">void</span> <span class="n">on_receiver_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">receiver</span> <span class="o">&</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">send_request</span><span class="p">();</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_message</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> + <span class="kt">void</span> <span class="n">on_message</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">delivery</span> <span class="o">&</span><span class="n">d</span><span class="p">,</span> <span class="n">proton</span><span class="o">::</span><span class="n">message</span> <span class="o">&</span><span class="n">response</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> <span class="k">if</span> <span class="p">(</span><span class="n">requests</span><span class="p">.</span><span class="n">empty</span><span class="p">())</span> <span class="k">return</span><span class="p">;</span> <span class="c1">// Spurious extra message!</span> - <span class="n">proton</span><span class="o">::</span><span class="n">message</span><span class="o">&</span> <span class="n">response</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">message</span><span class="p">();</span> - <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">requests</span><span class="p">.</span><span class="n">front</span><span class="p">()</span> <span class="o"><<</span> <span class="s">" => "</span> <span class="o"><<</span> <span class="n">response</span><span class="p">.</span><span class="n">body</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="n">requests</span><span class="p">.</span><span class="n">erase</span><span class="p">(</span><span class="n">requests</span><span class="p">.</span><span class="n">begin</span><span class="p">());</span> <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">requests</span><span class="p">.</span><span class="n">empty</span><span class="p">())</span> <span class="p">{</span> <span class="n">send_request</span><span class="p">();</span> <span class="p">}</span> <span class="k">else</span> <span class="p">{</span> - <span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> + <span class="n">d</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> <span class="p">}</span> <span class="p">}</span> <span class="p">};</span> Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp Thu Apr 14 18:29:35 2016 @@ -19,9 +19,9 @@ * */ +#include "proton/connection.hpp" #include "proton/container.hpp" #include "proton/handler.hpp" -#include "proton/event.hpp" #include "proton/url.hpp" #include "proton/transport.hpp" @@ -29,12 +29,14 @@ using proton::connection_options; +#include "fake_cpp11.hpp" + class handler_2 : public proton::handler { - void on_connection_open(proton::event &e) { + void on_connection_open(proton::connection &c) override { std::cout << "connection events going to handler_2" << std::endl; - std::cout << "connection max_frame_size: " << e.connection().transport().max_frame_size() << - ", idle timeout: " << e.connection().transport().idle_timeout() << std::endl; - e.connection().close(); + std::cout << "connection max_frame_size: " << c.transport().max_frame_size() << + ", idle timeout: " << c.transport().idle_timeout() << std::endl; + c.close(); } }; @@ -46,15 +48,15 @@ class main_handler : public proton::hand public: main_handler(const proton::url& u) : url(u) {} - void on_start(proton::event &e) { + void on_container_start(proton::container &c) override { // Connection options for this connection. Merged with and overriding the container's // client_connection_options() settings. - e.container().connect(url, connection_options().handler(&conn_handler).max_frame_size(2468)); + c.connect(url, connection_options().handler(&conn_handler).max_frame_size(2468)); } - void on_connection_open(proton::event &e) { + void on_connection_open(proton::connection &c) override { std::cout << "unexpected connection event on main handler" << std::endl; - e.connection().close(); + c.close(); } }; Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp.html?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp.html (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/connection_options.cpp.html Thu Apr 14 18:29:35 2016 @@ -116,9 +116,9 @@ https://github.com/apache/qpid-proton/bl <div id="-middle-content"> <h1>connection_options.cpp</h1> -<div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf">"proton/container.hpp"</span><span class="cp"></span> +<div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf">"proton/connection.hpp"</span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"proton/container.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/handler.hpp"</span><span class="cp"></span> -<span class="cp">#include</span> <span class="cpf">"proton/event.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/url.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/transport.hpp"</span><span class="cp"></span> @@ -126,12 +126,14 @@ https://github.com/apache/qpid-proton/bl <span class="k">using</span> <span class="n">proton</span><span class="o">::</span><span class="n">connection_options</span><span class="p">;</span> +<span class="cp">#include</span> <span class="cpf">"fake_cpp11.hpp"</span><span class="cp"></span> + <span class="k">class</span> <span class="nc">handler_2</span> <span class="o">:</span> <span class="k">public</span> <span class="n">proton</span><span class="o">::</span><span class="n">handler</span> <span class="p">{</span> - <span class="kt">void</span> <span class="n">on_connection_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> + <span class="kt">void</span> <span class="n">on_connection_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">connection</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"connection events going to handler_2"</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> - <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"connection max_frame_size: "</span> <span class="o"><<</span> <span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">transport</span><span class="p">().</span><span class="n">max_frame_size</span><span class="p">()</span> <span class="o"><<</span> - <span class="s">", idle timeout: "</span> <span class="o"><<</span> <span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">transport</span><span class="p">().</span><span class="n">idle_timeout</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> - <span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> + <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"connection max_frame_size: "</span> <span class="o"><<</span> <span class="n">c</span><span class="p">.</span><span class="n">transport</span><span class="p">().</span><span class="n">max_frame_size</span><span class="p">()</span> <span class="o"><<</span> + <span class="s">", idle timeout: "</span> <span class="o"><<</span> <span class="n">c</span><span class="p">.</span><span class="n">transport</span><span class="p">().</span><span class="n">idle_timeout</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> + <span class="n">c</span><span class="p">.</span><span class="n">close</span><span class="p">();</span> <span class="p">}</span> <span class="p">};</span> @@ -143,15 +145,15 @@ https://github.com/apache/qpid-proton/bl <span class="k">public</span><span class="o">:</span> <span class="n">main_handler</span><span class="p">(</span><span class="k">const</span> <span class="n">proton</span><span class="o">::</span><span class="n">url</span><span class="o">&</span> <span class="n">u</span><span class="p">)</span> <span class="o">:</span> <span class="n">url</span><span class="p">(</span><span class="n">u</span><span class="p">)</span> <span class="p">{}</span> - <span class="kt">void</span> <span class="n">on_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> + <span class="kt">void</span> <span class="n">on_container_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">container</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> <span class="c1">// Connection options for this connection. Merged with and overriding the container's</span> <span class="c1">// client_connection_options() settings.</span> - <span class="n">e</span><span class="p">.</span><span class="n">container</span><span class="p">().</span><span class="n">connect</span><span class="p">(</span><span class="n">url</span><span class="p">,</span> <span class="n">connection_options</span><span class="p">().</span><span class="n">handler</span><span class="p">(</span><span class="o">&</span><span class="n">conn_handler</span><span class="p">).</span><span class="n">max_frame_size</span><span class="p">(</span><span class="mi">2468</span><span class="p">));</span> + <span class="n">c</span><span class="p">.</span><span class="n">connect</span><span class="p">(</span><span class="n">url</span><span class="p">,</span> <span class="n">connection_options</span><span class="p">().</span><span class="n">handler</span><span class="p">(</span><span class="o">&</span><span class="n">conn_handler</span><span class="p">).</span><span class="n">max_frame_size</span><span class="p">(</span><span class="mi">2468</span><span class="p">));</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_connection_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> + <span class="kt">void</span> <span class="n">on_connection_open</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">connection</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"unexpected connection event on main handler"</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> - <span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> + <span class="n">c</span><span class="p">.</span><span class="n">close</span><span class="p">();</span> <span class="p">}</span> <span class="p">};</span> Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp Thu Apr 14 18:29:35 2016 @@ -21,9 +21,10 @@ #include "options.hpp" -#include "proton/container.hpp" #include "proton/acceptor.hpp" -#include "proton/event.hpp" +#include "proton/connection.hpp" +#include "proton/container.hpp" +#include "proton/delivery.hpp" #include "proton/handler.hpp" #include "proton/link.hpp" #include "proton/url.hpp" @@ -32,6 +33,8 @@ #include <iostream> #include <map> +#include "fake_cpp11.hpp" + class direct_recv : public proton::handler { private: proton::url url; @@ -42,26 +45,24 @@ class direct_recv : public proton::handl public: direct_recv(const std::string &s, int c) : url(s), expected(c), received(0) {} - void on_start(proton::event &e) { - acceptor = e.container().listen(url); + void on_container_start(proton::container &c) override { + acceptor = c.listen(url); std::cout << "direct_recv listening on " << url << std::endl; } - void on_message(proton::event &e) { - proton::message& msg = e.message(); - - if (msg.id().get<uint64_t>() < received) { + void on_message(proton::delivery &d, proton::message &msg) override { + if (proton::coerce<uint64_t>(msg.id()) < received) { return; // Ignore duplicate } - + if (expected == 0 || received < expected) { std::cout << msg.body() << std::endl; received++; } - + if (received == expected) { - e.receiver().close(); - e.connection().close(); + d.link().close(); + d.connection().close(); if (!!acceptor) acceptor.close(); } Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp.html?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp.html (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_recv.cpp.html Thu Apr 14 18:29:35 2016 @@ -118,9 +118,10 @@ https://github.com/apache/qpid-proton/bl <h1>direct_recv.cpp</h1> <div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf">"options.hpp"</span><span class="cp"></span> -<span class="cp">#include</span> <span class="cpf">"proton/container.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/acceptor.hpp"</span><span class="cp"></span> -<span class="cp">#include</span> <span class="cpf">"proton/event.hpp"</span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"proton/connection.hpp"</span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"proton/container.hpp"</span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"proton/delivery.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/handler.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/link.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/url.hpp"</span><span class="cp"></span> @@ -129,6 +130,8 @@ https://github.com/apache/qpid-proton/bl <span class="cp">#include</span> <span class="cpf"><iostream></span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf"><map></span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"fake_cpp11.hpp"</span><span class="cp"></span> + <span class="k">class</span> <span class="nc">direct_recv</span> <span class="o">:</span> <span class="k">public</span> <span class="n">proton</span><span class="o">::</span><span class="n">handler</span> <span class="p">{</span> <span class="k">private</span><span class="o">:</span> <span class="n">proton</span><span class="o">::</span><span class="n">url</span> <span class="n">url</span><span class="p">;</span> @@ -139,26 +142,24 @@ https://github.com/apache/qpid-proton/bl <span class="k">public</span><span class="o">:</span> <span class="n">direct_recv</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">s</span><span class="p">,</span> <span class="kt">int</span> <span class="n">c</span><span class="p">)</span> <span class="o">:</span> <span class="n">url</span><span class="p">(</span><span class="n">s</span><span class="p">),</span> <span class="n">expected</span><span class="p">(</span><span class="n">c</span><span class="p">),</span> <span class="n">received</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span> <span class="p">{}</span> - <span class="kt">void</span> <span class="n">on_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">acceptor</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">container</span><span class="p">().</span><span class="n">listen</span><span class="p">(</span><span class="n">url</span><span class="p">);</span> + <span class="kt">void</span> <span class="n">on_container_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">container</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">acceptor</span> <span class="o">=</span> <span class="n">c</span><span class="p">.</span><span class="n">listen</span><span class="p">(</span><span class="n">url</span><span class="p">);</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"direct_recv listening on "</span> <span class="o"><<</span> <span class="n">url</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_message</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">proton</span><span class="o">::</span><span class="n">message</span><span class="o">&</span> <span class="n">msg</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">message</span><span class="p">();</span> - - <span class="k">if</span> <span class="p">(</span><span class="n">msg</span><span class="p">.</span><span class="n">id</span><span class="p">().</span><span class="n">get</span><span class="o"><</span><span class="kt">uint64_t</span><span class="o">></span><span class="p">()</span> <span class="o"><</span> <span class="n">received</span><span class="p">)</span> <span class="p">{</span> + <span class="kt">void</span> <span class="n">on_message</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">delivery</span> <span class="o">&</span><span class="n">d</span><span class="p">,</span> <span class="n">proton</span><span class="o">::</span><span class="n">message</span> <span class="o">&</span><span class="n">msg</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="k">if</span> <span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">coerce</span><span class="o"><</span><span class="kt">uint64_t</span><span class="o">></span><span class="p">(</span><span class="n">msg</span><span class="p">.</span><span class="n">id</span><span class="p">())</span> <span class="o"><</span> <span class="n">received</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span><span class="p">;</span> <span class="c1">// Ignore duplicate</span> <span class="p">}</span> - + <span class="k">if</span> <span class="p">(</span><span class="n">expected</span> <span class="o">==</span> <span class="mi">0</span> <span class="o">||</span> <span class="n">received</span> <span class="o"><</span> <span class="n">expected</span><span class="p">)</span> <span class="p">{</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">msg</span><span class="p">.</span><span class="n">body</span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="n">received</span><span class="o">++</span><span class="p">;</span> <span class="p">}</span> - + <span class="k">if</span> <span class="p">(</span><span class="n">received</span> <span class="o">==</span> <span class="n">expected</span><span class="p">)</span> <span class="p">{</span> - <span class="n">e</span><span class="p">.</span><span class="n">receiver</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> - <span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> + <span class="n">d</span><span class="p">.</span><span class="n">link</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> + <span class="n">d</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> <span class="k">if</span> <span class="p">(</span><span class="o">!!</span><span class="n">acceptor</span><span class="p">)</span> <span class="n">acceptor</span><span class="p">.</span><span class="n">close</span><span class="p">();</span> <span class="p">}</span> Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp Thu Apr 14 18:29:35 2016 @@ -24,13 +24,14 @@ #include "proton/acceptor.hpp" #include "proton/connection.hpp" #include "proton/container.hpp" -#include "proton/event.hpp" #include "proton/handler.hpp" #include "proton/value.hpp" #include <iostream> #include <map> +#include "fake_cpp11.hpp" + class simple_send : public proton::handler { private: proton::url url; @@ -42,14 +43,12 @@ class simple_send : public proton::handl public: simple_send(const std::string &s, int c) : url(s), sent(0), confirmed(0), total(c) {} - void on_start(proton::event &e) { - acceptor = e.container().listen(url); + void on_container_start(proton::container &c) override { + acceptor = c.listen(url); std::cout << "direct_send listening on " << url << std::endl; } - void on_sendable(proton::event &e) { - proton::sender sender = e.sender(); - + void on_sendable(proton::sender &sender) override { while (sender.credit() && sent < total) { proton::message msg; std::map<std::string, int> m; @@ -63,18 +62,18 @@ class simple_send : public proton::handl } } - void on_delivery_accept(proton::event &e) { + void on_delivery_accept(proton::delivery &d) override { confirmed++; if (confirmed == total) { std::cout << "all messages confirmed" << std::endl; - e.connection().close(); + d.connection().close(); acceptor.close(); } } - void on_transport_close(proton::event &e) { + void on_transport_close(proton::transport &) override { sent = confirmed; } }; Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp.html?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp.html (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/direct_send.cpp.html Thu Apr 14 18:29:35 2016 @@ -121,13 +121,14 @@ https://github.com/apache/qpid-proton/bl <span class="cp">#include</span> <span class="cpf">"proton/acceptor.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/connection.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/container.hpp"</span><span class="cp"></span> -<span class="cp">#include</span> <span class="cpf">"proton/event.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/handler.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf">"proton/value.hpp"</span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf"><iostream></span><span class="cp"></span> <span class="cp">#include</span> <span class="cpf"><map></span><span class="cp"></span> +<span class="cp">#include</span> <span class="cpf">"fake_cpp11.hpp"</span><span class="cp"></span> + <span class="k">class</span> <span class="nc">simple_send</span> <span class="o">:</span> <span class="k">public</span> <span class="n">proton</span><span class="o">::</span><span class="n">handler</span> <span class="p">{</span> <span class="k">private</span><span class="o">:</span> <span class="n">proton</span><span class="o">::</span><span class="n">url</span> <span class="n">url</span><span class="p">;</span> @@ -139,14 +140,12 @@ https://github.com/apache/qpid-proton/bl <span class="k">public</span><span class="o">:</span> <span class="n">simple_send</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">s</span><span class="p">,</span> <span class="kt">int</span> <span class="n">c</span><span class="p">)</span> <span class="o">:</span> <span class="n">url</span><span class="p">(</span><span class="n">s</span><span class="p">),</span> <span class="n">sent</span><span class="p">(</span><span class="mi">0</span><span class="p">),</span> <span class="n">confirmed</span><span class="p">(</span><span class="mi">0</span><span class="p">),</span> <span class="n">total</span><span class="p">(</span><span class="n">c</span><span class="p">)</span> <span class="p">{}</span> - <span class="kt">void</span> <span class="n">on_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">acceptor</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">container</span><span class="p">().</span><span class="n">listen</span><span class="p">(</span><span class="n">url</span><span class="p">);</span> + <span class="kt">void</span> <span class="n">on_container_start</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">container</span> <span class="o">&</span><span class="n">c</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> + <span class="n">acceptor</span> <span class="o">=</span> <span class="n">c</span><span class="p">.</span><span class="n">listen</span><span class="p">(</span><span class="n">url</span><span class="p">);</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"direct_send listening on "</span> <span class="o"><<</span> <span class="n">url</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_sendable</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> - <span class="n">proton</span><span class="o">::</span><span class="n">sender</span> <span class="n">sender</span> <span class="o">=</span> <span class="n">e</span><span class="p">.</span><span class="n">sender</span><span class="p">();</span> - + <span class="kt">void</span> <span class="n">on_sendable</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">sender</span> <span class="o">&</span><span class="n">sender</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> <span class="k">while</span> <span class="p">(</span><span class="n">sender</span><span class="p">.</span><span class="n">credit</span><span class="p">()</span> <span class="o">&&</span> <span class="n">sent</span> <span class="o"><</span> <span class="n">total</span><span class="p">)</span> <span class="p">{</span> <span class="n">proton</span><span class="o">::</span><span class="n">message</span> <span class="n">msg</span><span class="p">;</span> <span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="kt">int</span><span class="o">></span> <span class="n">m</span><span class="p">;</span> @@ -160,18 +159,18 @@ https://github.com/apache/qpid-proton/bl <span class="p">}</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_delivery_accept</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> + <span class="kt">void</span> <span class="n">on_delivery_accept</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">delivery</span> <span class="o">&</span><span class="n">d</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> <span class="n">confirmed</span><span class="o">++</span><span class="p">;</span> <span class="k">if</span> <span class="p">(</span><span class="n">confirmed</span> <span class="o">==</span> <span class="n">total</span><span class="p">)</span> <span class="p">{</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="s">"all messages confirmed"</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> - <span class="n">e</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> + <span class="n">d</span><span class="p">.</span><span class="n">connection</span><span class="p">().</span><span class="n">close</span><span class="p">();</span> <span class="n">acceptor</span><span class="p">.</span><span class="n">close</span><span class="p">();</span> <span class="p">}</span> <span class="p">}</span> - <span class="kt">void</span> <span class="n">on_transport_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">event</span> <span class="o">&</span><span class="n">e</span><span class="p">)</span> <span class="p">{</span> + <span class="kt">void</span> <span class="n">on_transport_close</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">transport</span> <span class="o">&</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span> <span class="n">sent</span> <span class="o">=</span> <span class="n">confirmed</span><span class="p">;</span> <span class="p">}</span> <span class="p">};</span> Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp Thu Apr 14 18:29:35 2016 @@ -71,13 +71,13 @@ void uniform_containers() { v = a; print(v); std::list<int> a1; - v.get(a1); // Decode as a C++ std::list instead + proton::get(v, a1); std::cout << a1 << std::endl; // You can specify that a container should be encoded as an AMQP list instead. v = proton::codec::encoder::list(a1); print(v); - std::cout << v.get<std::vector<int> >() << std::endl; + std::cout << proton::get<std::vector<int> >(v) << std::endl; // C++ map types (types with key_type, mapped_type) convert to an AMQP map by default. std::map<std::string, int> m; @@ -85,7 +85,7 @@ void uniform_containers() { m["two"] = 2; v = m; print(v); - std::cout << v.get<std::map<std::string, int> >() << std::endl; + std::cout << proton::get<std::map<std::string, int> >(v) << std::endl; // A sequence of pairs encodes as an AMQP MAP, which lets you control the encoded order. std::vector<std::pair<std::string, int> > pairs; @@ -121,16 +121,15 @@ void mixed_containers() { // By default, a sequence of proton::value is treated as an AMQP list. v = l; print(v); - std::vector<proton::value> l2; - v.get(l2); + std::vector<proton::value> l2 = proton::get<std::vector<proton::value> >(v); std::cout << l2 << std::endl; std::map<proton::value, proton::value> m; m[proton::value("five")] = proton::value(5); m[proton::value(4)] = proton::value("four"); v = m; print(v); - std::map<proton::value, proton::value> m2; - v.get(m2); + typedef std::map<proton::value, proton::value> value_map; + value_map m2(proton::get<value_map>(v)); std::cout << m2 << std::endl; } Modified: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp.html?rev=1739159&r1=1739158&r2=1739159&view=diff ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp.html (original) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/encode_decode.cpp.html Thu Apr 14 18:29:35 2016 @@ -170,13 +170,13 @@ https://github.com/apache/qpid-proton/bl <span class="n">v</span> <span class="o">=</span> <span class="n">a</span><span class="p">;</span> <span class="n">print</span><span class="p">(</span><span class="n">v</span><span class="p">);</span> <span class="n">std</span><span class="o">::</span><span class="n">list</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">a1</span><span class="p">;</span> - <span class="n">v</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">a1</span><span class="p">);</span> <span class="c1">// Decode as a C++ std::list instead</span> + <span class="n">proton</span><span class="o">::</span><span class="n">get</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">a1</span><span class="p">);</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">a1</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="c1">// You can specify that a container should be encoded as an AMQP list instead.</span> <span class="n">v</span> <span class="o">=</span> <span class="n">proton</span><span class="o">::</span><span class="n">codec</span><span class="o">::</span><span class="n">encoder</span><span class="o">::</span><span class="n">list</span><span class="p">(</span><span class="n">a1</span><span class="p">);</span> <span class="n">print</span><span class="p">(</span><span class="n">v</span><span class="p">);</span> - <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">v</span><span class="p">.</span><span class="n">get</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="o">></span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> + <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">proton</span><span class="o">::</span><span class="n">get</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="o">></span><span class="p">(</span><span class="n">v</span><span class="p">)</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="c1">// C++ map types (types with key_type, mapped_type) convert to an AMQP map by default.</span> <span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="kt">int</span><span class="o">></span> <span class="n">m</span><span class="p">;</span> @@ -184,7 +184,7 @@ https://github.com/apache/qpid-proton/bl <span class="n">m</span><span class="p">[</span><span class="s">"two"</span><span class="p">]</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span> <span class="n">v</span> <span class="o">=</span> <span class="n">m</span><span class="p">;</span> <span class="n">print</span><span class="p">(</span><span class="n">v</span><span class="p">);</span> - <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">v</span><span class="p">.</span><span class="n">get</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="kt">int</span><span class="o">></span> <span class="o">></span><span class="p">()</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> + <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">proton</span><span class="o">::</span><span class="n">get</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="kt">int</span><span class="o">></span> <span class="o">></span><span class="p">(</span><span class="n">v</span><span class="p">)</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="c1">// A sequence of pairs encodes as an AMQP MAP, which lets you control the encoded order.</span> <span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">pair</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="kt">int</span><span class="o">></span> <span class="o">></span> <span class="n">pairs</span><span class="p">;</span> @@ -220,16 +220,15 @@ https://github.com/apache/qpid-proton/bl <span class="c1">// By default, a sequence of proton::value is treated as an AMQP list.</span> <span class="n">v</span> <span class="o">=</span> <span class="n">l</span><span class="p">;</span> <span class="n">print</span><span class="p">(</span><span class="n">v</span><span class="p">);</span> - <span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="o">></span> <span class="n">l2</span><span class="p">;</span> - <span class="n">v</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">l2</span><span class="p">);</span> + <span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="o">></span> <span class="n">l2</span> <span class="o">=</span> <span class="n">proton</span><span class="o">::</span><span class="n">get</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="o">></span> <span class="o">></span><span class="p">(</span><span class="n">v</span><span class="p">);</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">l2</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="p">,</span> <span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="o">></span> <span class="n">m</span><span class="p">;</span> <span class="n">m</span><span class="p">[</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="p">(</span><span class="s">"five"</span><span class="p">)]</span> <span class="o">=</span> <span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="p">(</span><span class="mi">5</span><span class="p">);</span> <span class="n">m</span><span class="p">[</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="p">(</span><span class="mi">4</span><span class="p">)]</span> <span class="o">=</span> <span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="p">(</span><span class="s">"four"</span><span class="p">);</span> <span class="n">v</span> <span class="o">=</span> <span class="n">m</span><span class="p">;</span> <span class="n">print</span><span class="p">(</span><span class="n">v</span><span class="p">);</span> - <span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="p">,</span> <span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="o">></span> <span class="n">m2</span><span class="p">;</span> - <span class="n">v</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="n">m2</span><span class="p">);</span> + <span class="k">typedef</span> <span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="p">,</span> <span class="n">proton</span><span class="o">::</span><span class="n">value</span><span class="o">></span> <span class="n">value_map</span><span class="p">;</span> + <span class="n">value_map</span> <span class="nf">m2</span><span class="p">(</span><span class="n">proton</span><span class="o">::</span><span class="n">get</span><span class="o"><</span><span class="n">value_map</span><span class="o">></span><span class="p">(</span><span class="n">v</span><span class="p">));</span> <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">m2</span> <span class="o"><<</span> <span class="n">std</span><span class="o">::</span><span class="n">endl</span><span class="p">;</span> <span class="p">}</span> Added: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/fake_cpp11.hpp URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/fake_cpp11.hpp?rev=1739159&view=auto ============================================================================== --- qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/fake_cpp11.hpp (added) +++ qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/fake_cpp11.hpp Thu Apr 14 18:29:35 2016 @@ -0,0 +1,36 @@ +#ifndef FAKE_CPP11_HPP +#define FAKE_CPP11_HPP + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/// These definitions allow us to use some new C++11 features in previous compilers +/// by defining the new keywords to macro replace with nothing. +/// +/// This is a bit of a hack and works with this small controlled source base because +/// we know we don't use any of the new context sensitive keywords anywhere. +/// +/// It is not recommended to copy this - just use C++11/C++14 instead! + +#if __cplusplus < 201103L +#define override +#endif + + +#endif // FAKE_CPP11_HPP Propchange: qpid/site/docs/releases/qpid-proton-master/proton/cpp/examples/fake_cpp11.hpp ------------------------------------------------------------------------------ svn:executable = * --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
