You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@commons.apache.org by br...@apache.org on 2015/05/09 20:19:17 UTC

svn commit: r950741 [28/40] - in /websites/production/commons/content/proper/commons-cli: ./ apidocs/ apidocs/org/apache/commons/cli/ apidocs/org/apache/commons/cli/class-use/ apidocs/resources/ apidocs/src-html/org/apache/commons/cli/ cobertura/ jacoc...

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/MissingOptionException.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/MissingOptionException.java.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/MissingOptionException.java.html Sat May  9 18:19:15 2015
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>MissingOptionException.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons CLI</a> &gt; <a href="index.source.html" class="el_package">org.apache.commons.cli</a> &gt; <span class="el_source">MissingOptionException.j
 ava</span></div><h1>MissingOptionException.java</h1><pre class="source lang-java linenums">/**
+ * 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 &quot;License&quot;); 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 &quot;AS IS&quot; 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.commons.cli;
+
+import java.util.List;
+import java.util.Iterator;
+
+/**
+ * Thrown when a required option has not been provided.
+ *
+ * @version $Id: MissingOptionException.java 1443102 2013-02-06 18:12:16Z tn $
+ */
+public class MissingOptionException extends ParseException
+{
+    /** This exception {@code serialVersionUID}. */
+    private static final long serialVersionUID = 8161889051578563249L;
+
+    /** The list of missing options and groups */
+    private List missingOptions;
+
+    /**
+     * Construct a new &lt;code&gt;MissingSelectedException&lt;/code&gt;
+     * with the specified detail message.
+     *
+     * @param message the detail message
+     */
+    public MissingOptionException(String message)
+    {
+<span class="fc" id="L44">        super(message);</span>
+<span class="fc" id="L45">    }</span>
+
+    /**
+     * Constructs a new &lt;code&gt;MissingSelectedException&lt;/code&gt; with the
+     * specified list of missing options.
+     *
+     * @param missingOptions the list of missing options and groups
+     * @since 1.2
+     */
+    public MissingOptionException(List missingOptions)
+    {
+<span class="fc" id="L56">        this(createMessage(missingOptions));</span>
+<span class="fc" id="L57">        this.missingOptions = missingOptions;</span>
+<span class="fc" id="L58">    }</span>
+
+    /**
+     * Returns the list of options or option groups missing in the command line parsed.
+     *
+     * @return the missing options, consisting of String instances for simple
+     *         options, and OptionGroup instances for required option groups.
+     * @since 1.2
+     */
+    public List getMissingOptions()
+    {
+<span class="fc" id="L69">        return missingOptions;</span>
+    }
+
+    /**
+     * Build the exception message from the specified list of options.
+     *
+     * @param missingOptions the list of missing options and groups
+     * @since 1.2
+     */
+    private static String createMessage(List&lt;?&gt; missingOptions)
+    {
+<span class="fc" id="L80">        StringBuilder buf = new StringBuilder(&quot;Missing required option&quot;);</span>
+<span class="fc bfc" id="L81" title="All 2 branches covered.">        buf.append(missingOptions.size() == 1 ? &quot;&quot; : &quot;s&quot;);</span>
+<span class="fc" id="L82">        buf.append(&quot;: &quot;);</span>
+
+<span class="fc" id="L84">        Iterator&lt;?&gt; it = missingOptions.iterator();</span>
+<span class="fc bfc" id="L85" title="All 2 branches covered.">        while (it.hasNext())</span>
+        {
+<span class="fc" id="L87">            buf.append(it.next());</span>
+<span class="fc bfc" id="L88" title="All 2 branches covered.">            if (it.hasNext())</span>
+            {
+<span class="fc" id="L90">                buf.append(&quot;, &quot;);</span>
+            }
+        }
+
+<span class="fc" id="L94">        return buf.toString();</span>
+    }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file

Propchange: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/MissingOptionException.java.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option$Builder.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option$Builder.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option$Builder.html Sat May  9 18:19:15 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Option.Builder</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons CLI</a> &gt; <a href="index.html" class="el_package">org.apache.commons.cli</a> &gt; <span class="el_class">Option.Builder</span></div><h1>Option.Builder</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sor
 table" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 97</td><td class="ctr2">91%</td><td class="bar">0 of 6</td><td class="ctr2">100%</td><td class="ctr1">2</td><td class="ctr2">18</td><td class="ctr1">3</td><
 td class="ctr2">32</td><td class="ctr1">2</td><td class="ctr2">15</td></tr></tfoot><tbody><tr><td id="a5"><a href="Option.java.html#L987" class="el_method">hasArgs()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c13">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h0">2</td><td class="ctr2" id="i2">2</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a10"><a href="Option.java.html#L893" class="el_method">required()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="28" height="10" title="4" alt="4"/></td><td class="ctr2" id="c14">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i12">1</td><td class="ctr1" id="j1">
 1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="Option.java.html#L999" class="el_method">build()</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="120" height="10" title="17" alt="17"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../.resources/greenbar.gif" width="120" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g0">3</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a8"><a href="Option.java.html#L804" class="el_method">Option.Builder(String)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="98" height="10" title="14" alt="14"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h3">0</td
 ><td class="ctr2" id="i0">6</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="Option.java.html#L976" class="el_method">hasArg(boolean)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="63" height="10" title="9" alt="9"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d1"><img src="../.resources/greenbar.gif" width="60" height="10" title="2" alt="2"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g1">2</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i3">2</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a0"><a href="Option.java.html#L833" class="el_method">argName(String)</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class
 ="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i4">2</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a2"><a href="Option.java.html#L845" class="el_method">desc(String)</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i5">2</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a6"><a href="Option.java.html#L857" class="el_method">longOpt(String)</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c5">100%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g7">1</td><td class="ctr
 1" id="h7">0</td><td class="ctr2" id="i6">2</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a7"><a href="Option.java.html#L869" class="el_method">numberOfArgs(int)</a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c6">100%</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g8">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i7">2</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a9"><a href="Option.java.html#L882" class="el_method">optionalArg(boolean)</a></td><td class="bar" id="b9"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c7">100%</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f9">0</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h9">0</td><td class
 ="ctr2" id="i8">2</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a11"><a href="Option.java.html#L904" class="el_method">required(boolean)</a></td><td class="bar" id="b10"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c8">100%</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f10">0</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h10">0</td><td class="ctr2" id="i9">2</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a12"><a href="Option.java.html#L916" class="el_method">type(Class)</a></td><td class="bar" id="b11"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c9">100%</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">0</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h11">0</td><td class="ctr2" id="i10">2<
 /td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a14"><a href="Option.java.html#L953" class="el_method">valueSeparator(char)</a></td><td class="bar" id="b12"><img src="../.resources/greenbar.gif" width="35" height="10" title="5" alt="5"/></td><td class="ctr2" id="c10">100%</td><td class="bar" id="d12"/><td class="ctr2" id="e12">n/a</td><td class="ctr1" id="f12">0</td><td class="ctr2" id="g12">1</td><td class="ctr1" id="h12">0</td><td class="ctr2" id="i11">2</td><td class="ctr1" id="j12">0</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a13"><a href="Option.java.html#L927" class="el_method">valueSeparator()</a></td><td class="bar" id="b13"><img src="../.resources/greenbar.gif" width="28" height="10" title="4" alt="4"/></td><td class="ctr2" id="c11">100%</td><td class="bar" id="d13"/><td class="ctr2" id="e13">n/a</td><td class="ctr1" id="f13">0</td><td class="ctr2" id="g13">1</td><td class="ctr1" id="h13">0</td><td class="ctr2" id="i13">1</td><
 td class="ctr1" id="j13">0</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a3"><a href="Option.java.html#L964" class="el_method">hasArg()</a></td><td class="bar" id="b14"><img src="../.resources/greenbar.gif" width="28" height="10" title="4" alt="4"/></td><td class="ctr2" id="c12">100%</td><td class="bar" id="d14"/><td class="ctr2" id="e14">n/a</td><td class="ctr1" id="f14">0</td><td class="ctr2" id="g14">1</td><td class="ctr1" id="h14">0</td><td class="ctr2" id="i14">1</td><td class="ctr1" id="j14">0</td><td class="ctr2" id="k14">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file

Propchange: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option$Builder.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.html Sat May  9 18:19:15 2015
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Option</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons CLI</a> &gt; <a href="index.html" class="el_package">org.apache.commons.cli</a> &gt; <span class="el_class">Option</span></div><h1>Option</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="t
 oggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">61 of 562</td><td class="ctr2">89%</td><td class="bar">16 of 82</td><td class="ctr2">80%</td><td class="ctr1">17</td><td class="ctr2">89</td><td class="ctr1">12</td><td class="ctr2">129
 </td><td class="ctr1">3</td><td class="ctr2">48</td></tr></tfoot><tbody><tr><td id="a26"><a href="Option.java.html#L654" class="el_method">hashCode()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="45" height="10" title="24" alt="24"/></td><td class="ctr2" id="c45">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e18">0%</td><td class="ctr1" id="f1">3</td><td class="ctr2" id="g4">3</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i9">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a7"><a href="Option.java.html#L676" class="el_method">clone()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="26" height="10" title="14" alt="14"/><img src="../.resources/greenbar.gif" width="24" height="10" title="13" alt="13"/></td><td class="ctr2" id="c44">48%</td><td class="bar" id="d19"/><td class="ctr2" id="e19">n/a</td
 ><td class="ctr1" id="f8">0</td><td class="ctr2" id="g19">1</td><td class="ctr1" id="h1">2</td><td class="ctr2" id="i5">5</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a47"><a href="Option.java.html#L581" class="el_method">toString()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="9" height="10" title="5" alt="5"/><img src="../.resources/greenbar.gif" width="110" height="10" title="59" alt="59"/></td><td class="ctr2" id="c42">92%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="20" height="10" title="3" alt="3"/><img src="../.resources/greenbar.gif" width="33" height="10" title="5" alt="5"/></td><td class="ctr2" id="e16">62%</td><td class="ctr1" id="f2">3</td><td class="ctr2" id="g2">5</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i0">14</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a3"><a href="Option.java.html#L433" class="el_method">addValueForProce
 ssing(String)</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="9" height="10" title="5" alt="5"/><img src="../.resources/greenbar.gif" width="15" height="10" title="8" alt="8"/></td><td class="ctr2" id="c43">62%</td><td class="bar" id="d5"><img src="../.resources/redbar.gif" width="6" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="6" height="10" title="1" alt="1"/></td><td class="ctr2" id="e17">50%</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g9">2</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i7">4</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a45"><a href="Option.java.html#L220" class="el_method">setType(Object)</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="9" height="10" title="5" alt="5"/></td><td class="ctr2" id="c46">0%</td><td class="bar" id="d20"/><td class="ctr2" id="e20">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g20
 ">1</td><td class="ctr1" id="h2">2</td><td class="ctr2" id="i10">2</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a2"><a href="Option.java.html#L709" class="el_method">addValue(String)</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="9" height="10" title="5" alt="5"/></td><td class="ctr2" id="c47">0%</td><td class="bar" id="d21"/><td class="ctr2" id="e21">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g21">1</td><td class="ctr1" id="h5">1</td><td class="ctr2" id="i23">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a8"><a href="Option.java.html#L626" class="el_method">equals(Object)</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="3" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="88" height="10" title="47" alt="47"/></td><td class="ctr2" id="c41">96%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width
 ="33" height="10" title="5" alt="5"/><img src="../.resources/greenbar.gif" width="86" height="10" title="13" alt="13"/></td><td class="ctr2" id="e15">72%</td><td class="ctr1" id="f0">5</td><td class="ctr2" id="g0">10</td><td class="ctr1" id="h6">1</td><td class="ctr2" id="i4">10</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a36"><a href="Option.java.html#L454" class="el_method">processValue(String)</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="1" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="78" height="10" title="42" alt="42"/></td><td class="ctr2" id="c40">98%</td><td class="bar" id="d4"><img src="../.resources/redbar.gif" width="6" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="33" height="10" title="5" alt="5"/></td><td class="ctr2" id="e13">83%</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g3">4</td><td class="ctr1" id="h7">1</td><td class="ctr2
 " id="i2">11</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a32"><a href="Option.java.html#L72" class="el_method">Option(Option.Builder)</a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="93" height="10" title="50" alt="50"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d22"/><td class="ctr2" id="e22">n/a</td><td class="ctr1" id="f9">0</td><td class="ctr2" id="g22">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i1">14</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a35"><a href="Option.java.html#L72" class="el_method">Option(String, String, boolean, String)</a></td><td class="bar" id="b9"><img src="../.resources/greenbar.gif" width="56" height="10" title="30" alt="30"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d10"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1
 " id="f10">0</td><td class="ctr2" id="g10">2</td><td class="ctr1" id="h9">0</td><td class="ctr2" id="i3">11</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a0"><a href="Option.java.html#L721" class="el_method">acceptsArg()</a></td><td class="bar" id="b10"><img src="../.resources/greenbar.gif" width="41" height="10" title="22" alt="22"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="53" height="10" title="8" alt="8"/></td><td class="ctr2" id="e14">80%</td><td class="ctr1" id="f3">2</td><td class="ctr2" id="g1">6</td><td class="ctr1" id="h10">0</td><td class="ctr2" id="i24">1</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a37"><a href="Option.java.html#L732" class="el_method">requiresArg()</a></td><td class="bar" id="b11"><img src="../.resources/greenbar.gif" width="30" height
 ="10" title="16" alt="16"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d6"><img src="../.resources/greenbar.gif" width="26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f11">0</td><td class="ctr2" id="g5">3</td><td class="ctr1" id="h11">0</td><td class="ctr2" id="i6">5</td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a1"><a href="Option.java.html#L497" class="el_method">add(String)</a></td><td class="bar" id="b12"><img src="../.resources/greenbar.gif" width="26" height="10" title="14" alt="14"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d11"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">100%</td><td class="ctr1" id="f12">0</td><td class="ctr2" id="g11">2</td><td class="ctr1" id="h12">0</td><td class="ctr2" id="i8">4</td><td class="ctr1" id="j12">0</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a20"><a h
 ref="Option.java.html#L561" class="el_method">getValues()</a></td><td class="bar" id="b13"><img src="../.resources/greenbar.gif" width="26" height="10" title="14" alt="14"/></td><td class="ctr2" id="c5">100%</td><td class="bar" id="d12"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">100%</td><td class="ctr1" id="f13">0</td><td class="ctr2" id="g12">2</td><td class="ctr1" id="h13">0</td><td class="ctr2" id="i25">1</td><td class="ctr1" id="j13">0</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a25"><a href="Option.java.html#L371" class="el_method">hasArgs()</a></td><td class="bar" id="b14"><img src="../.resources/greenbar.gif" width="22" height="10" title="12" alt="12"/></td><td class="ctr2" id="c6">100%</td><td class="bar" id="d7"><img src="../.resources/greenbar.gif" width="26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e4">100%</td><td class="ctr1" id="f14">0</td><td class="ctr2" id="g6">3</td><td cla
 ss="ctr1" id="h14">0</td><td class="ctr2" id="i26">1</td><td class="ctr1" id="j14">0</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a23"><a href="Option.java.html#L290" class="el_method">hasArg()</a></td><td class="bar" id="b15"><img src="../.resources/greenbar.gif" width="20" height="10" title="11" alt="11"/></td><td class="ctr2" id="c7">100%</td><td class="bar" id="d8"><img src="../.resources/greenbar.gif" width="26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e5">100%</td><td class="ctr1" id="f15">0</td><td class="ctr2" id="g7">3</td><td class="ctr1" id="h15">0</td><td class="ctr2" id="i27">1</td><td class="ctr1" id="j15">0</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a24"><a href="Option.java.html#L361" class="el_method">hasArgName()</a></td><td class="bar" id="b16"><img src="../.resources/greenbar.gif" width="20" height="10" title="11" alt="11"/></td><td class="ctr2" id="c8">100%</td><td class="bar" id="d9"><img src="../.resources/greenbar.gif" width=
 "26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e6">100%</td><td class="ctr1" id="f16">0</td><td class="ctr2" id="g8">3</td><td class="ctr1" id="h16">0</td><td class="ctr2" id="i28">1</td><td class="ctr1" id="j16">0</td><td class="ctr2" id="k16">1</td></tr><tr><td id="a17"><a href="Option.java.html#L515" class="el_method">getValue()</a></td><td class="bar" id="b17"><img src="../.resources/greenbar.gif" width="20" height="10" title="11" alt="11"/></td><td class="ctr2" id="c9">100%</td><td class="bar" id="d13"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e7">100%</td><td class="ctr1" id="f17">0</td><td class="ctr2" id="g13">2</td><td class="ctr1" id="h17">0</td><td class="ctr2" id="i29">1</td><td class="ctr1" id="j17">0</td><td class="ctr2" id="k17">1</td></tr><tr><td id="a18"><a href="Option.java.html#L532" class="el_method">getValue(int)</a></td><td class="bar" id="b18"><img src="../.resources/greenbar.gif" w
 idth="20" height="10" title="11" alt="11"/></td><td class="ctr2" id="c10">100%</td><td class="bar" id="d14"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e8">100%</td><td class="ctr1" id="f18">0</td><td class="ctr2" id="g14">2</td><td class="ctr1" id="h18">0</td><td class="ctr2" id="i30">1</td><td class="ctr1" id="j18">0</td><td class="ctr2" id="k18">1</td></tr><tr><td id="a13"><a href="Option.java.html#L180" class="el_method">getKey()</a></td><td class="bar" id="b19"><img src="../.resources/greenbar.gif" width="16" height="10" title="9" alt="9"/></td><td class="ctr2" id="c11">100%</td><td class="bar" id="d15"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e9">100%</td><td class="ctr1" id="f19">0</td><td class="ctr2" id="g15">2</td><td class="ctr1" id="h19">0</td><td class="ctr2" id="i31">1</td><td class="ctr1" id="j19">0</td><td class="ctr2" id="k19">1</td></tr><tr
 ><td id="a19"><a href="Option.java.html#L547" class="el_method">getValue(String)</a></td><td class="bar" id="b20"><img src="../.resources/greenbar.gif" width="16" height="10" title="9" alt="9"/></td><td class="ctr2" id="c12">100%</td><td class="bar" id="d16"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e10">100%</td><td class="ctr1" id="f20">0</td><td class="ctr2" id="g16">2</td><td class="ctr1" id="h20">0</td><td class="ctr2" id="i11">2</td><td class="ctr1" id="j20">0</td><td class="ctr2" id="k20">1</td></tr><tr><td id="a34"><a href="Option.java.html#L113" class="el_method">Option(String, String)</a></td><td class="bar" id="b21"><img src="../.resources/greenbar.gif" width="13" height="10" title="7" alt="7"/></td><td class="ctr2" id="c13">100%</td><td class="bar" id="d23"/><td class="ctr2" id="e23">n/a</td><td class="ctr1" id="f21">0</td><td class="ctr2" id="g23">1</td><td class="ctr1" id="h21">0</td><td class="ctr2" id="i
 12">2</td><td class="ctr1" id="j21">0</td><td class="ctr2" id="k21">1</td></tr><tr><td id="a33"><a href="Option.java.html#L128" class="el_method">Option(String, boolean, String)</a></td><td class="bar" id="b22"><img src="../.resources/greenbar.gif" width="13" height="10" title="7" alt="7"/></td><td class="ctr2" id="c14">100%</td><td class="bar" id="d24"/><td class="ctr2" id="e24">n/a</td><td class="ctr1" id="f22">0</td><td class="ctr2" id="g24">1</td><td class="ctr1" id="h22">0</td><td class="ctr2" id="i13">2</td><td class="ctr1" id="j22">0</td><td class="ctr2" id="k22">1</td></tr><tr><td id="a27"><a href="Option.java.html#L280" class="el_method">hasLongOpt()</a></td><td class="bar" id="b23"><img src="../.resources/greenbar.gif" width="13" height="10" title="7" alt="7"/></td><td class="ctr2" id="c15">100%</td><td class="bar" id="d17"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e11">100%</td><td class="ctr1" id="f23">0</td
 ><td class="ctr2" id="g17">2</td><td class="ctr1" id="h23">0</td><td class="ctr2" id="i32">1</td><td class="ctr1" id="j23">0</td><td class="ctr2" id="k23">1</td></tr><tr><td id="a30"><a href="Option.java.html#L413" class="el_method">hasValueSeparator()</a></td><td class="bar" id="b24"><img src="../.resources/greenbar.gif" width="13" height="10" title="7" alt="7"/></td><td class="ctr2" id="c16">100%</td><td class="bar" id="d18"><img src="../.resources/greenbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e12">100%</td><td class="ctr1" id="f24">0</td><td class="ctr2" id="g18">2</td><td class="ctr1" id="h24">0</td><td class="ctr2" id="i33">1</td><td class="ctr1" id="j24">0</td><td class="ctr2" id="k24">1</td></tr><tr><td id="a5"><a href="Option.java.html#L766" class="el_method">builder(String)</a></td><td class="bar" id="b25"><img src="../.resources/greenbar.gif" width="11" height="10" title="6" alt="6"/></td><td class="ctr2" id="c17">100%</td><td class="bar
 " id="d25"/><td class="ctr2" id="e25">n/a</td><td class="ctr1" id="f25">0</td><td class="ctr2" id="g25">1</td><td class="ctr1" id="h25">0</td><td class="ctr2" id="i34">1</td><td class="ctr1" id="j25">0</td><td class="ctr2" id="k25">1</td></tr><tr><td id="a12"><a href="Option.java.html#L169" class="el_method">getId()</a></td><td class="bar" id="b26"><img src="../.resources/greenbar.gif" width="9" height="10" title="5" alt="5"/></td><td class="ctr2" id="c18">100%</td><td class="bar" id="d26"/><td class="ctr2" id="e26">n/a</td><td class="ctr1" id="f26">0</td><td class="ctr2" id="g26">1</td><td class="ctr1" id="h26">0</td><td class="ctr2" id="i35">1</td><td class="ctr1" id="j26">0</td><td class="ctr2" id="k26">1</td></tr><tr><td id="a44"><a href="Option.java.html#L231" class="el_method">setType(Class)</a></td><td class="bar" id="b27"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c19">100%</td><td class="bar" id="d27"/><td class=
 "ctr2" id="e27">n/a</td><td class="ctr1" id="f27">0</td><td class="ctr2" id="g27">1</td><td class="ctr1" id="h27">0</td><td class="ctr2" id="i14">2</td><td class="ctr1" id="j27">0</td><td class="ctr2" id="k27">1</td></tr><tr><td id="a41"><a href="Option.java.html#L251" class="el_method">setLongOpt(String)</a></td><td class="bar" id="b28"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c20">100%</td><td class="bar" id="d28"/><td class="ctr2" id="e28">n/a</td><td class="ctr1" id="f28">0</td><td class="ctr2" id="g28">1</td><td class="ctr1" id="h28">0</td><td class="ctr2" id="i15">2</td><td class="ctr1" id="j28">0</td><td class="ctr2" id="k28">1</td></tr><tr><td id="a42"><a href="Option.java.html#L262" class="el_method">setOptionalArg(boolean)</a></td><td class="bar" id="b29"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c21">100%</td><td class="bar" id="d29"/><td class="c
 tr2" id="e29">n/a</td><td class="ctr1" id="f29">0</td><td class="ctr2" id="g29">1</td><td class="ctr1" id="h29">0</td><td class="ctr2" id="i16">2</td><td class="ctr1" id="j29">0</td><td class="ctr2" id="k29">1</td></tr><tr><td id="a40"><a href="Option.java.html#L311" class="el_method">setDescription(String)</a></td><td class="bar" id="b30"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c22">100%</td><td class="bar" id="d30"/><td class="ctr2" id="e30">n/a</td><td class="ctr1" id="f30">0</td><td class="ctr2" id="g30">1</td><td class="ctr1" id="h30">0</td><td class="ctr2" id="i17">2</td><td class="ctr1" id="j30">0</td><td class="ctr2" id="k30">1</td></tr><tr><td id="a43"><a href="Option.java.html#L331" class="el_method">setRequired(boolean)</a></td><td class="bar" id="b31"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c23">100%</td><td class="bar" id="d31"/><td class="ct
 r2" id="e31">n/a</td><td class="ctr1" id="f31">0</td><td class="ctr2" id="g31">1</td><td class="ctr1" id="h31">0</td><td class="ctr2" id="i18">2</td><td class="ctr1" id="j31">0</td><td class="ctr2" id="k31">1</td></tr><tr><td id="a38"><a href="Option.java.html#L341" class="el_method">setArgName(String)</a></td><td class="bar" id="b32"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c24">100%</td><td class="bar" id="d32"/><td class="ctr2" id="e32">n/a</td><td class="ctr1" id="f32">0</td><td class="ctr2" id="g32">1</td><td class="ctr1" id="h32">0</td><td class="ctr2" id="i19">2</td><td class="ctr1" id="j32">0</td><td class="ctr2" id="k32">1</td></tr><tr><td id="a39"><a href="Option.java.html#L381" class="el_method">setArgs(int)</a></td><td class="bar" id="b33"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c25">100%</td><td class="bar" id="d33"/><td class="ctr2" id="e33">
 n/a</td><td class="ctr1" id="f33">0</td><td class="ctr2" id="g33">1</td><td class="ctr1" id="h33">0</td><td class="ctr2" id="i20">2</td><td class="ctr1" id="j33">0</td><td class="ctr2" id="k33">1</td></tr><tr><td id="a46"><a href="Option.java.html#L392" class="el_method">setValueSeparator(char)</a></td><td class="bar" id="b34"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c26">100%</td><td class="bar" id="d34"/><td class="ctr2" id="e34">n/a</td><td class="ctr1" id="f34">0</td><td class="ctr2" id="g34">1</td><td class="ctr1" id="h34">0</td><td class="ctr2" id="i21">2</td><td class="ctr1" id="j34">0</td><td class="ctr2" id="k34">1</td></tr><tr><td id="a28"><a href="Option.java.html#L620" class="el_method">hasNoValues()</a></td><td class="bar" id="b35"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c27">100%</td><td class="bar" id="d35"/><td class="ctr2" id="e35">n/a</td
 ><td class="ctr1" id="f35">0</td><td class="ctr2" id="g35">1</td><td class="ctr1" id="h35">0</td><td class="ctr2" id="i36">1</td><td class="ctr1" id="j35">0</td><td class="ctr2" id="k35">1</td></tr><tr><td id="a6"><a href="Option.java.html#L694" class="el_method">clearValues()</a></td><td class="bar" id="b36"><img src="../.resources/greenbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c28">100%</td><td class="bar" id="d36"/><td class="ctr2" id="e36">n/a</td><td class="ctr1" id="f36">0</td><td class="ctr2" id="g36">1</td><td class="ctr1" id="h36">0</td><td class="ctr2" id="i22">2</td><td class="ctr1" id="j36">0</td><td class="ctr2" id="k36">1</td></tr><tr><td id="a15"><a href="Option.java.html#L195" class="el_method">getOpt()</a></td><td class="bar" id="b37"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c29">100%</td><td class="bar" id="d37"/><td class="ctr2" id="e37">n/a</td><td class="ctr1" id="f
 37">0</td><td class="ctr2" id="g37">1</td><td class="ctr1" id="h37">0</td><td class="ctr2" id="i37">1</td><td class="ctr1" id="j37">0</td><td class="ctr2" id="k37">1</td></tr><tr><td id="a16"><a href="Option.java.html#L205" class="el_method">getType()</a></td><td class="bar" id="b38"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c30">100%</td><td class="bar" id="d38"/><td class="ctr2" id="e38">n/a</td><td class="ctr1" id="f38">0</td><td class="ctr2" id="g38">1</td><td class="ctr1" id="h38">0</td><td class="ctr2" id="i38">1</td><td class="ctr1" id="j38">0</td><td class="ctr2" id="k38">1</td></tr><tr><td id="a14"><a href="Option.java.html#L241" class="el_method">getLongOpt()</a></td><td class="bar" id="b39"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c31">100%</td><td class="bar" id="d39"/><td class="ctr2" id="e39">n/a</td><td class="ctr1" id="f39">0</td><td class="c
 tr2" id="g39">1</td><td class="ctr1" id="h39">0</td><td class="ctr2" id="i39">1</td><td class="ctr1" id="j39">0</td><td class="ctr2" id="k39">1</td></tr><tr><td id="a29"><a href="Option.java.html#L270" class="el_method">hasOptionalArg()</a></td><td class="bar" id="b40"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c32">100%</td><td class="bar" id="d40"/><td class="ctr2" id="e40">n/a</td><td class="ctr1" id="f40">0</td><td class="ctr2" id="g40">1</td><td class="ctr1" id="h40">0</td><td class="ctr2" id="i40">1</td><td class="ctr1" id="j40">0</td><td class="ctr2" id="k40">1</td></tr><tr><td id="a11"><a href="Option.java.html#L300" class="el_method">getDescription()</a></td><td class="bar" id="b41"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c33">100%</td><td class="bar" id="d41"/><td class="ctr2" id="e41">n/a</td><td class="ctr1" id="f41">0</td><td class="ctr2" id="g4
 1">1</td><td class="ctr1" id="h41">0</td><td class="ctr2" id="i41">1</td><td class="ctr1" id="j41">0</td><td class="ctr2" id="k41">1</td></tr><tr><td id="a31"><a href="Option.java.html#L321" class="el_method">isRequired()</a></td><td class="bar" id="b42"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c34">100%</td><td class="bar" id="d42"/><td class="ctr2" id="e42">n/a</td><td class="ctr1" id="f42">0</td><td class="ctr2" id="g42">1</td><td class="ctr1" id="h42">0</td><td class="ctr2" id="i42">1</td><td class="ctr1" id="j42">0</td><td class="ctr2" id="k42">1</td></tr><tr><td id="a9"><a href="Option.java.html#L351" class="el_method">getArgName()</a></td><td class="bar" id="b43"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c35">100%</td><td class="bar" id="d43"/><td class="ctr2" id="e43">n/a</td><td class="ctr1" id="f43">0</td><td class="ctr2" id="g43">1</td><td class="
 ctr1" id="h43">0</td><td class="ctr2" id="i43">1</td><td class="ctr1" id="j43">0</td><td class="ctr2" id="k43">1</td></tr><tr><td id="a21"><a href="Option.java.html#L402" class="el_method">getValueSeparator()</a></td><td class="bar" id="b44"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c36">100%</td><td class="bar" id="d44"/><td class="ctr2" id="e44">n/a</td><td class="ctr1" id="f44">0</td><td class="ctr2" id="g44">1</td><td class="ctr1" id="h44">0</td><td class="ctr2" id="i44">1</td><td class="ctr1" id="j44">0</td><td class="ctr2" id="k44">1</td></tr><tr><td id="a10"><a href="Option.java.html#L423" class="el_method">getArgs()</a></td><td class="bar" id="b45"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c37">100%</td><td class="bar" id="d45"/><td class="ctr2" id="e45">n/a</td><td class="ctr1" id="f45">0</td><td class="ctr2" id="g45">1</td><td class="ctr1" id="h45">
 0</td><td class="ctr2" id="i45">1</td><td class="ctr1" id="j45">0</td><td class="ctr2" id="k45">1</td></tr><tr><td id="a22"><a href="Option.java.html#L570" class="el_method">getValuesList()</a></td><td class="bar" id="b46"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c38">100%</td><td class="bar" id="d46"/><td class="ctr2" id="e46">n/a</td><td class="ctr1" id="f46">0</td><td class="ctr2" id="g46">1</td><td class="ctr1" id="h46">0</td><td class="ctr2" id="i46">1</td><td class="ctr1" id="j46">0</td><td class="ctr2" id="k46">1</td></tr><tr><td id="a4"><a href="Option.java.html#L752" class="el_method">builder()</a></td><td class="bar" id="b47"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c39">100%</td><td class="bar" id="d47"/><td class="ctr2" id="e47">n/a</td><td class="ctr1" id="f47">0</td><td class="ctr2" id="g47">1</td><td class="ctr1" id="h47">0</td><td class="ctr
 2" id="i47">1</td><td class="ctr1" id="j47">0</td><td class="ctr2" id="k47">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file

Propchange: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.java.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.java.html Sat May  9 18:19:15 2015
@@ -0,0 +1,1007 @@
+<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Option.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Apache Commons CLI</a> &gt; <a href="index.source.html" class="el_package">org.apache.commons.cli</a> &gt; <span class="el_source">Option.java</span></div><h1>Option.java<
 /h1><pre class="source lang-java linenums">/**
+ * 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 &quot;License&quot;); 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 &quot;AS IS&quot; 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.commons.cli;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Describes a single command-line option.  It maintains
+ * information regarding the short-name of the option, the long-name,
+ * if any exists, a flag indicating if an argument is required for
+ * this option, and a self-documenting description of the option.
+ * &lt;p&gt;
+ * An Option is not created independently, but is created through
+ * an instance of {@link Options}. An Option is required to have
+ * at least a short or a long-name.
+ * &lt;p&gt;
+ * &lt;b&gt;Note:&lt;/b&gt; once an {@link Option} has been added to an instance
+ * of {@link Options}, it's required flag may not be changed anymore.
+ *
+ * @see org.apache.commons.cli.Options
+ * @see org.apache.commons.cli.CommandLine
+ *
+ * @version $Id: Option.java 1677406 2015-05-03 14:27:31Z britter $
+ */
+public class Option implements Cloneable, Serializable
+{
+    /** constant that specifies the number of argument values has not been specified */
+    public static final int UNINITIALIZED = -1;
+
+    /** constant that specifies the number of argument values is infinite */
+    public static final int UNLIMITED_VALUES = -2;
+
+    /** The serial version UID. */
+    private static final long serialVersionUID = 1L;
+
+    /** the name of the option */
+    private final String opt;
+
+    /** the long representation of the option */
+    private String longOpt;
+
+    /** the name of the argument for this option */
+    private String argName;
+
+    /** description of the option */
+    private String description;
+
+    /** specifies whether this option is required to be present */
+    private boolean required;
+
+    /** specifies whether the argument value of this Option is optional */
+    private boolean optionalArg;
+
+    /** the number of argument values this option can have */
+<span class="fc" id="L72">    private int numberOfArgs = UNINITIALIZED;</span>
+
+    /** the type of this Option */
+<span class="fc" id="L75">    private Class&lt;?&gt; type = String.class;</span>
+
+    /** the list of argument values **/
+<span class="fc" id="L78">    private List&lt;String&gt; values = new ArrayList&lt;String&gt;();</span>
+
+    /** the character that is the value separator */
+    private char valuesep;
+
+    /**
+     * Private constructor used by the nested Builder class.
+     * 
+     * @param builder builder used to create this option
+     */
+    private Option(final Builder builder)
+<span class="fc" id="L89">    {</span>
+<span class="fc" id="L90">        this.argName = builder.argName;</span>
+<span class="fc" id="L91">        this.description = builder.description;</span>
+<span class="fc" id="L92">        this.longOpt = builder.longOpt;</span>
+<span class="fc" id="L93">        this.numberOfArgs = builder.numberOfArgs;</span>
+<span class="fc" id="L94">        this.opt = builder.opt;</span>
+<span class="fc" id="L95">        this.optionalArg = builder.optionalArg;</span>
+<span class="fc" id="L96">        this.required = builder.required;</span>
+<span class="fc" id="L97">        this.type = builder.type;</span>
+<span class="fc" id="L98">        this.valuesep = builder.valuesep;</span>
+<span class="fc" id="L99">    }</span>
+    
+    /**
+     * Creates an Option using the specified parameters.
+     * The option does not take an argument.
+     *
+     * @param opt short representation of the option
+     * @param description describes the function of the option
+     *
+     * @throws IllegalArgumentException if there are any non valid
+     * Option characters in &lt;code&gt;opt&lt;/code&gt;.
+     */
+    public Option(String opt, String description) throws IllegalArgumentException
+    {
+<span class="fc" id="L113">        this(opt, null, false, description);</span>
+<span class="fc" id="L114">    }</span>
+
+    /**
+     * Creates an Option using the specified parameters.
+     *
+     * @param opt short representation of the option
+     * @param hasArg specifies whether the Option takes an argument or not
+     * @param description describes the function of the option
+     *
+     * @throws IllegalArgumentException if there are any non valid
+     * Option characters in &lt;code&gt;opt&lt;/code&gt;.
+     */
+    public Option(String opt, boolean hasArg, String description) throws IllegalArgumentException
+    {
+<span class="fc" id="L128">        this(opt, null, hasArg, description);</span>
+<span class="fc" id="L129">    }</span>
+
+    /**
+     * Creates an Option using the specified parameters.
+     *
+     * @param opt short representation of the option
+     * @param longOpt the long representation of the option
+     * @param hasArg specifies whether the Option takes an argument or not
+     * @param description describes the function of the option
+     *
+     * @throws IllegalArgumentException if there are any non valid
+     * Option characters in &lt;code&gt;opt&lt;/code&gt;.
+     */
+    public Option(String opt, String longOpt, boolean hasArg, String description)
+           throws IllegalArgumentException
+<span class="fc" id="L144">    {</span>
+        // ensure that the option is valid
+<span class="fc" id="L146">        OptionValidator.validateOption(opt);</span>
+
+<span class="fc" id="L148">        this.opt = opt;</span>
+<span class="fc" id="L149">        this.longOpt = longOpt;</span>
+
+        // if hasArg is set then the number of arguments is 1
+<span class="fc bfc" id="L152" title="All 2 branches covered.">        if (hasArg)</span>
+        {
+<span class="fc" id="L154">            this.numberOfArgs = 1;</span>
+        }
+
+<span class="fc" id="L157">        this.description = description;</span>
+<span class="fc" id="L158">    }</span>
+
+    /**
+     * Returns the id of this Option.  This is only set when the
+     * Option shortOpt is a single character.  This is used for switch
+     * statements.
+     *
+     * @return the id of this Option
+     */
+    public int getId()
+    {
+<span class="fc" id="L169">        return getKey().charAt(0);</span>
+    }
+
+    /**
+     * Returns the 'unique' Option identifier.
+     * 
+     * @return the 'unique' Option identifier
+     */
+    String getKey()
+    {
+        // if 'opt' is null, then it is a 'long' option
+<span class="fc bfc" id="L180" title="All 2 branches covered.">        return (opt == null) ? longOpt : opt;</span>
+    }
+
+    /** 
+     * Retrieve the name of this Option.
+     *
+     * It is this String which can be used with
+     * {@link CommandLine#hasOption(String opt)} and
+     * {@link CommandLine#getOptionValue(String opt)} to check
+     * for existence and argument.
+     *
+     * @return The name of this option
+     */
+    public String getOpt()
+    {
+<span class="fc" id="L195">        return opt;</span>
+    }
+
+    /**
+     * Retrieve the type of this Option.
+     * 
+     * @return The type of this option
+     */
+    public Object getType()
+    {
+<span class="fc" id="L205">        return type;</span>
+    }
+
+    /**
+     * Sets the type of this Option.
+     * &lt;p&gt;
+     * &lt;b&gt;Note:&lt;/b&gt; this method is kept for binary compatibility and the
+     * input type is supposed to be a {@link Class} object. 
+     *
+     * @param type the type of this Option
+     * @deprecated since 1.3, use {@link #setType(Class)} instead
+     */
+    @Deprecated
+    public void setType(Object type)
+    {
+<span class="nc" id="L220">        setType((Class&lt;?&gt;) type);</span>
+<span class="nc" id="L221">    }</span>
+
+    /**
+     * Sets the type of this Option.
+     *
+     * @param type the type of this Option
+     * @since 1.3
+     */
+    public void setType(Class&lt;?&gt; type)
+    {
+<span class="fc" id="L231">        this.type = type;</span>
+<span class="fc" id="L232">    }</span>
+
+    /** 
+     * Retrieve the long name of this Option.
+     *
+     * @return Long name of this option, or null, if there is no long name
+     */
+    public String getLongOpt()
+    {
+<span class="fc" id="L241">        return longOpt;</span>
+    }
+
+    /**
+     * Sets the long name of this Option.
+     *
+     * @param longOpt the long name of this Option
+     */
+    public void setLongOpt(String longOpt)
+    {
+<span class="fc" id="L251">        this.longOpt = longOpt;</span>
+<span class="fc" id="L252">    }</span>
+
+    /**
+     * Sets whether this Option can have an optional argument.
+     *
+     * @param optionalArg specifies whether the Option can have
+     * an optional argument.
+     */
+    public void setOptionalArg(boolean optionalArg)
+    {
+<span class="fc" id="L262">        this.optionalArg = optionalArg;</span>
+<span class="fc" id="L263">    }</span>
+
+    /**
+     * @return whether this Option can have an optional argument
+     */
+    public boolean hasOptionalArg()
+    {
+<span class="fc" id="L270">        return optionalArg;</span>
+    }
+
+    /** 
+     * Query to see if this Option has a long name
+     *
+     * @return boolean flag indicating existence of a long name
+     */
+    public boolean hasLongOpt()
+    {
+<span class="fc bfc" id="L280" title="All 2 branches covered.">        return longOpt != null;</span>
+    }
+
+    /** 
+     * Query to see if this Option requires an argument
+     *
+     * @return boolean flag indicating if an argument is required
+     */
+    public boolean hasArg()
+    {
+<span class="fc bfc" id="L290" title="All 4 branches covered.">        return numberOfArgs &gt; 0 || numberOfArgs == UNLIMITED_VALUES;</span>
+    }
+
+    /** 
+     * Retrieve the self-documenting description of this Option
+     *
+     * @return The string description of this option
+     */
+    public String getDescription()
+    {
+<span class="fc" id="L300">        return description;</span>
+    }
+
+    /**
+     * Sets the self-documenting description of this Option
+     *
+     * @param description The description of this option
+     * @since 1.1
+     */
+    public void setDescription(String description)
+    {
+<span class="fc" id="L311">        this.description = description;</span>
+<span class="fc" id="L312">    }</span>
+
+    /** 
+     * Query to see if this Option is mandatory
+     *
+     * @return boolean flag indicating whether this Option is mandatory
+     */
+    public boolean isRequired()
+    {
+<span class="fc" id="L321">        return required;</span>
+    }
+
+    /**
+     * Sets whether this Option is mandatory.
+     *
+     * @param required specifies whether this Option is mandatory
+     */
+    public void setRequired(boolean required)
+    {
+<span class="fc" id="L331">        this.required = required;</span>
+<span class="fc" id="L332">    }</span>
+
+    /**
+     * Sets the display name for the argument value.
+     *
+     * @param argName the display name for the argument value.
+     */
+    public void setArgName(String argName)
+    {
+<span class="fc" id="L341">        this.argName = argName;</span>
+<span class="fc" id="L342">    }</span>
+
+    /**
+     * Gets the display name for the argument value.
+     *
+     * @return the display name for the argument value.
+     */
+    public String getArgName()
+    {
+<span class="fc" id="L351">        return argName;</span>
+    }
+
+    /**
+     * Returns whether the display name for the argument value has been set.
+     *
+     * @return if the display name for the argument value has been set.
+     */
+    public boolean hasArgName()
+    {
+<span class="fc bfc" id="L361" title="All 4 branches covered.">        return argName != null &amp;&amp; argName.length() &gt; 0;</span>
+    }
+
+    /** 
+     * Query to see if this Option can take many values.
+     *
+     * @return boolean flag indicating if multiple values are allowed
+     */
+    public boolean hasArgs()
+    {
+<span class="fc bfc" id="L371" title="All 4 branches covered.">        return numberOfArgs &gt; 1 || numberOfArgs == UNLIMITED_VALUES;</span>
+    }
+
+    /** 
+     * Sets the number of argument values this Option can take.
+     *
+     * @param num the number of argument values
+     */
+    public void setArgs(int num)
+    {
+<span class="fc" id="L381">        this.numberOfArgs = num;</span>
+<span class="fc" id="L382">    }</span>
+
+    /**
+     * Sets the value separator.  For example if the argument value
+     * was a Java property, the value separator would be '='.
+     *
+     * @param sep The value separator.
+     */
+    public void setValueSeparator(char sep)
+    {
+<span class="fc" id="L392">        this.valuesep = sep;</span>
+<span class="fc" id="L393">    }</span>
+
+    /**
+     * Returns the value separator character.
+     *
+     * @return the value separator character.
+     */
+    public char getValueSeparator()
+    {
+<span class="fc" id="L402">        return valuesep;</span>
+    }
+
+    /**
+     * Return whether this Option has specified a value separator.
+     * 
+     * @return whether this Option has specified a value separator.
+     * @since 1.1
+     */
+    public boolean hasValueSeparator()
+    {
+<span class="fc bfc" id="L413" title="All 2 branches covered.">        return valuesep &gt; 0;</span>
+    }
+
+    /** 
+     * Returns the number of argument values this Option can take.
+     *
+     * @return num the number of argument values
+     */
+    public int getArgs()
+    {
+<span class="fc" id="L423">        return numberOfArgs;</span>
+    }
+
+    /**
+     * Adds the specified value to this Option.
+     * 
+     * @param value is a/the value of this Option
+     */
+    void addValueForProcessing(String value)
+    {
+<span class="pc bpc" id="L433" title="1 of 2 branches missed.">        if (numberOfArgs == UNINITIALIZED)</span>
+        {
+<span class="nc" id="L435">            throw new RuntimeException(&quot;NO_ARGS_ALLOWED&quot;);</span>
+        }
+<span class="fc" id="L437">        processValue(value);</span>
+<span class="fc" id="L438">    }</span>
+
+    /**
+     * Processes the value.  If this Option has a value separator
+     * the value will have to be parsed into individual tokens.  When
+     * n-1 tokens have been processed and there are more value separators
+     * in the value, parsing is ceased and the remaining characters are
+     * added as a single token.
+     *
+     * @param value The String to be processed.
+     *
+     * @since 1.0.1
+     */
+    private void processValue(String value)
+    {
+        // this Option has a separator character
+<span class="fc bfc" id="L454" title="All 2 branches covered.">        if (hasValueSeparator())</span>
+        {
+            // get the separator character
+<span class="fc" id="L457">            char sep = getValueSeparator();</span>
+
+            // store the index for the value separator
+<span class="fc" id="L460">            int index = value.indexOf(sep);</span>
+
+            // while there are more value separators
+<span class="fc bfc" id="L463" title="All 2 branches covered.">            while (index != -1)</span>
+            {
+                // next value to be added 
+<span class="pc bpc" id="L466" title="1 of 2 branches missed.">                if (values.size() == numberOfArgs - 1)</span>
+                {
+<span class="nc" id="L468">                    break;</span>
+                }
+
+                // store
+<span class="fc" id="L472">                add(value.substring(0, index));</span>
+
+                // parse
+<span class="fc" id="L475">                value = value.substring(index + 1);</span>
+
+                // get new index
+<span class="fc" id="L478">                index = value.indexOf(sep);</span>
+            }
+        }
+
+        // store the actual value or the last value that has been parsed
+<span class="fc" id="L483">        add(value);</span>
+<span class="fc" id="L484">    }</span>
+
+    /**
+     * Add the value to this Option.  If the number of arguments
+     * is greater than zero and there is enough space in the list then
+     * add the value.  Otherwise, throw a runtime exception.
+     *
+     * @param value The value to be added to this Option
+     *
+     * @since 1.0.1
+     */
+    private void add(String value)
+    {
+<span class="fc bfc" id="L497" title="All 2 branches covered.">        if (!acceptsArg())</span>
+        {
+<span class="fc" id="L499">            throw new RuntimeException(&quot;Cannot add value, list full.&quot;);</span>
+        }
+
+        // store value
+<span class="fc" id="L503">        values.add(value);</span>
+<span class="fc" id="L504">    }</span>
+
+    /**
+     * Returns the specified value of this Option or 
+     * &lt;code&gt;null&lt;/code&gt; if there is no value.
+     *
+     * @return the value/first value of this Option or 
+     * &lt;code&gt;null&lt;/code&gt; if there is no value.
+     */
+    public String getValue()
+    {
+<span class="fc bfc" id="L515" title="All 2 branches covered.">        return hasNoValues() ? null : values.get(0);</span>
+    }
+
+    /**
+     * Returns the specified value of this Option or 
+     * &lt;code&gt;null&lt;/code&gt; if there is no value.
+     *
+     * @param index The index of the value to be returned.
+     *
+     * @return the specified value of this Option or 
+     * &lt;code&gt;null&lt;/code&gt; if there is no value.
+     *
+     * @throws IndexOutOfBoundsException if index is less than 1
+     * or greater than the number of the values for this Option.
+     */
+    public String getValue(int index) throws IndexOutOfBoundsException
+    {
+<span class="fc bfc" id="L532" title="All 2 branches covered.">        return hasNoValues() ? null : values.get(index);</span>
+    }
+
+    /**
+     * Returns the value/first value of this Option or the 
+     * &lt;code&gt;defaultValue&lt;/code&gt; if there is no value.
+     *
+     * @param defaultValue The value to be returned if there
+     * is no value.
+     *
+     * @return the value/first value of this Option or the 
+     * &lt;code&gt;defaultValue&lt;/code&gt; if there are no values.
+     */
+    public String getValue(String defaultValue)
+    {
+<span class="fc" id="L547">        String value = getValue();</span>
+
+<span class="fc bfc" id="L549" title="All 2 branches covered.">        return (value != null) ? value : defaultValue;</span>
+    }
+
+    /**
+     * Return the values of this Option as a String array 
+     * or null if there are no values
+     *
+     * @return the values of this Option as a String array 
+     * or null if there are no values
+     */
+    public String[] getValues()
+    {
+<span class="fc bfc" id="L561" title="All 2 branches covered.">        return hasNoValues() ? null : values.toArray(new String[values.size()]);</span>
+    }
+
+    /**
+     * @return the values of this Option as a List
+     * or null if there are no values
+     */
+    public List&lt;String&gt; getValuesList()
+    {
+<span class="fc" id="L570">        return values;</span>
+    }
+
+    /** 
+     * Dump state, suitable for debugging.
+     *
+     * @return Stringified form of this object
+     */
+    @Override
+    public String toString()
+    {
+<span class="fc" id="L581">        StringBuilder buf = new StringBuilder().append(&quot;[ option: &quot;);</span>
+
+<span class="fc" id="L583">        buf.append(opt);</span>
+
+<span class="pc bpc" id="L585" title="1 of 2 branches missed.">        if (longOpt != null)</span>
+        {
+<span class="fc" id="L587">            buf.append(&quot; &quot;).append(longOpt);</span>
+        }
+
+<span class="fc" id="L590">        buf.append(&quot; &quot;);</span>
+
+<span class="pc bpc" id="L592" title="1 of 2 branches missed.">        if (hasArgs())</span>
+        {
+<span class="nc" id="L594">            buf.append(&quot;[ARG...]&quot;);</span>
+        }
+<span class="fc bfc" id="L596" title="All 2 branches covered.">        else if (hasArg())</span>
+        {
+<span class="fc" id="L598">            buf.append(&quot; [ARG]&quot;);</span>
+        }
+
+<span class="fc" id="L601">        buf.append(&quot; :: &quot;).append(description);</span>
+
+<span class="pc bpc" id="L603" title="1 of 2 branches missed.">        if (type != null)</span>
+        {
+<span class="fc" id="L605">            buf.append(&quot; :: &quot;).append(type);</span>
+        }
+
+<span class="fc" id="L608">        buf.append(&quot; ]&quot;);</span>
+
+<span class="fc" id="L610">        return buf.toString();</span>
+    }
+
+    /**
+     * Returns whether this Option has any values.
+     *
+     * @return whether this Option has any values.
+     */
+    private boolean hasNoValues()
+    {
+<span class="fc" id="L620">        return values.isEmpty();</span>
+    }
+
+    @Override
+    public boolean equals(Object o)
+    {
+<span class="fc bfc" id="L626" title="All 2 branches covered.">        if (this == o)</span>
+        {
+<span class="fc" id="L628">            return true;</span>
+        }
+<span class="pc bpc" id="L630" title="2 of 4 branches missed.">        if (o == null || getClass() != o.getClass())</span>
+        {
+<span class="nc" id="L632">            return false;</span>
+        }
+
+<span class="fc" id="L635">        Option option = (Option) o;</span>
+
+
+<span class="pc bpc" id="L638" title="1 of 6 branches missed.">        if (opt != null ? !opt.equals(option.opt) : option.opt != null)</span>
+        {
+<span class="fc" id="L640">            return false;</span>
+        }
+<span class="pc bpc" id="L642" title="2 of 6 branches missed.">        if (longOpt != null ? !longOpt.equals(option.longOpt) : option.longOpt != null)</span>
+        {
+<span class="fc" id="L644">            return false;</span>
+        }
+
+<span class="fc" id="L647">        return true;</span>
+    }
+
+    @Override
+    public int hashCode()
+    {
+        int result;
+<span class="nc bnc" id="L654" title="All 2 branches missed.">        result = opt != null ? opt.hashCode() : 0;</span>
+<span class="nc bnc" id="L655" title="All 2 branches missed.">        result = 31 * result + (longOpt != null ? longOpt.hashCode() : 0);</span>
+<span class="nc" id="L656">        return result;</span>
+    }
+
+    /**
+     * A rather odd clone method - due to incorrect code in 1.0 it is public 
+     * and in 1.1 rather than throwing a CloneNotSupportedException it throws 
+     * a RuntimeException so as to maintain backwards compat at the API level. 
+     *
+     * After calling this method, it is very likely you will want to call 
+     * clearValues(). 
+     *
+     * @return a clone of this Option instance
+     * @throws RuntimeException if a {@link CloneNotSupportedException} has been thrown
+     * by {@code super.clone()}
+     */
+    @Override
+    public Object clone()
+    {
+        try
+        {
+<span class="fc" id="L676">            Option option = (Option) super.clone();</span>
+<span class="fc" id="L677">            option.values = new ArrayList&lt;String&gt;(values);</span>
+<span class="fc" id="L678">            return option;</span>
+        }
+<span class="nc" id="L680">        catch (CloneNotSupportedException cnse)</span>
+        {
+<span class="nc" id="L682">            throw new RuntimeException(&quot;A CloneNotSupportedException was thrown: &quot; + cnse.getMessage());</span>
+        }
+    }
+
+    /**
+     * Clear the Option values. After a parse is complete, these are left with
+     * data in them and they need clearing if another parse is done.
+     *
+     * See: &lt;a href=&quot;https://issues.apache.org/jira/browse/CLI-71&quot;&gt;CLI-71&lt;/a&gt;
+     */
+    void clearValues()
+    {
+<span class="fc" id="L694">        values.clear();</span>
+<span class="fc" id="L695">    }</span>
+
+    /**
+     * This method is not intended to be used. It was a piece of internal 
+     * API that was made public in 1.0. It currently throws an UnsupportedOperationException.
+     *
+     * @param value the value to add
+     * @return always throws an {@link UnsupportedOperationException}
+     * @throws UnsupportedOperationException always
+     * @deprecated
+     */
+    @Deprecated
+    public boolean addValue(String value)
+    {
+<span class="nc" id="L709">        throw new UnsupportedOperationException(&quot;The addValue method is not intended for client use. &quot;</span>
+                + &quot;Subclasses should use the addValueForProcessing method instead. &quot;);
+    }
+
+    /**
+     * Tells if the option can accept more arguments.
+     * 
+     * @return false if the maximum number of arguments is reached
+     * @since 1.3
+     */
+    boolean acceptsArg()
+    {
+<span class="pc bpc" id="L721" title="2 of 10 branches missed.">        return (hasArg() || hasArgs() || hasOptionalArg()) &amp;&amp; (numberOfArgs &lt;= 0 || values.size() &lt; numberOfArgs);</span>
+    }
+
+    /**
+     * Tells if the option requires more arguments to be valid.
+     * 
+     * @return false if the option doesn't require more arguments
+     * @since 1.3
+     */
+    boolean requiresArg()
+    {
+<span class="fc bfc" id="L732" title="All 2 branches covered.">        if (optionalArg)</span>
+        {
+<span class="fc" id="L734">            return false;</span>
+        }
+<span class="fc bfc" id="L736" title="All 2 branches covered.">        if (numberOfArgs == UNLIMITED_VALUES)</span>
+        {
+<span class="fc" id="L738">            return values.isEmpty();</span>
+        }
+<span class="fc" id="L740">        return acceptsArg();</span>
+    }
+    
+    /**
+     * Returns a {@link Builder} to create an {@link Option} using descriptive
+     * methods.  
+     * 
+     * @return a new {@link Builder} instance
+     * @since 1.3
+     */
+    public static Builder builder()
+    {
+<span class="fc" id="L752">        return builder(null);</span>
+    }
+    
+    /**
+     * Returns a {@link Builder} to create an {@link Option} using descriptive
+     * methods.  
+     *
+     * @param opt short representation of the option
+     * @return a new {@link Builder} instance
+     * @throws IllegalArgumentException if there are any non valid Option characters in {@code opt}
+     * @since 1.3
+     */
+    public static Builder builder(final String opt)
+    {
+<span class="fc" id="L766">        return new Builder(opt);</span>
+    }
+    
+    /**
+     * A nested builder class to create &lt;code&gt;Option&lt;/code&gt; instances
+     * using descriptive methods.
+     * &lt;p&gt;
+     * Example usage:
+     * &lt;pre&gt;
+     * Option option = Option.builder(&quot;a&quot;)
+     *     .required(true)
+     *     .longOpt(&quot;arg-name&quot;)
+     *     .build();
+     * &lt;/pre&gt;
+     * 
+     * @since 1.3
+     */
+    public static final class Builder 
+    {
+        /** the name of the option */
+        private final String opt;
+
+        /** description of the option */
+        private String description;
+
+        /** the long representation of the option */
+        private String longOpt;
+
+        /** the name of the argument for this option */
+        private String argName;
+
+        /** specifies whether this option is required to be present */
+        private boolean required;
+
+        /** specifies whether the argument value of this Option is optional */
+        private boolean optionalArg;
+
+        /** the number of argument values this option can have */
+<span class="fc" id="L804">        private int numberOfArgs = UNINITIALIZED;</span>
+
+        /** the type of this Option */
+<span class="fc" id="L807">        private Class&lt;?&gt; type = String.class;</span>
+
+        /** the character that is the value separator */
+        private char valuesep;
+
+        /**
+         * Constructs a new &lt;code&gt;Builder&lt;/code&gt; with the minimum
+         * required parameters for an &lt;code&gt;Option&lt;/code&gt; instance.
+         * 
+         * @param opt short representation of the option
+         * @throws IllegalArgumentException if there are any non valid Option characters in {@code opt}
+         */
+        private Builder(final String opt) throws IllegalArgumentException
+<span class="fc" id="L820">        {</span>
+<span class="fc" id="L821">            OptionValidator.validateOption(opt);</span>
+<span class="fc" id="L822">            this.opt = opt;</span>
+<span class="fc" id="L823">        }</span>
+        
+        /**
+         * Sets the display name for the argument value.
+         *
+         * @param argName the display name for the argument value.
+         * @return this builder, to allow method chaining
+         */
+        public Builder argName(final String argName)
+        {
+<span class="fc" id="L833">            this.argName = argName;</span>
+<span class="fc" id="L834">            return this;</span>
+        }
+
+        /**
+         * Sets the description for this option.
+         *
+         * @param description the description of the option.
+         * @return this builder, to allow method chaining
+         */
+        public Builder desc(final String description)
+        {
+<span class="fc" id="L845">            this.description = description;</span>
+<span class="fc" id="L846">            return this;</span>
+        }
+
+        /**
+         * Sets the long name of the Option.
+         *
+         * @param longOpt the long name of the Option
+         * @return this builder, to allow method chaining
+         */        
+        public Builder longOpt(final String longOpt)
+        {
+<span class="fc" id="L857">            this.longOpt = longOpt;</span>
+<span class="fc" id="L858">            return this;</span>
+        }
+        
+        /** 
+         * Sets the number of argument values the Option can take.
+         *
+         * @param numberOfArgs the number of argument values
+         * @return this builder, to allow method chaining
+         */        
+        public Builder numberOfArgs(final int numberOfArgs)
+        {
+<span class="fc" id="L869">            this.numberOfArgs = numberOfArgs;</span>
+<span class="fc" id="L870">            return this;</span>
+        }
+        
+        /**
+         * Sets whether the Option can have an optional argument.
+         *
+         * @param isOptional specifies whether the Option can have
+         * an optional argument.
+         * @return this builder, to allow method chaining
+         */
+        public Builder optionalArg(final boolean isOptional)
+        {
+<span class="fc" id="L882">            this.optionalArg = isOptional;</span>
+<span class="fc" id="L883">            return this;</span>
+        }
+        
+        /**
+         * Marks this Option as required.
+         *
+         * @return this builder, to allow method chaining
+         */
+        public Builder required()
+        {
+<span class="nc" id="L893">            return required(true);</span>
+        }
+
+        /**
+         * Sets whether the Option is mandatory.
+         *
+         * @param required specifies whether the Option is mandatory
+         * @return this builder, to allow method chaining
+         */
+        public Builder required(final boolean required)
+        {
+<span class="fc" id="L904">            this.required = required;</span>
+<span class="fc" id="L905">            return this;</span>
+        }
+        
+        /**
+         * Sets the type of the Option.
+         *
+         * @param type the type of the Option
+         * @return this builder, to allow method chaining
+         */
+        public Builder type(final Class&lt;?&gt; type)
+        {
+<span class="fc" id="L916">            this.type = type;</span>
+<span class="fc" id="L917">            return this;</span>
+        }
+
+        /**
+         * The Option will use '=' as a means to separate argument value.
+         *
+         * @return this builder, to allow method chaining
+         */
+        public Builder valueSeparator()
+        {
+<span class="fc" id="L927">            return valueSeparator('=');</span>
+        }
+
+        /**
+         * The Option will use &lt;code&gt;sep&lt;/code&gt; as a means to
+         * separate argument values.
+         * &lt;p&gt;
+         * &lt;b&gt;Example:&lt;/b&gt;
+         * &lt;pre&gt;
+         * Option opt = Option.builder(&quot;D&quot;).hasArgs()
+         *                                 .valueSeparator('=')
+         *                                 .build();
+         * Options options = new Options();
+         * options.addOption(opt);
+         * String[] args = {&quot;-Dkey=value&quot;};
+         * CommandLineParser parser = new DefaultParser();
+         * CommandLine line = parser.parse(options, args);
+         * String propertyName = line.getOptionValues(&quot;D&quot;)[0];  // will be &quot;key&quot;
+         * String propertyValue = line.getOptionValues(&quot;D&quot;)[1]; // will be &quot;value&quot;
+         * &lt;/pre&gt;
+         *
+         * @param sep The value separator.
+         * @return this builder, to allow method chaining
+         */
+        public Builder valueSeparator(final char sep)
+        {
+<span class="fc" id="L953">            valuesep = sep;</span>
+<span class="fc" id="L954">            return this;</span>
+        }
+        
+        /**
+         * Indicates that the Option will require an argument.
+         * 
+         * @return this builder, to allow method chaining
+         */
+        public Builder hasArg()
+        {
+<span class="fc" id="L964">            return hasArg(true);</span>
+        }
+
+        /**
+         * Indicates if the Option has an argument or not.
+         * 
+         * @param hasArg specifies whether the Option takes an argument or not
+         * @return this builder, to allow method chaining
+         */
+        public Builder hasArg(final boolean hasArg)
+        {
+            // set to UNINITIALIZED when no arg is specified to be compatible with OptionBuilder
+<span class="fc bfc" id="L976" title="All 2 branches covered.">            numberOfArgs = hasArg ? 1 : Option.UNINITIALIZED;</span>
+<span class="fc" id="L977">            return this;</span>
+        }
+
+        /**
+         * Indicates that the Option can have unlimited argument values.
+         * 
+         * @return this builder, to allow method chaining
+         */
+        public Builder hasArgs()
+        {
+<span class="nc" id="L987">            numberOfArgs = Option.UNLIMITED_VALUES;</span>
+<span class="nc" id="L988">            return this;</span>
+        }
+
+        /**
+         * Constructs an Option with the values declared by this {@link Builder}.
+         * 
+         * @return the new {@link Option}
+         * @throws IllegalArgumentException if neither {@code opt} or {@code longOpt} has been set
+         */
+        public Option build()
+        {
+<span class="fc bfc" id="L999" title="All 4 branches covered.">            if (opt == null &amp;&amp; longOpt == null)</span>
+            {
+<span class="fc" id="L1001">                throw new IllegalArgumentException(&quot;Either opt or longOpt must be specified&quot;);</span>
+            }
+<span class="fc" id="L1003">            return new Option(this);</span>
+        }
+    }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.2.201409121644</span></div></body></html>
\ No newline at end of file

Propchange: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Option.java.html
------------------------------------------------------------------------------
    svn:eol-style = native