blob: 9e4f3be981e90afdfe579c8f534078ec5509ec05 [file] [log] [blame]
<h1>ListSender.java</h1>
<div class="highlight"><pre><span></span><span class="kn">package</span> <span class="nn">org.apache.qpid.example</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.ArrayList</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.Arrays</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.HashMap</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.List</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.Map</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">javax.jms.Connection</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">javax.jms.Destination</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">javax.jms.Message</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">javax.jms.MessageProducer</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">javax.jms.Session</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.qpid.client.AMQAnyDestination</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.qpid.client.AMQConnection</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.qpid.jms.ListMessage</span><span class="o">;</span>
<span class="kd">public</span> <span class="kd">class</span> <span class="nc">ListSender</span> <span class="o">{</span>
<span class="kd">public</span> <span class="kd">static</span> <span class="kt">void</span> <span class="nf">main</span><span class="o">(</span><span class="n">String</span><span class="o">[]</span> <span class="n">args</span><span class="o">)</span> <span class="kd">throws</span> <span class="n">Exception</span>
<span class="o">{</span>
<span class="n">Connection</span> <span class="n">connection</span> <span class="o">=</span>
<span class="k">new</span> <span class="n">AMQConnection</span><span class="o">(</span><span class="s">&quot;amqp://guest:guest@test/?brokerlist=&#39;tcp://localhost:5672&#39;&quot;</span><span class="o">);</span>
<span class="n">Session</span> <span class="n">session</span> <span class="o">=</span> <span class="n">connection</span><span class="o">.</span><span class="na">createSession</span><span class="o">(</span><span class="kc">false</span><span class="o">,</span> <span class="n">Session</span><span class="o">.</span><span class="na">AUTO_ACKNOWLEDGE</span><span class="o">);</span>
<span class="n">Destination</span> <span class="n">queue</span> <span class="o">=</span> <span class="k">new</span> <span class="n">AMQAnyDestination</span><span class="o">(</span><span class="s">&quot;ADDR:message_queue; {create: always}&quot;</span><span class="o">);</span>
<span class="n">MessageProducer</span> <span class="n">producer</span> <span class="o">=</span> <span class="n">session</span><span class="o">.</span><span class="na">createProducer</span><span class="o">(</span><span class="n">queue</span><span class="o">);</span>
<span class="n">ListMessage</span> <span class="n">m</span> <span class="o">=</span> <span class="o">((</span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">qpid</span><span class="o">.</span><span class="na">jms</span><span class="o">.</span><span class="na">Session</span><span class="o">)</span><span class="n">session</span><span class="o">).</span><span class="na">createListMessage</span><span class="o">();</span>
<span class="n">m</span><span class="o">.</span><span class="na">setIntProperty</span><span class="o">(</span><span class="s">&quot;Id&quot;</span><span class="o">,</span> <span class="mi">987654321</span><span class="o">);</span>
<span class="n">m</span><span class="o">.</span><span class="na">setStringProperty</span><span class="o">(</span><span class="s">&quot;name&quot;</span><span class="o">,</span> <span class="s">&quot;Widget&quot;</span><span class="o">);</span>
<span class="n">m</span><span class="o">.</span><span class="na">setDoubleProperty</span><span class="o">(</span><span class="s">&quot;price&quot;</span><span class="o">,</span> <span class="mf">0.99</span><span class="o">);</span>
<span class="n">List</span><span class="o">&lt;</span><span class="n">String</span><span class="o">&gt;</span> <span class="n">colors</span> <span class="o">=</span> <span class="k">new</span> <span class="n">ArrayList</span><span class="o">&lt;</span><span class="n">String</span><span class="o">&gt;();</span>
<span class="n">colors</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="s">&quot;red&quot;</span><span class="o">);</span>
<span class="n">colors</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="s">&quot;green&quot;</span><span class="o">);</span>
<span class="n">colors</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="s">&quot;white&quot;</span><span class="o">);</span>
<span class="n">m</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="n">colors</span><span class="o">);</span>
<span class="n">Map</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Double</span><span class="o">&gt;</span> <span class="n">dimensions</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Double</span><span class="o">&gt;();</span>
<span class="n">dimensions</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="s">&quot;length&quot;</span><span class="o">,</span><span class="mf">10.2</span><span class="o">);</span>
<span class="n">dimensions</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="s">&quot;width&quot;</span><span class="o">,</span><span class="mf">5.1</span><span class="o">);</span>
<span class="n">dimensions</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="s">&quot;depth&quot;</span><span class="o">,</span><span class="mf">2.0</span><span class="o">);</span>
<span class="n">m</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="n">dimensions</span><span class="o">);</span>
<span class="n">List</span><span class="o">&lt;</span><span class="n">List</span><span class="o">&lt;</span><span class="n">Integer</span><span class="o">&gt;&gt;</span> <span class="n">parts</span> <span class="o">=</span> <span class="k">new</span> <span class="n">ArrayList</span><span class="o">&lt;</span><span class="n">List</span><span class="o">&lt;</span><span class="n">Integer</span><span class="o">&gt;&gt;();</span>
<span class="n">parts</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="n">Arrays</span><span class="o">.</span><span class="na">asList</span><span class="o">(</span><span class="k">new</span> <span class="n">Integer</span><span class="o">[]</span> <span class="o">{</span><span class="mi">1</span><span class="o">,</span><span class="mi">2</span><span class="o">,</span><span class="mi">5</span><span class="o">}));</span>
<span class="n">parts</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="n">Arrays</span><span class="o">.</span><span class="na">asList</span><span class="o">(</span><span class="k">new</span> <span class="n">Integer</span><span class="o">[]</span> <span class="o">{</span><span class="mi">8</span><span class="o">,</span><span class="mi">2</span><span class="o">,</span><span class="mi">5</span><span class="o">}));</span>
<span class="n">m</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="n">parts</span><span class="o">);</span>
<span class="n">Map</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Object</span><span class="o">&gt;</span> <span class="n">specs</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o">&lt;</span><span class="n">String</span><span class="o">,</span><span class="n">Object</span><span class="o">&gt;();</span>
<span class="n">specs</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="s">&quot;colours&quot;</span><span class="o">,</span> <span class="n">colors</span><span class="o">);</span>
<span class="n">specs</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="s">&quot;dimensions&quot;</span><span class="o">,</span> <span class="n">dimensions</span><span class="o">);</span>
<span class="n">specs</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="s">&quot;parts&quot;</span><span class="o">,</span> <span class="n">parts</span><span class="o">);</span>
<span class="n">m</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="n">specs</span><span class="o">);</span>
<span class="n">producer</span><span class="o">.</span><span class="na">send</span><span class="o">((</span><span class="n">Message</span><span class="o">)</span><span class="n">m</span><span class="o">);</span>
<span class="n">System</span><span class="o">.</span><span class="na">out</span><span class="o">.</span><span class="na">println</span><span class="o">(</span><span class="s">&quot;Sent: &quot;</span> <span class="o">+</span> <span class="n">m</span><span class="o">);</span>
<span class="n">connection</span><span class="o">.</span><span class="na">close</span><span class="o">();</span>
<span class="o">}</span>
<span class="o">}</span>
</pre></div>
<p><a href="ListSender.java">Download this file</a></p>