You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2015/12/09 18:42:03 UTC
svn commit: r1718924 [38/39] - in /qpid/site: docs/
docs/components/java-broker/ docs/components/jms/ docs/components/qpid-jca/
docs/releases/ docs/releases/qpid-java-6.0.0/
docs/releases/qpid-java-6.0.0/java-broker/
docs/releases/qpid-java-6.0.0/java-...
Added: qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/ListSender.java.html.in
URL: http://svn.apache.org/viewvc/qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/ListSender.java.html.in?rev=1718924&view=auto
==============================================================================
--- qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/ListSender.java.html.in (added)
+++ qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/ListSender.java.html.in Wed Dec 9 17:41:59 2015
@@ -0,0 +1,70 @@
+
+<h1>ListSender.java</h1>
+<div class="highlight"><pre><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">"amqp://guest:guest@test/?brokerlist='tcp://localhost:5672'"</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">"ADDR:message_queue; {create: always}"</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">"Id"</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">"name"</span><span class="o">,</span> <span class="s">"Widget"</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">"price"</span><span class="o">,</span> <span class="mf">0.99</span><span class="o">);</span>
+
+ <span class="n">List</span><span class="o"><</span><span class="n">String</span><span class="o">></span> <span class="n">colors</span> <span class="o">=</span> <span class="k">new</span> <span class="n">ArrayList</span><span class="o"><</span><span class="n">String</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">"red"</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">"green"</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">"white"</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"><</span><span class="n">String</span><span class="o">,</span><span class="n">Double</span><span class="o">></span> <span class="n">dimensions</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Double</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">"length"</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">"width"</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">"depth"</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"><</span><span class="n">List</span><span class="o"><</span><span class="n">Integer</span><span class="o">>></span> <span class="n">parts</span> <span class="o">=</span> <span class="k">new</span> <span class="n">ArrayList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">Integer</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">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"><</span><span class="n">String</span><span class="o">,</span><span class="n">Object</span><span class="o">></span> <span class="n">specs</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Object</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">"colours"</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">"dimensions"</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">"parts"</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">"Sent: "</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>
Added: qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java
URL: http://svn.apache.org/viewvc/qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java?rev=1718924&view=auto
==============================================================================
--- qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java (added)
+++ qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java Wed Dec 9 17:41:59 2015
@@ -0,0 +1,52 @@
+/*
+ *
+ * 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.
+ *
+ */
+
+package org.apache.qpid.example;
+
+import javax.jms.Connection;
+import javax.jms.Destination;
+import javax.jms.MapMessage;
+import javax.jms.MessageConsumer;
+import javax.jms.Session;
+
+import org.apache.qpid.client.AMQAnyDestination;
+import org.apache.qpid.client.AMQConnection;
+
+
+public class MapReceiver {
+
+ public static void main(String[] args) throws Exception
+ {
+ Connection connection =
+ new AMQConnection("amqp://guest:guest@test/?brokerlist='tcp://localhost:5672'");
+
+ connection.start();
+
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Destination queue = new AMQAnyDestination("ADDR:message_queue; {create: always}");
+ MessageConsumer consumer = session.createConsumer(queue);
+
+ MapMessage m = (MapMessage)consumer.receive();
+ System.out.println(m);
+ connection.close();
+ }
+
+}
\ No newline at end of file
Added: qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java.html.in
URL: http://svn.apache.org/viewvc/qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java.html.in?rev=1718924&view=auto
==============================================================================
--- qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java.html.in (added)
+++ qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapReceiver.java.html.in Wed Dec 9 17:41:59 2015
@@ -0,0 +1,36 @@
+
+<h1>MapReceiver.java</h1>
+<div class="highlight"><pre><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">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.MapMessage</span><span class="o">;</span>
+<span class="kn">import</span> <span class="nn">javax.jms.MessageConsumer</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="kd">public</span> <span class="kd">class</span> <span class="nc">MapReceiver</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">"amqp://guest:guest@test/?brokerlist='tcp://localhost:5672'"</span><span class="o">);</span>
+
+ <span class="n">connection</span><span class="o">.</span><span class="na">start</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">"ADDR:message_queue; {create: always}"</span><span class="o">);</span>
+ <span class="n">MessageConsumer</span> <span class="n">consumer</span> <span class="o">=</span> <span class="n">session</span><span class="o">.</span><span class="na">createConsumer</span><span class="o">(</span><span class="n">queue</span><span class="o">);</span>
+
+ <span class="n">MapMessage</span> <span class="n">m</span> <span class="o">=</span> <span class="o">(</span><span class="n">MapMessage</span><span class="o">)</span><span class="n">consumer</span><span class="o">.</span><span class="na">receive</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="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="MapReceiver.java">Download this file</a></p>
Added: qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java
URL: http://svn.apache.org/viewvc/qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java?rev=1718924&view=auto
==============================================================================
--- qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java (added)
+++ qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java Wed Dec 9 17:41:59 2015
@@ -0,0 +1,83 @@
+/*
+ *
+ * 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.
+ *
+ */
+
+package org.apache.qpid.example;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.jms.Connection;
+import javax.jms.Destination;
+import javax.jms.MapMessage;
+import javax.jms.MessageProducer;
+import javax.jms.Session;
+
+import org.apache.qpid.client.AMQAnyDestination;
+import org.apache.qpid.client.AMQConnection;
+
+
+public class MapSender {
+
+ public static void main(String[] args) throws Exception
+ {
+ Connection connection =
+ new AMQConnection("amqp://guest:guest@test/?brokerlist='tcp://localhost:5672'");
+
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Destination queue = new AMQAnyDestination("ADDR:message_queue; {create: always}");
+ MessageProducer producer = session.createProducer(queue);
+
+ MapMessage m = session.createMapMessage();
+ m.setIntProperty("Id", 987654321);
+ m.setStringProperty("name", "Widget");
+ m.setDoubleProperty("price", 0.99);
+
+ List<String> colors = new ArrayList<String>();
+ colors.add("red");
+ colors.add("green");
+ colors.add("white");
+ m.setObject("colours", colors);
+
+ Map<String,Double> dimensions = new HashMap<String,Double>();
+ dimensions.put("length",10.2);
+ dimensions.put("width",5.1);
+ dimensions.put("depth",2.0);
+ m.setObject("dimensions",dimensions);
+
+ List<List<Integer>> parts = new ArrayList<List<Integer>>();
+ parts.add(Arrays.asList(new Integer[] {1,2,5}));
+ parts.add(Arrays.asList(new Integer[] {8,2,5}));
+ m.setObject("parts", parts);
+
+ Map<String,Object> specs = new HashMap<String,Object>();
+ specs.put("colours", colors);
+ specs.put("dimensions", dimensions);
+ specs.put("parts", parts);
+ m.setObject("specs",specs);
+
+ producer.send(m);
+ connection.close();
+ }
+
+}
\ No newline at end of file
Added: qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java.html.in
URL: http://svn.apache.org/viewvc/qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java.html.in?rev=1718924&view=auto
==============================================================================
--- qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java.html.in (added)
+++ qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/MapSender.java.html.in Wed Dec 9 17:41:59 2015
@@ -0,0 +1,67 @@
+
+<h1>MapSender.java</h1>
+<div class="highlight"><pre><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.MapMessage</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="kd">public</span> <span class="kd">class</span> <span class="nc">MapSender</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">"amqp://guest:guest@test/?brokerlist='tcp://localhost:5672'"</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">"ADDR:message_queue; {create: always}"</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">MapMessage</span> <span class="n">m</span> <span class="o">=</span> <span class="n">session</span><span class="o">.</span><span class="na">createMapMessage</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">"Id"</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">"name"</span><span class="o">,</span> <span class="s">"Widget"</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">"price"</span><span class="o">,</span> <span class="mf">0.99</span><span class="o">);</span>
+
+ <span class="n">List</span><span class="o"><</span><span class="n">String</span><span class="o">></span> <span class="n">colors</span> <span class="o">=</span> <span class="k">new</span> <span class="n">ArrayList</span><span class="o"><</span><span class="n">String</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">"red"</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">"green"</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">"white"</span><span class="o">);</span>
+ <span class="n">m</span><span class="o">.</span><span class="na">setObject</span><span class="o">(</span><span class="s">"colours"</span><span class="o">,</span> <span class="n">colors</span><span class="o">);</span>
+
+ <span class="n">Map</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Double</span><span class="o">></span> <span class="n">dimensions</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Double</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">"length"</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">"width"</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">"depth"</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">setObject</span><span class="o">(</span><span class="s">"dimensions"</span><span class="o">,</span><span class="n">dimensions</span><span class="o">);</span>
+
+ <span class="n">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">Integer</span><span class="o">>></span> <span class="n">parts</span> <span class="o">=</span> <span class="k">new</span> <span class="n">ArrayList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">Integer</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">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">setObject</span><span class="o">(</span><span class="s">"parts"</span><span class="o">,</span> <span class="n">parts</span><span class="o">);</span>
+
+ <span class="n">Map</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Object</span><span class="o">></span> <span class="n">specs</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Object</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">"colours"</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">"dimensions"</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">"parts"</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">setObject</span><span class="o">(</span><span class="s">"specs"</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">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="MapSender.java">Download this file</a></p>
Added: qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java
URL: http://svn.apache.org/viewvc/qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java?rev=1718924&view=auto
==============================================================================
--- qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java (added)
+++ qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java Wed Dec 9 17:41:59 2015
@@ -0,0 +1,351 @@
+/*
+ *
+ * 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.
+ *
+ */
+package org.apache.qpid.example;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.jms.Connection;
+
+import org.apache.qpid.client.AMQConnection;
+
+public class OptionParser
+{
+ static final Option BROKER = new Option("b",
+ "broker",
+ "connect to specified broker",
+ "USER:PASS@HOST:PORT",
+ "guest:guest@localhost:5672",
+ String.class);
+
+ static final Option HELP = new Option("h",
+ "help",
+ "show this help message and exit",
+ null,
+ null,
+ Boolean.class);
+
+ static final Option TIMEOUT = new Option("t",
+ "timeout",
+ "timeout in seconds to wait before exiting",
+ "TIMEOUT",
+ "0",
+ Integer.class);
+
+ static final Option CON_OPTIONS = new Option(null,
+ "con-option",
+ "JMS Connection URL options. Ex sync_ack=true sync_publish=all ",
+ "NAME=VALUE",
+ null,
+ String.class);
+
+
+ static final Option BROKER_OPTIONS = new Option(null,
+ "broker-option",
+ "JMS Broker URL options. Ex ssl=true sasl_mechs=GSSAPI ",
+ "NAME=VALUE",
+ null,
+ String.class);
+
+
+ private Map<String,Object> optMap = new HashMap<String,Object>();
+ private static final List<Option> optDefs = new ArrayList<Option>();
+
+ private static final String CLIENTID = "test";
+
+ private String usage;
+ private String desc;
+ private String address;
+
+ public OptionParser(String[] args, String usage, String desc)
+ {
+ this.usage = usage;
+ this.desc = desc;
+
+ if (args.length == 0 ||
+ (args.length == 1 && (args[0].equals("-h") || args[0].equals("--help"))))
+ {
+ printHelp();
+ }
+
+ address = args[args.length -1];
+ String[] ops = new String[args.length -1];
+ System.arraycopy(args, 0, ops, 0, ops.length);
+ parseOpts(ops);
+
+ System.out.println(optMap);
+
+ if (isHelp())
+ {
+ printHelp();
+ }
+ }
+
+ public boolean isHelp()
+ {
+ return optMap.containsKey("h") || optMap.containsKey("help");
+ }
+
+ public void printHelp()
+ {
+ System.out.println(String.format("%s\n",usage));
+ System.out.println(String.format("%s\n",desc));
+ System.out.println(String.format("%s\n","Options:"));
+
+ for (Option op : optDefs)
+ {
+ String valueLabel = op.getValueLabel() != null ? "=" + op.getValueLabel() : "";
+ String shortForm = op.getShortForm() != null ? "-" + op.getShortForm() + valueLabel : "";
+ String longForm = op.getLongForm() != null ? "--" + op.getLongForm() + valueLabel : "";
+ String desc = op.getDesc();
+ String defaultValue = op.getDefaultValue() != null ?
+ " (default " + op.getDefaultValue() + ")" : "";
+
+ if (!shortForm.equals(""))
+ {
+ longForm = shortForm + ", " + longForm;
+ }
+ System.out.println(
+ String.format("%-54s%s%s", longForm,desc,defaultValue));
+ }
+
+ System.exit(0);
+ }
+
+ private void parseOpts(String[] args)
+ {
+ String prevOpt = null;
+ for(String op: args)
+ {
+ // covers both -h and --help formats
+ if (op.startsWith("-"))
+ {
+ String key = op.substring(op.startsWith("--")? 2:1 ,
+ (op.indexOf('=') > 0) ?
+ op.indexOf('='):
+ op.length());
+
+ boolean match = false;
+ for (Option option: optDefs)
+ {
+
+ if ((op.startsWith("-") && option.getShortForm() != null && option.getShortForm().equals(key)) ||
+ (op.startsWith("--") && option.getLongForm() != null && option.getLongForm().equals(key)) )
+ {
+ match = true;
+ break;
+ }
+ }
+
+ if (!match)
+ {
+ System.out.println(op + " is not a valid option");
+ System.exit(0);
+ }
+
+ if (op.indexOf('=') > 0)
+ {
+ String val = extractValue(op.substring(op.indexOf('=')+1));
+ if (optMap.containsKey(key))
+ {
+ optMap.put(key, optMap.get(key) + "," + val);
+ }
+ else
+ {
+ optMap.put(key, val);
+ }
+ }
+ else
+ {
+ if (! optMap.containsKey(key)){ optMap.put(key, ""); }
+ prevOpt = key;
+ }
+ }
+ else if (prevOpt != null) // this is to catch broker localhost:5672 instead broker=localhost:5672
+ {
+ String val = extractValue(op);
+ if (optMap.containsKey(prevOpt) && !optMap.get(prevOpt).toString().equals(""))
+ {
+ optMap.put(prevOpt, optMap.get(prevOpt) + "," + val);
+ }
+ else
+ {
+ optMap.put(prevOpt, val);
+ }
+ prevOpt = null;
+ }
+ else
+ {
+ System.out.println(optMap);
+ throw new IllegalArgumentException(op + " is not a valid option");
+ }
+ }
+ }
+
+ private String extractValue(String op)
+ {
+ if (op.startsWith("'"))
+ {
+ if (!op.endsWith("'"))
+ {
+ throw new IllegalArgumentException(" The option " + op + " needs to be inside quotes");
+ }
+
+ return op.substring(1,op.length() -1);
+ }
+ else
+ {
+ return op;
+ }
+ }
+
+ protected boolean containsOp(Option op)
+ {
+ return optMap.containsKey(op.getShortForm()) || optMap.containsKey(op.getLongForm());
+ }
+
+ protected String getOp(Option op)
+ {
+ if (optMap.containsKey(op.getShortForm()))
+ {
+ return (String)optMap.get(op.getShortForm());
+ }
+ else if (optMap.containsKey(op.getLongForm()))
+ {
+ return (String)optMap.get(op.getLongForm());
+ }
+ else
+ {
+ return op.getDefaultValue();
+ }
+ }
+
+ protected Connection createConnection() throws Exception
+ {
+ StringBuffer buf;
+ buf = new StringBuffer();
+ buf.append("amqp://");
+ String userPass = "guest:guest";
+ String broker = "localhost:5672";
+ if(containsOp(BROKER))
+ {
+ try
+ {
+ String b = getOp(BROKER);
+ userPass = b.substring(0,b.indexOf('@'));
+ broker = b.substring(b.indexOf('@')+1);
+ }
+ catch (StringIndexOutOfBoundsException e)
+ {
+ Exception ex = new Exception("Error parsing broker string " + getOp(BROKER));
+ ex.initCause(e);
+ throw ex;
+ }
+
+ }
+
+ if(containsOp(BROKER_OPTIONS))
+ {
+ String bOps = getOp(BROKER_OPTIONS);
+ bOps = bOps.replaceAll(",", "'&");
+ bOps = bOps.replaceAll("=", "='");
+ broker = broker + "?" + bOps + "'";
+ }
+ buf.append(userPass);
+ buf.append("@");
+ buf.append(CLIENTID);
+ buf.append("/?brokerlist='tcp://");
+ buf.append(broker).append("'");
+ if(containsOp(CON_OPTIONS))
+ {
+ String bOps = getOp(CON_OPTIONS);
+ bOps = bOps.replaceAll(",", "'&");
+ bOps = bOps.replaceAll("=", "='");
+ buf.append("&").append(bOps).append("'");
+ }
+
+ Connection con = new AMQConnection(buf.toString());
+ return con;
+ }
+
+ public static void addOption(Option opt)
+ {
+ optDefs.add(opt);
+ }
+
+ protected String getAddress()
+ {
+ return address;
+ }
+
+ static class Option
+ {
+ private final String shortForm;
+ private final String longForm;
+ private final String desc;
+ private final String valueLabel;
+ private final String defaultValue;
+ private final Class type;
+
+ public Option(String shortForm, String longForm, String desc,
+ String valueLabel, String defaultValue, Class type)
+ {
+ this.shortForm = shortForm;
+ this.longForm = longForm;
+ this.defaultValue = defaultValue;
+ this.type = type;
+ this.desc = desc;
+ this.valueLabel = valueLabel;
+ }
+
+ public String getShortForm()
+ {
+ return shortForm;
+ }
+
+ public String getLongForm()
+ {
+ return longForm;
+ }
+
+ public String getDefaultValue()
+ {
+ return defaultValue;
+ }
+
+ public Class getType()
+ {
+ return type;
+ }
+
+ public String getDesc()
+ {
+ return desc;
+ }
+
+ public String getValueLabel()
+ {
+ return valueLabel;
+ }
+ }
+}
Added: qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java.html.in
URL: http://svn.apache.org/viewvc/qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java.html.in?rev=1718924&view=auto
==============================================================================
--- qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java.html.in (added)
+++ qpid/site/input/releases/qpid-java-6.0.0/qpid-jms/examples/OptionParser.java.html.in Wed Dec 9 17:41:59 2015
@@ -0,0 +1,336 @@
+
+<h1>OptionParser.java</h1>
+<div class="highlight"><pre><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.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">org.apache.qpid.client.AMQConnection</span><span class="o">;</span>
+
+<span class="kd">public</span> <span class="kd">class</span> <span class="nc">OptionParser</span>
+<span class="o">{</span>
+ <span class="kd">static</span> <span class="kd">final</span> <span class="n">Option</span> <span class="n">BROKER</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Option</span><span class="o">(</span><span class="s">"b"</span><span class="o">,</span>
+ <span class="s">"broker"</span><span class="o">,</span>
+ <span class="s">"connect to specified broker"</span><span class="o">,</span>
+ <span class="s">"USER:PASS@HOST:PORT"</span><span class="o">,</span>
+ <span class="s">"guest:guest@localhost:5672"</span><span class="o">,</span>
+ <span class="n">String</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
+
+ <span class="kd">static</span> <span class="kd">final</span> <span class="n">Option</span> <span class="n">HELP</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Option</span><span class="o">(</span><span class="s">"h"</span><span class="o">,</span>
+ <span class="s">"help"</span><span class="o">,</span>
+ <span class="s">"show this help message and exit"</span><span class="o">,</span>
+ <span class="kc">null</span><span class="o">,</span>
+ <span class="kc">null</span><span class="o">,</span>
+ <span class="n">Boolean</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
+
+ <span class="kd">static</span> <span class="kd">final</span> <span class="n">Option</span> <span class="n">TIMEOUT</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Option</span><span class="o">(</span><span class="s">"t"</span><span class="o">,</span>
+ <span class="s">"timeout"</span><span class="o">,</span>
+ <span class="s">"timeout in seconds to wait before exiting"</span><span class="o">,</span>
+ <span class="s">"TIMEOUT"</span><span class="o">,</span>
+ <span class="s">"0"</span><span class="o">,</span>
+ <span class="n">Integer</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
+
+ <span class="kd">static</span> <span class="kd">final</span> <span class="n">Option</span> <span class="n">CON_OPTIONS</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Option</span><span class="o">(</span><span class="kc">null</span><span class="o">,</span>
+ <span class="s">"con-option"</span><span class="o">,</span>
+ <span class="s">"JMS Connection URL options. Ex sync_ack=true sync_publish=all "</span><span class="o">,</span>
+ <span class="s">"NAME=VALUE"</span><span class="o">,</span>
+ <span class="kc">null</span><span class="o">,</span>
+ <span class="n">String</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
+
+
+ <span class="kd">static</span> <span class="kd">final</span> <span class="n">Option</span> <span class="n">BROKER_OPTIONS</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Option</span><span class="o">(</span><span class="kc">null</span><span class="o">,</span>
+ <span class="s">"broker-option"</span><span class="o">,</span>
+ <span class="s">"JMS Broker URL options. Ex ssl=true sasl_mechs=GSSAPI "</span><span class="o">,</span>
+ <span class="s">"NAME=VALUE"</span><span class="o">,</span>
+ <span class="kc">null</span><span class="o">,</span>
+ <span class="n">String</span><span class="o">.</span><span class="na">class</span><span class="o">);</span>
+
+
+ <span class="kd">private</span> <span class="n">Map</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Object</span><span class="o">></span> <span class="n">optMap</span> <span class="o">=</span> <span class="k">new</span> <span class="n">HashMap</span><span class="o"><</span><span class="n">String</span><span class="o">,</span><span class="n">Object</span><span class="o">>();</span>
+ <span class="kd">private</span> <span class="kd">static</span> <span class="kd">final</span> <span class="n">List</span><span class="o"><</span><span class="n">Option</span><span class="o">></span> <span class="n">optDefs</span> <span class="o">=</span> <span class="k">new</span> <span class="n">ArrayList</span><span class="o"><</span><span class="n">Option</span><span class="o">>();</span>
+
+ <span class="kd">private</span> <span class="kd">static</span> <span class="kd">final</span> <span class="n">String</span> <span class="n">CLIENTID</span> <span class="o">=</span> <span class="s">"test"</span><span class="o">;</span>
+
+ <span class="kd">private</span> <span class="n">String</span> <span class="n">usage</span><span class="o">;</span>
+ <span class="kd">private</span> <span class="n">String</span> <span class="n">desc</span><span class="o">;</span>
+ <span class="kd">private</span> <span class="n">String</span> <span class="n">address</span><span class="o">;</span>
+
+ <span class="kd">public</span> <span class="nf">OptionParser</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="n">String</span> <span class="n">usage</span><span class="o">,</span> <span class="n">String</span> <span class="n">desc</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">usage</span> <span class="o">=</span> <span class="n">usage</span><span class="o">;</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">desc</span> <span class="o">=</span> <span class="n">desc</span><span class="o">;</span>
+
+ <span class="k">if</span> <span class="o">(</span><span class="n">args</span><span class="o">.</span><span class="na">length</span> <span class="o">==</span> <span class="mi">0</span> <span class="o">||</span>
+ <span class="o">(</span><span class="n">args</span><span class="o">.</span><span class="na">length</span> <span class="o">==</span> <span class="mi">1</span> <span class="o">&&</span> <span class="o">(</span><span class="n">args</span><span class="o">[</span><span class="mi">0</span><span class="o">].</span><span class="na">equals</span><span class="o">(</span><span class="s">"-h"</span><span class="o">)</span> <span class="o">||</span> <span class="n">args</span><span class="o">[</span><span class="mi">0</span><span class="o">].</span><span class="na">equals</span><span class="o">(</span><span class="s">"--help"</span><span class="o">))))</span>
+ <span class="o">{</span>
+ <span class="n">printHelp</span><span class="o">();</span>
+ <span class="o">}</span>
+
+ <span class="n">address</span> <span class="o">=</span> <span class="n">args</span><span class="o">[</span><span class="n">args</span><span class="o">.</span><span class="na">length</span> <span class="o">-</span><span class="mi">1</span><span class="o">];</span>
+ <span class="n">String</span><span class="o">[]</span> <span class="n">ops</span> <span class="o">=</span> <span class="k">new</span> <span class="n">String</span><span class="o">[</span><span class="n">args</span><span class="o">.</span><span class="na">length</span> <span class="o">-</span><span class="mi">1</span><span class="o">];</span>
+ <span class="n">System</span><span class="o">.</span><span class="na">arraycopy</span><span class="o">(</span><span class="n">args</span><span class="o">,</span> <span class="mi">0</span><span class="o">,</span> <span class="n">ops</span><span class="o">,</span> <span class="mi">0</span><span class="o">,</span> <span class="n">ops</span><span class="o">.</span><span class="na">length</span><span class="o">);</span>
+ <span class="n">parseOpts</span><span class="o">(</span><span class="n">ops</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="n">optMap</span><span class="o">);</span>
+
+ <span class="k">if</span> <span class="o">(</span><span class="n">isHelp</span><span class="o">())</span>
+ <span class="o">{</span>
+ <span class="n">printHelp</span><span class="o">();</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="kt">boolean</span> <span class="nf">isHelp</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="s">"h"</span><span class="o">)</span> <span class="o">||</span> <span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="s">"help"</span><span class="o">);</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="kt">void</span> <span class="nf">printHelp</span><span class="o">()</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="n">String</span><span class="o">.</span><span class="na">format</span><span class="o">(</span><span class="s">"%s\n"</span><span class="o">,</span><span class="n">usage</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="n">String</span><span class="o">.</span><span class="na">format</span><span class="o">(</span><span class="s">"%s\n"</span><span class="o">,</span><span class="n">desc</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="n">String</span><span class="o">.</span><span class="na">format</span><span class="o">(</span><span class="s">"%s\n"</span><span class="o">,</span><span class="s">"Options:"</span><span class="o">));</span>
+
+ <span class="k">for</span> <span class="o">(</span><span class="n">Option</span> <span class="n">op</span> <span class="o">:</span> <span class="n">optDefs</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="n">String</span> <span class="n">valueLabel</span> <span class="o">=</span> <span class="n">op</span><span class="o">.</span><span class="na">getValueLabel</span><span class="o">()</span> <span class="o">!=</span> <span class="kc">null</span> <span class="o">?</span> <span class="s">"="</span> <span class="o">+</span> <span class="n">op</span><span class="o">.</span><span class="na">getValueLabel</span><span class="o">()</span> <span class="o">:</span> <span class="s">""</span><span class="o">;</span>
+ <span class="n">String</span> <span class="n">shortForm</span> <span class="o">=</span> <span class="n">op</span><span class="o">.</span><span class="na">getShortForm</span><span class="o">()</span> <span class="o">!=</span> <span class="kc">null</span> <span class="o">?</span> <span class="s">"-"</span> <span class="o">+</span> <span class="n">op</span><span class="o">.</span><span class="na">getShortForm</span><span class="o">()</span> <span class="o">+</span> <span class="n">valueLabel</span> <span class="o">:</span> <span class="s">""</span><span class="o">;</span>
+ <span class="n">String</span> <span class="n">longForm</span> <span class="o">=</span> <span class="n">op</span><span class="o">.</span><span class="na">getLongForm</span><span class="o">()</span> <span class="o">!=</span> <span class="kc">null</span> <span class="o">?</span> <span class="s">"--"</span> <span class="o">+</span> <span class="n">op</span><span class="o">.</span><span class="na">getLongForm</span><span class="o">()</span> <span class="o">+</span> <span class="n">valueLabel</span> <span class="o">:</span> <span class="s">""</span><span class="o">;</span>
+ <span class="n">String</span> <span class="n">desc</span> <span class="o">=</span> <span class="n">op</span><span class="o">.</span><span class="na">getDesc</span><span class="o">();</span>
+ <span class="n">String</span> <span class="n">defaultValue</span> <span class="o">=</span> <span class="n">op</span><span class="o">.</span><span class="na">getDefaultValue</span><span class="o">()</span> <span class="o">!=</span> <span class="kc">null</span> <span class="o">?</span>
+ <span class="s">" (default "</span> <span class="o">+</span> <span class="n">op</span><span class="o">.</span><span class="na">getDefaultValue</span><span class="o">()</span> <span class="o">+</span> <span class="s">")"</span> <span class="o">:</span> <span class="s">""</span><span class="o">;</span>
+
+ <span class="k">if</span> <span class="o">(!</span><span class="n">shortForm</span><span class="o">.</span><span class="na">equals</span><span class="o">(</span><span class="s">""</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="n">longForm</span> <span class="o">=</span> <span class="n">shortForm</span> <span class="o">+</span> <span class="s">", "</span> <span class="o">+</span> <span class="n">longForm</span><span class="o">;</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="n">String</span><span class="o">.</span><span class="na">format</span><span class="o">(</span><span class="s">"%-54s%s%s"</span><span class="o">,</span> <span class="n">longForm</span><span class="o">,</span><span class="n">desc</span><span class="o">,</span><span class="n">defaultValue</span><span class="o">));</span>
+ <span class="o">}</span>
+
+ <span class="n">System</span><span class="o">.</span><span class="na">exit</span><span class="o">(</span><span class="mi">0</span><span class="o">);</span>
+ <span class="o">}</span>
+
+ <span class="kd">private</span> <span class="kt">void</span> <span class="nf">parseOpts</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="o">{</span>
+ <span class="n">String</span> <span class="n">prevOpt</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
+ <span class="k">for</span><span class="o">(</span><span class="n">String</span> <span class="n">op</span><span class="o">:</span> <span class="n">args</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="c1">// covers both -h and --help formats</span>
+ <span class="k">if</span> <span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">startsWith</span><span class="o">(</span><span class="s">"-"</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="n">String</span> <span class="n">key</span> <span class="o">=</span> <span class="n">op</span><span class="o">.</span><span class="na">substring</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">startsWith</span><span class="o">(</span><span class="s">"--"</span><span class="o">)?</span> <span class="mi">2</span><span class="o">:</span><span class="mi">1</span> <span class="o">,</span>
+ <span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">indexOf</span><span class="o">(</span><span class="sc">'='</span><span class="o">)</span> <span class="o">></span> <span class="mi">0</span><span class="o">)</span> <span class="o">?</span>
+ <span class="n">op</span><span class="o">.</span><span class="na">indexOf</span><span class="o">(</span><span class="sc">'='</span><span class="o">):</span>
+ <span class="n">op</span><span class="o">.</span><span class="na">length</span><span class="o">());</span>
+
+ <span class="kt">boolean</span> <span class="n">match</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
+ <span class="k">for</span> <span class="o">(</span><span class="n">Option</span> <span class="n">option</span><span class="o">:</span> <span class="n">optDefs</span><span class="o">)</span>
+ <span class="o">{</span>
+
+ <span class="k">if</span> <span class="o">((</span><span class="n">op</span><span class="o">.</span><span class="na">startsWith</span><span class="o">(</span><span class="s">"-"</span><span class="o">)</span> <span class="o">&&</span> <span class="n">option</span><span class="o">.</span><span class="na">getShortForm</span><span class="o">()</span> <span class="o">!=</span> <span class="kc">null</span> <span class="o">&&</span> <span class="n">option</span><span class="o">.</span><span class="na">getShortForm</span><span class="o">().</span><span class="na">equals</span><span class="o">(</span><span class="n">key</span><span class="o">))</span> <span class="o">||</span>
+ <span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">startsWith</span><span class="o">(</span><span class="s">"--"</span><span class="o">)</span> <span class="o">&&</span> <span class="n">option</span><span class="o">.</span><span class="na">getLongForm</span><span class="o">()</span> <span class="o">!=</span> <span class="kc">null</span> <span class="o">&&</span> <span class="n">option</span><span class="o">.</span><span class="na">getLongForm</span><span class="o">().</span><span class="na">equals</span><span class="o">(</span><span class="n">key</span><span class="o">))</span> <span class="o">)</span>
+ <span class="o">{</span>
+ <span class="n">match</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
+ <span class="k">break</span><span class="o">;</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+
+ <span class="k">if</span> <span class="o">(!</span><span class="n">match</span><span class="o">)</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="n">op</span> <span class="o">+</span> <span class="s">" is not a valid option"</span><span class="o">);</span>
+ <span class="n">System</span><span class="o">.</span><span class="na">exit</span><span class="o">(</span><span class="mi">0</span><span class="o">);</span>
+ <span class="o">}</span>
+
+ <span class="k">if</span> <span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">indexOf</span><span class="o">(</span><span class="sc">'='</span><span class="o">)</span> <span class="o">></span> <span class="mi">0</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="n">String</span> <span class="n">val</span> <span class="o">=</span> <span class="n">extractValue</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">substring</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">indexOf</span><span class="o">(</span><span class="sc">'='</span><span class="o">)+</span><span class="mi">1</span><span class="o">));</span>
+ <span class="k">if</span> <span class="o">(</span><span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="n">key</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="n">optMap</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="n">key</span><span class="o">,</span> <span class="n">optMap</span><span class="o">.</span><span class="na">get</span><span class="o">(</span><span class="n">key</span><span class="o">)</span> <span class="o">+</span> <span class="s">","</span> <span class="o">+</span> <span class="n">val</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="k">else</span>
+ <span class="o">{</span>
+ <span class="n">optMap</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="n">key</span><span class="o">,</span> <span class="n">val</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+ <span class="k">else</span>
+ <span class="o">{</span>
+ <span class="k">if</span> <span class="o">(!</span> <span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="n">key</span><span class="o">)){</span> <span class="n">optMap</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="n">key</span><span class="o">,</span> <span class="s">""</span><span class="o">);</span> <span class="o">}</span>
+ <span class="n">prevOpt</span> <span class="o">=</span> <span class="n">key</span><span class="o">;</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+ <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="n">prevOpt</span> <span class="o">!=</span> <span class="kc">null</span><span class="o">)</span> <span class="c1">// this is to catch broker localhost:5672 instead broker=localhost:5672</span>
+ <span class="o">{</span>
+ <span class="n">String</span> <span class="n">val</span> <span class="o">=</span> <span class="n">extractValue</span><span class="o">(</span><span class="n">op</span><span class="o">);</span>
+ <span class="k">if</span> <span class="o">(</span><span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="n">prevOpt</span><span class="o">)</span> <span class="o">&&</span> <span class="o">!</span><span class="n">optMap</span><span class="o">.</span><span class="na">get</span><span class="o">(</span><span class="n">prevOpt</span><span class="o">).</span><span class="na">toString</span><span class="o">().</span><span class="na">equals</span><span class="o">(</span><span class="s">""</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="n">optMap</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="n">prevOpt</span><span class="o">,</span> <span class="n">optMap</span><span class="o">.</span><span class="na">get</span><span class="o">(</span><span class="n">prevOpt</span><span class="o">)</span> <span class="o">+</span> <span class="s">","</span> <span class="o">+</span> <span class="n">val</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="k">else</span>
+ <span class="o">{</span>
+ <span class="n">optMap</span><span class="o">.</span><span class="na">put</span><span class="o">(</span><span class="n">prevOpt</span><span class="o">,</span> <span class="n">val</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="n">prevOpt</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
+ <span class="o">}</span>
+ <span class="k">else</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="n">optMap</span><span class="o">);</span>
+ <span class="k">throw</span> <span class="k">new</span> <span class="n">IllegalArgumentException</span><span class="o">(</span><span class="n">op</span> <span class="o">+</span> <span class="s">" is not a valid option"</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+
+ <span class="kd">private</span> <span class="n">String</span> <span class="nf">extractValue</span><span class="o">(</span><span class="n">String</span> <span class="n">op</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="k">if</span> <span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">startsWith</span><span class="o">(</span><span class="s">"'"</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="k">if</span> <span class="o">(!</span><span class="n">op</span><span class="o">.</span><span class="na">endsWith</span><span class="o">(</span><span class="s">"'"</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="k">throw</span> <span class="k">new</span> <span class="n">IllegalArgumentException</span><span class="o">(</span><span class="s">" The option "</span> <span class="o">+</span> <span class="n">op</span> <span class="o">+</span> <span class="s">" needs to be inside quotes"</span><span class="o">);</span>
+ <span class="o">}</span>
+
+ <span class="k">return</span> <span class="n">op</span><span class="o">.</span><span class="na">substring</span><span class="o">(</span><span class="mi">1</span><span class="o">,</span><span class="n">op</span><span class="o">.</span><span class="na">length</span><span class="o">()</span> <span class="o">-</span><span class="mi">1</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="k">else</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">op</span><span class="o">;</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+
+ <span class="kd">protected</span> <span class="kt">boolean</span> <span class="nf">containsOp</span><span class="o">(</span><span class="n">Option</span> <span class="n">op</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">getShortForm</span><span class="o">())</span> <span class="o">||</span> <span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">getLongForm</span><span class="o">());</span>
+ <span class="o">}</span>
+
+ <span class="kd">protected</span> <span class="n">String</span> <span class="nf">getOp</span><span class="o">(</span><span class="n">Option</span> <span class="n">op</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="k">if</span> <span class="o">(</span><span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">getShortForm</span><span class="o">()))</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="o">(</span><span class="n">String</span><span class="o">)</span><span class="n">optMap</span><span class="o">.</span><span class="na">get</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">getShortForm</span><span class="o">());</span>
+ <span class="o">}</span>
+ <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="n">optMap</span><span class="o">.</span><span class="na">containsKey</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">getLongForm</span><span class="o">()))</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="o">(</span><span class="n">String</span><span class="o">)</span><span class="n">optMap</span><span class="o">.</span><span class="na">get</span><span class="o">(</span><span class="n">op</span><span class="o">.</span><span class="na">getLongForm</span><span class="o">());</span>
+ <span class="o">}</span>
+ <span class="k">else</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">op</span><span class="o">.</span><span class="na">getDefaultValue</span><span class="o">();</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+
+ <span class="kd">protected</span> <span class="n">Connection</span> <span class="nf">createConnection</span><span class="o">()</span> <span class="kd">throws</span> <span class="n">Exception</span>
+ <span class="o">{</span>
+ <span class="n">StringBuffer</span> <span class="n">buf</span><span class="o">;</span>
+ <span class="n">buf</span> <span class="o">=</span> <span class="k">new</span> <span class="n">StringBuffer</span><span class="o">();</span>
+ <span class="n">buf</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="s">"amqp://"</span><span class="o">);</span>
+ <span class="n">String</span> <span class="n">userPass</span> <span class="o">=</span> <span class="s">"guest:guest"</span><span class="o">;</span>
+ <span class="n">String</span> <span class="n">broker</span> <span class="o">=</span> <span class="s">"localhost:5672"</span><span class="o">;</span>
+ <span class="k">if</span><span class="o">(</span><span class="n">containsOp</span><span class="o">(</span><span class="n">BROKER</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="k">try</span>
+ <span class="o">{</span>
+ <span class="n">String</span> <span class="n">b</span> <span class="o">=</span> <span class="n">getOp</span><span class="o">(</span><span class="n">BROKER</span><span class="o">);</span>
+ <span class="n">userPass</span> <span class="o">=</span> <span class="n">b</span><span class="o">.</span><span class="na">substring</span><span class="o">(</span><span class="mi">0</span><span class="o">,</span><span class="n">b</span><span class="o">.</span><span class="na">indexOf</span><span class="o">(</span><span class="sc">'@'</span><span class="o">));</span>
+ <span class="n">broker</span> <span class="o">=</span> <span class="n">b</span><span class="o">.</span><span class="na">substring</span><span class="o">(</span><span class="n">b</span><span class="o">.</span><span class="na">indexOf</span><span class="o">(</span><span class="sc">'@'</span><span class="o">)+</span><span class="mi">1</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="k">catch</span> <span class="o">(</span><span class="n">StringIndexOutOfBoundsException</span> <span class="n">e</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="n">Exception</span> <span class="n">ex</span> <span class="o">=</span> <span class="k">new</span> <span class="n">Exception</span><span class="o">(</span><span class="s">"Error parsing broker string "</span> <span class="o">+</span> <span class="n">getOp</span><span class="o">(</span><span class="n">BROKER</span><span class="o">));</span>
+ <span class="n">ex</span><span class="o">.</span><span class="na">initCause</span><span class="o">(</span><span class="n">e</span><span class="o">);</span>
+ <span class="k">throw</span> <span class="n">ex</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="o">}</span>
+
+ <span class="k">if</span><span class="o">(</span><span class="n">containsOp</span><span class="o">(</span><span class="n">BROKER_OPTIONS</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="n">String</span> <span class="n">bOps</span> <span class="o">=</span> <span class="n">getOp</span><span class="o">(</span><span class="n">BROKER_OPTIONS</span><span class="o">);</span>
+ <span class="n">bOps</span> <span class="o">=</span> <span class="n">bOps</span><span class="o">.</span><span class="na">replaceAll</span><span class="o">(</span><span class="s">","</span><span class="o">,</span> <span class="s">"'&"</span><span class="o">);</span>
+ <span class="n">bOps</span> <span class="o">=</span> <span class="n">bOps</span><span class="o">.</span><span class="na">replaceAll</span><span class="o">(</span><span class="s">"="</span><span class="o">,</span> <span class="s">"='"</span><span class="o">);</span>
+ <span class="n">broker</span> <span class="o">=</span> <span class="n">broker</span> <span class="o">+</span> <span class="s">"?"</span> <span class="o">+</span> <span class="n">bOps</span> <span class="o">+</span> <span class="s">"'"</span><span class="o">;</span>
+ <span class="o">}</span>
+ <span class="n">buf</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="n">userPass</span><span class="o">);</span>
+ <span class="n">buf</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="s">"@"</span><span class="o">);</span>
+ <span class="n">buf</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="n">CLIENTID</span><span class="o">);</span>
+ <span class="n">buf</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="s">"/?brokerlist='tcp://"</span><span class="o">);</span>
+ <span class="n">buf</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="n">broker</span><span class="o">).</span><span class="na">append</span><span class="o">(</span><span class="s">"'"</span><span class="o">);</span>
+ <span class="k">if</span><span class="o">(</span><span class="n">containsOp</span><span class="o">(</span><span class="n">CON_OPTIONS</span><span class="o">))</span>
+ <span class="o">{</span>
+ <span class="n">String</span> <span class="n">bOps</span> <span class="o">=</span> <span class="n">getOp</span><span class="o">(</span><span class="n">CON_OPTIONS</span><span class="o">);</span>
+ <span class="n">bOps</span> <span class="o">=</span> <span class="n">bOps</span><span class="o">.</span><span class="na">replaceAll</span><span class="o">(</span><span class="s">","</span><span class="o">,</span> <span class="s">"'&"</span><span class="o">);</span>
+ <span class="n">bOps</span> <span class="o">=</span> <span class="n">bOps</span><span class="o">.</span><span class="na">replaceAll</span><span class="o">(</span><span class="s">"="</span><span class="o">,</span> <span class="s">"='"</span><span class="o">);</span>
+ <span class="n">buf</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="s">"&"</span><span class="o">).</span><span class="na">append</span><span class="o">(</span><span class="n">bOps</span><span class="o">).</span><span class="na">append</span><span class="o">(</span><span class="s">"'"</span><span class="o">);</span>
+ <span class="o">}</span>
+
+ <span class="n">Connection</span> <span class="n">con</span> <span class="o">=</span> <span class="k">new</span> <span class="n">AMQConnection</span><span class="o">(</span><span class="n">buf</span><span class="o">.</span><span class="na">toString</span><span class="o">());</span>
+ <span class="k">return</span> <span class="n">con</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="kd">static</span> <span class="kt">void</span> <span class="nf">addOption</span><span class="o">(</span><span class="n">Option</span> <span class="n">opt</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="n">optDefs</span><span class="o">.</span><span class="na">add</span><span class="o">(</span><span class="n">opt</span><span class="o">);</span>
+ <span class="o">}</span>
+
+ <span class="kd">protected</span> <span class="n">String</span> <span class="nf">getAddress</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">address</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">static</span> <span class="kd">class</span> <span class="nc">Option</span>
+ <span class="o">{</span>
+ <span class="kd">private</span> <span class="kd">final</span> <span class="n">String</span> <span class="n">shortForm</span><span class="o">;</span>
+ <span class="kd">private</span> <span class="kd">final</span> <span class="n">String</span> <span class="n">longForm</span><span class="o">;</span>
+ <span class="kd">private</span> <span class="kd">final</span> <span class="n">String</span> <span class="n">desc</span><span class="o">;</span>
+ <span class="kd">private</span> <span class="kd">final</span> <span class="n">String</span> <span class="n">valueLabel</span><span class="o">;</span>
+ <span class="kd">private</span> <span class="kd">final</span> <span class="n">String</span> <span class="n">defaultValue</span><span class="o">;</span>
+ <span class="kd">private</span> <span class="kd">final</span> <span class="n">Class</span> <span class="n">type</span><span class="o">;</span>
+
+ <span class="kd">public</span> <span class="nf">Option</span><span class="o">(</span><span class="n">String</span> <span class="n">shortForm</span><span class="o">,</span> <span class="n">String</span> <span class="n">longForm</span><span class="o">,</span> <span class="n">String</span> <span class="n">desc</span><span class="o">,</span>
+ <span class="n">String</span> <span class="n">valueLabel</span><span class="o">,</span> <span class="n">String</span> <span class="n">defaultValue</span><span class="o">,</span> <span class="n">Class</span> <span class="n">type</span><span class="o">)</span>
+ <span class="o">{</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">shortForm</span> <span class="o">=</span> <span class="n">shortForm</span><span class="o">;</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">longForm</span> <span class="o">=</span> <span class="n">longForm</span><span class="o">;</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">defaultValue</span> <span class="o">=</span> <span class="n">defaultValue</span><span class="o">;</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">type</span> <span class="o">=</span> <span class="n">type</span><span class="o">;</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">desc</span> <span class="o">=</span> <span class="n">desc</span><span class="o">;</span>
+ <span class="k">this</span><span class="o">.</span><span class="na">valueLabel</span> <span class="o">=</span> <span class="n">valueLabel</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="n">String</span> <span class="nf">getShortForm</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">shortForm</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="n">String</span> <span class="nf">getLongForm</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">longForm</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="n">String</span> <span class="nf">getDefaultValue</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">defaultValue</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="n">Class</span> <span class="nf">getType</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">type</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="n">String</span> <span class="nf">getDesc</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">desc</span><span class="o">;</span>
+ <span class="o">}</span>
+
+ <span class="kd">public</span> <span class="n">String</span> <span class="nf">getValueLabel</span><span class="o">()</span>
+ <span class="o">{</span>
+ <span class="k">return</span> <span class="n">valueLabel</span><span class="o">;</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+<span class="o">}</span>
+</pre></div>
+
+<p><a href="OptionParser.java">Download this file</a></p>
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org