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 [30/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...

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

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Parser.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Parser.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Parser.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>Parser</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">Parser</span></div><h1>Parser</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">9 of 398</td><td class="ctr2">98%</td><td class="bar">5 of 76</td><td class="ctr2">93%</td><td class="ctr1">4</td><td class="ctr2">51</td><td class="ctr1">2</td><td class="ctr2">106</td
 ><td class="ctr1">0</td><td class="ctr2">13</td></tr></tfoot><tbody><tr><td id="a10"><a href="Parser.java.html#L256" class="el_method">processProperties(Properties)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="5" height="10" title="6" alt="6"/><img src="../.resources/greenbar.gif" width="70" height="10" title="83" alt="83"/></td><td class="ctr2" id="c12">93%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="12" height="10" title="3" alt="3"/><img src="../.resources/greenbar.gif" width="98" height="10" title="23" alt="23"/></td><td class="ctr2" id="e5">88%</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g1">14</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i1">24</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a6"><a href="Parser.java.html#L149" class="el_method">parse(Options, String[], Properties, boolean)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="
 2" height="10" title="3" alt="3"/><img src="../.resources/greenbar.gif" width="117" height="10" title="138" alt="138"/></td><td class="ctr2" id="c11">98%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="8" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="111" height="10" title="26" alt="26"/></td><td class="ctr2" id="e4">93%</td><td class="ctr1" id="f1">2</td><td class="ctr2" id="g0">15</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i0">39</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a8"><a href="Parser.java.html#L338" class="el_method">processArgs(Option, ListIterator)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="36" height="10" title="43" alt="43"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"><img src="../.resources/greenbar.gif" width="42" height="10" title="10" alt="10"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f2">0
 </td><td class="ctr2" id="g2">6</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">14</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a9"><a href="Parser.java.html#L378" class="el_method">processOption(String, ListIterator)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="35" height="10" title="42" alt="42"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d4"><img src="../.resources/greenbar.gif" width="17" height="10" title="4" alt="4"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g4">3</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">9</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a12"><a href="Parser.java.html#L411" class="el_method">updateRequiredOptions(Option)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="26" height="10" title="31" alt="31"/></td><td class="ctr2" id="c2">1
 00%</td><td class="bar" id="d3"><img src="../.resources/greenbar.gif" width="25" height="10" title="6" alt="6"/></td><td class="ctr2" id="e2">100%</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g3">4</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">8</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a11"><a href="Parser.java.html#L47" class="el_method">setOptions(Options)</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="9" height="10" title="11" alt="11"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">3</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a0"><a href="Parser.java.html#L318" class="el_method">checkRequiredOptions()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="9"
  height="10" title="11" alt="11"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d5"><img src="../.resources/greenbar.gif" width="8" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">100%</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g5">2</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i6">3</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a3"><a href="Parser.java.html#L88" class="el_method">parse(Options, String[])</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="5" height="10" title="7" alt="7"/></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="ctr1" id="h7">0</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a5"><a href="Parser.java.html#L105" class="el_method">parse(Options, String[], Properties)
 </a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="5" height="10" title="7" alt="7"/></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="i8">1</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a4"><a href="Parser.java.html#L123" class="el_method">parse(Options, String[], boolean)</a></td><td class="bar" id="b9"><img src="../.resources/greenbar.gif" width="5" height="10" title="7" alt="7"/></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="i9">1</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a7"><a href="Parser.java.html#L34" class="el_method">Parser()</a></td><td class="bar" 
 id="b10"><img src="../.resources/greenbar.gif" width="2" height="10" title="3" alt="3"/></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="i10">1</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a1"><a href="Parser.java.html#L53" class="el_method">getOptions()</a></td><td class="bar" id="b11"><img src="../.resources/greenbar.gif" width="2" height="10" title="3" alt="3"/></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="i11">1</td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a2"><a href="Parser.java.html#L58" class="el_method">getRequiredOptions()</a></td><td class="bar" id="b12"><img src
 ="../.resources/greenbar.gif" width="2" height="10" title="3" alt="3"/></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="i12">1</td><td class="ctr1" id="j12">0</td><td class="ctr2" id="k12">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/Parser.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Parser.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Parser.java.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/Parser.java.html Sat May  9 18:19:15 2015
@@ -0,0 +1,431 @@
+<?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>Parser.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">Parser.java</span></div><h1>Parser.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.ArrayList;
+import java.util.Arrays;
+import java.util.Enumeration;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Properties;
+
+/**
+ * &lt;code&gt;Parser&lt;/code&gt; creates {@link CommandLine}s.
+ *
+ * @version $Id: Parser.java 1677406 2015-05-03 14:27:31Z britter $
+ * @deprecated since 1.3, the two-pass parsing with the flatten method is not enough flexible to handle complex cases
+ */
+@Deprecated
+<span class="fc" id="L34">public abstract class Parser implements CommandLineParser</span>
+{
+    /** commandline instance */
+    protected CommandLine cmd;
+
+    /** current Options */
+    private Options options;
+
+    /** list of required options strings */
+    private List requiredOptions;
+
+    protected void setOptions(Options options)
+    {
+<span class="fc" id="L47">        this.options = options;</span>
+<span class="fc" id="L48">        this.requiredOptions = new ArrayList(options.getRequiredOptions());</span>
+<span class="fc" id="L49">    }</span>
+
+    protected Options getOptions()
+    {
+<span class="fc" id="L53">        return options;</span>
+    }
+
+    protected List getRequiredOptions()
+    {
+<span class="fc" id="L58">        return requiredOptions;</span>
+    }
+
+    /**
+     * Subclasses must implement this method to reduce
+     * the &lt;code&gt;arguments&lt;/code&gt; that have been passed to the parse method.
+     *
+     * @param opts The Options to parse the arguments by.
+     * @param arguments The arguments that have to be flattened.
+     * @param stopAtNonOption specifies whether to stop
+     * flattening when a non option has been encountered
+     * @return a String array of the flattened arguments
+     * @throws ParseException if there are any problems encountered
+     *                        while parsing the command line tokens.
+     */
+    protected abstract String[] flatten(Options opts, String[] arguments, boolean stopAtNonOption)
+            throws ParseException;
+
+    /**
+     * Parses the specified &lt;code&gt;arguments&lt;/code&gt; based
+     * on the specified {@link Options}.
+     *
+     * @param options the &lt;code&gt;Options&lt;/code&gt;
+     * @param arguments the &lt;code&gt;arguments&lt;/code&gt;
+     * @return the &lt;code&gt;CommandLine&lt;/code&gt;
+     * @throws ParseException if there are any problems encountered
+     *                        while parsing the command line tokens.
+     */
+    public CommandLine parse(Options options, String[] arguments) throws ParseException
+    {
+<span class="fc" id="L88">        return parse(options, arguments, null, false);</span>
+    }
+
+    /**
+     * Parse the arguments according to the specified options and properties.
+     *
+     * @param options    the specified Options
+     * @param arguments  the command line arguments
+     * @param properties command line option name-value pairs
+     * @return the list of atomic option and value tokens
+     * @throws ParseException if there are any problems encountered
+     *                        while parsing the command line tokens.
+     *
+     * @since 1.1
+     */
+    public CommandLine parse(Options options, String[] arguments, Properties properties) throws ParseException
+    {
+<span class="fc" id="L105">        return parse(options, arguments, properties, false);</span>
+    }
+
+    /**
+     * Parses the specified &lt;code&gt;arguments&lt;/code&gt;
+     * based on the specified {@link Options}.
+     *
+     * @param options         the &lt;code&gt;Options&lt;/code&gt;
+     * @param arguments       the &lt;code&gt;arguments&lt;/code&gt;
+     * @param stopAtNonOption if &lt;tt&gt;true&lt;/tt&gt; an unrecognized argument stops
+     *     the parsing and the remaining arguments are added to the 
+     *     {@link CommandLine}s args list. If &lt;tt&gt;false&lt;/tt&gt; an unrecognized
+     *     argument triggers a ParseException.
+     * @return the &lt;code&gt;CommandLine&lt;/code&gt;
+     * @throws ParseException if an error occurs when parsing the arguments.
+     */
+    public CommandLine parse(Options options, String[] arguments, boolean stopAtNonOption) throws ParseException
+    {
+<span class="fc" id="L123">        return parse(options, arguments, null, stopAtNonOption);</span>
+    }
+
+    /**
+     * Parse the arguments according to the specified options and
+     * properties.
+     *
+     * @param options the specified Options
+     * @param arguments the command line arguments
+     * @param properties command line option name-value pairs
+     * @param stopAtNonOption if &lt;tt&gt;true&lt;/tt&gt; an unrecognized argument stops
+     *     the parsing and the remaining arguments are added to the 
+     *     {@link CommandLine}s args list. If &lt;tt&gt;false&lt;/tt&gt; an unrecognized
+     *     argument triggers a ParseException.
+     *
+     * @return the list of atomic option and value tokens
+     *
+     * @throws ParseException if there are any problems encountered
+     * while parsing the command line tokens.
+     *
+     * @since 1.1
+     */
+    public CommandLine parse(Options options, String[] arguments, Properties properties, boolean stopAtNonOption)
+            throws ParseException
+    {
+        // clear out the data in options in case it's been used before (CLI-71)
+<span class="fc bfc" id="L149" title="All 2 branches covered.">        for (Option opt : options.helpOptions())</span>
+        {
+<span class="fc" id="L151">            opt.clearValues();</span>
+<span class="fc" id="L152">        }</span>
+        
+        // clear the data from the groups
+<span class="fc bfc" id="L155" title="All 2 branches covered.">        for (OptionGroup group : options.getOptionGroups())</span>
+        {
+<span class="fc" id="L157">            group.setSelected(null);</span>
+<span class="fc" id="L158">        }        </span>
+
+        // initialise members
+<span class="fc" id="L161">        setOptions(options);</span>
+
+<span class="fc" id="L163">        cmd = new CommandLine();</span>
+
+<span class="fc" id="L165">        boolean eatTheRest = false;</span>
+
+<span class="fc bfc" id="L167" title="All 2 branches covered.">        if (arguments == null)</span>
+        {
+<span class="fc" id="L169">            arguments = new String[0];</span>
+        }
+
+<span class="fc" id="L172">        List&lt;String&gt; tokenList = Arrays.asList(flatten(getOptions(), arguments, stopAtNonOption));</span>
+
+<span class="fc" id="L174">        ListIterator&lt;String&gt; iterator = tokenList.listIterator();</span>
+
+        // process each flattened token
+<span class="fc bfc" id="L177" title="All 2 branches covered.">        while (iterator.hasNext())</span>
+        {
+<span class="fc" id="L179">            String t = iterator.next();</span>
+
+            // the value is the double-dash
+<span class="fc bfc" id="L182" title="All 2 branches covered.">            if (&quot;--&quot;.equals(t))</span>
+            {
+<span class="fc" id="L184">                eatTheRest = true;</span>
+            }
+
+            // the value is a single dash
+<span class="fc bfc" id="L188" title="All 2 branches covered.">            else if (&quot;-&quot;.equals(t))</span>
+            {
+<span class="pc bpc" id="L190" title="1 of 2 branches missed.">                if (stopAtNonOption)</span>
+                {
+<span class="nc" id="L192">                    eatTheRest = true;</span>
+                }
+                else
+                {
+<span class="fc" id="L196">                    cmd.addArg(t);</span>
+                }
+            }
+
+            // the value is an option
+<span class="fc bfc" id="L201" title="All 2 branches covered.">            else if (t.startsWith(&quot;-&quot;))</span>
+            {
+<span class="fc bfc" id="L203" title="All 4 branches covered.">                if (stopAtNonOption &amp;&amp; !getOptions().hasOption(t))</span>
+                {
+<span class="fc" id="L205">                    eatTheRest = true;</span>
+<span class="fc" id="L206">                    cmd.addArg(t);</span>
+                }
+                else
+                {
+<span class="fc" id="L210">                    processOption(t, iterator);</span>
+                }
+            }
+
+            // the value is an argument
+            else
+            {
+<span class="fc" id="L217">                cmd.addArg(t);</span>
+
+<span class="fc bfc" id="L219" title="All 2 branches covered.">                if (stopAtNonOption)</span>
+                {
+<span class="fc" id="L221">                    eatTheRest = true;</span>
+                }
+            }
+
+            // eat the remaining tokens
+<span class="fc bfc" id="L226" title="All 2 branches covered.">            if (eatTheRest)</span>
+            {
+<span class="fc bfc" id="L228" title="All 2 branches covered.">                while (iterator.hasNext())</span>
+                {
+<span class="fc" id="L230">                    String str = iterator.next();</span>
+
+                    // ensure only one double-dash is added
+<span class="pc bpc" id="L233" title="1 of 2 branches missed.">                    if (!&quot;--&quot;.equals(str))</span>
+                    {
+<span class="fc" id="L235">                        cmd.addArg(str);</span>
+                    }
+<span class="fc" id="L237">                }</span>
+            }
+<span class="fc" id="L239">        }</span>
+
+<span class="fc" id="L241">        processProperties(properties);</span>
+<span class="fc" id="L242">        checkRequiredOptions();</span>
+
+<span class="fc" id="L244">        return cmd;</span>
+    }
+
+    /**
+     * Sets the values of Options using the values in &lt;code&gt;properties&lt;/code&gt;.
+     *
+     * @param properties The value properties to be processed.
+     * @throws ParseException if there are any problems encountered
+     *                        while processing the properties.
+     */
+    protected void processProperties(Properties properties) throws ParseException
+    {
+<span class="fc bfc" id="L256" title="All 2 branches covered.">        if (properties == null)</span>
+        {
+<span class="fc" id="L258">            return;</span>
+        }
+
+<span class="fc bfc" id="L261" title="All 2 branches covered.">        for (Enumeration&lt;?&gt; e = properties.propertyNames(); e.hasMoreElements();)</span>
+        {
+<span class="fc" id="L263">            String option = e.nextElement().toString();</span>
+            
+<span class="fc" id="L265">            Option opt = options.getOption(option);</span>
+<span class="fc bfc" id="L266" title="All 2 branches covered.">            if (opt == null)</span>
+            {
+<span class="fc" id="L268">                throw new UnrecognizedOptionException(&quot;Default option wasn't defined&quot;, option);</span>
+            }
+            
+            // if the option is part of a group, check if another option of the group has been selected
+<span class="fc" id="L272">            OptionGroup group = options.getOptionGroup(opt);</span>
+<span class="fc bfc" id="L273" title="All 4 branches covered.">            boolean selected = group != null &amp;&amp; group.getSelected() != null;</span>
+            
+<span class="fc bfc" id="L275" title="All 4 branches covered.">            if (!cmd.hasOption(option) &amp;&amp; !selected)</span>
+            {
+                // get the value from the properties instance
+<span class="fc" id="L278">                String value = properties.getProperty(option);</span>
+
+<span class="fc bfc" id="L280" title="All 2 branches covered.">                if (opt.hasArg())</span>
+                {
+<span class="pc bpc" id="L282" title="3 of 4 branches missed.">                    if (opt.getValues() == null || opt.getValues().length == 0)</span>
+                    {
+                        try
+                        {
+<span class="fc" id="L286">                            opt.addValueForProcessing(value);</span>
+                        }
+<span class="nc" id="L288">                        catch (RuntimeException exp) //NOPMD</span>
+                        {
+                            // if we cannot add the value don't worry about it
+<span class="pc" id="L291">                        }</span>
+                    }
+                }
+<span class="fc bfc" id="L294" title="All 2 branches covered.">                else if (!(&quot;yes&quot;.equalsIgnoreCase(value)</span>
+<span class="fc bfc" id="L295" title="All 2 branches covered.">                        || &quot;true&quot;.equalsIgnoreCase(value)</span>
+<span class="fc bfc" id="L296" title="All 2 branches covered.">                        || &quot;1&quot;.equalsIgnoreCase(value)))</span>
+                {
+                    // if the value is not yes, true or 1 then don't add the
+                    // option to the CommandLine
+<span class="fc" id="L300">                    continue;</span>
+                }
+
+<span class="fc" id="L303">                cmd.addOption(opt);</span>
+<span class="fc" id="L304">                updateRequiredOptions(opt);</span>
+            }
+<span class="fc" id="L306">        }</span>
+<span class="fc" id="L307">    }</span>
+
+    /**
+     * Throws a {@link MissingOptionException} if all of the required options
+     * are not present.
+     *
+     * @throws MissingOptionException if any of the required Options are not present.
+     */
+    protected void checkRequiredOptions() throws MissingOptionException
+    {
+        // if there are required options that have not been processed
+<span class="fc bfc" id="L318" title="All 2 branches covered.">        if (!getRequiredOptions().isEmpty())</span>
+        {
+<span class="fc" id="L320">            throw new MissingOptionException(getRequiredOptions());</span>
+        }
+<span class="fc" id="L322">    }</span>
+
+    /**
+     * Process the argument values for the specified Option
+     * &lt;code&gt;opt&lt;/code&gt; using the values retrieved from the
+     * specified iterator &lt;code&gt;iter&lt;/code&gt;.
+     *
+     * @param opt The current Option
+     * @param iter The iterator over the flattened command line Options.
+     *
+     * @throws ParseException if an argument value is required
+     * and it is has not been found.
+     */
+    public void processArgs(Option opt, ListIterator&lt;String&gt; iter) throws ParseException
+    {
+        // loop until an option is found
+<span class="fc bfc" id="L338" title="All 2 branches covered.">        while (iter.hasNext())</span>
+        {
+<span class="fc" id="L340">            String str = iter.next();</span>
+            
+            // found an Option, not an argument
+<span class="fc bfc" id="L343" title="All 4 branches covered.">            if (getOptions().hasOption(str) &amp;&amp; str.startsWith(&quot;-&quot;))</span>
+            {
+<span class="fc" id="L345">                iter.previous();</span>
+<span class="fc" id="L346">                break;</span>
+            }
+
+            // found a value
+            try
+            {
+<span class="fc" id="L352">                opt.addValueForProcessing(Util.stripLeadingAndTrailingQuotes(str));</span>
+            }
+<span class="fc" id="L354">            catch (RuntimeException exp)</span>
+            {
+<span class="fc" id="L356">                iter.previous();</span>
+<span class="fc" id="L357">                break;</span>
+<span class="fc" id="L358">            }</span>
+<span class="fc" id="L359">        }</span>
+
+<span class="fc bfc" id="L361" title="All 4 branches covered.">        if (opt.getValues() == null &amp;&amp; !opt.hasOptionalArg())</span>
+        {
+<span class="fc" id="L363">            throw new MissingArgumentException(opt);</span>
+        }
+<span class="fc" id="L365">    }</span>
+
+    /**
+     * Process the Option specified by &lt;code&gt;arg&lt;/code&gt; using the values
+     * retrieved from the specified iterator &lt;code&gt;iter&lt;/code&gt;.
+     *
+     * @param arg The String value representing an Option
+     * @param iter The iterator over the flattened command line arguments.
+     *
+     * @throws ParseException if &lt;code&gt;arg&lt;/code&gt; does not represent an Option
+     */
+    protected void processOption(String arg, ListIterator&lt;String&gt; iter) throws ParseException
+    {
+<span class="fc" id="L378">        boolean hasOption = getOptions().hasOption(arg);</span>
+
+        // if there is no option throw an UnrecognisedOptionException
+<span class="fc bfc" id="L381" title="All 2 branches covered.">        if (!hasOption)</span>
+        {
+<span class="fc" id="L383">            throw new UnrecognizedOptionException(&quot;Unrecognized option: &quot; + arg, arg);</span>
+        }
+
+        // get the option represented by arg
+<span class="fc" id="L387">        Option opt = (Option) getOptions().getOption(arg).clone();</span>
+        
+        // update the required options and groups
+<span class="fc" id="L390">        updateRequiredOptions(opt);</span>
+        
+        // if the option takes an argument value
+<span class="fc bfc" id="L393" title="All 2 branches covered.">        if (opt.hasArg())</span>
+        {
+<span class="fc" id="L395">            processArgs(opt, iter);</span>
+        }
+        
+        // set the option on the command line
+<span class="fc" id="L399">        cmd.addOption(opt);</span>
+<span class="fc" id="L400">    }</span>
+
+    /**
+     * Removes the option or its group from the list of expected elements.
+     * 
+     * @param opt
+     */
+    private void updateRequiredOptions(Option opt) throws ParseException
+    {
+        // if the option is a required option remove the option from
+        // the requiredOptions list
+<span class="fc bfc" id="L411" title="All 2 branches covered.">        if (opt.isRequired())</span>
+        {
+<span class="fc" id="L413">            getRequiredOptions().remove(opt.getKey());</span>
+        }
+
+        // if the option is in an OptionGroup make that option the selected
+        // option of the group
+<span class="fc bfc" id="L418" title="All 2 branches covered.">        if (getOptions().getOptionGroup(opt) != null)</span>
+        {
+<span class="fc" id="L420">            OptionGroup group = getOptions().getOptionGroup(opt);</span>
+
+<span class="fc bfc" id="L422" title="All 2 branches covered.">            if (group.isRequired())</span>
+            {
+<span class="fc" id="L424">                getRequiredOptions().remove(group);</span>
+            }
+
+<span class="fc" id="L427">            group.setSelected(opt);</span>
+        }
+<span class="fc" id="L429">    }</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/Parser.java.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PatternOptionBuilder.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PatternOptionBuilder.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PatternOptionBuilder.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>PatternOptionBuilder</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">PatternOptionBuilder</span></div><h1>PatternOptionBuilder</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead>
 <tr><td class="sortable" 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">5 of 168</td><td class="ctr2">97%</td><td class="bar">1 of 44</td><td class="ctr2">98%</td><td class="ctr1">2</td><td class="ctr2">31</td><td c
 lass="ctr1">2</td><td class="ctr2">51</td><td class="ctr1">1</td><td class="ctr2">5</td></tr></tfoot><tbody><tr><td id="a3"><a href="PatternOptionBuilder.java.html#L57" class="el_method">PatternOptionBuilder()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="PatternOptionBuilder.java.html#L98" class="el_method">getValueClass(char)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="2" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="26" height="10" title="20" alt="20"/></td><td class="ctr2" id="c3">91%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" widt
 h="6" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="54" height="10" title="9" alt="9"/></td><td class="ctr2" id="e2">90%</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">10</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">11</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a2"><a href="PatternOptionBuilder.java.html#L152" class="el_method">parsePattern(String)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="120" height="10" title="90" alt="90"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"><img src="../.resources/greenbar.gif" width="84" height="10" title="14" alt="14"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">8</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i0">29</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a1"><a href="PatternOptionBuilder.java.html#L
 132" class="el_method">isValueCode(char)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="45" height="10" title="34" alt="34"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"><img src="../.resources/greenbar.gif" width="120" height="10" title="20" alt="20"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g0">11</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="PatternOptionBuilder.java.html#L60" class="el_method">static {...}</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="25" height="10" title="19" alt="19"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i2">9</td><td class="ctr1" id="j4">0</td><td cla
 ss="ctr2" id="k4">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/PatternOptionBuilder.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PatternOptionBuilder.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PatternOptionBuilder.java.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PatternOptionBuilder.java.html Sat May  9 18:19:15 2015
@@ -0,0 +1,208 @@
+<?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>PatternOptionBuilder.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">PatternOptionBuilder.java<
 /span></div><h1>PatternOptionBuilder.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.File;
+import java.io.FileInputStream;
+import java.net.URL;
+import java.util.Date;
+
+/**
+ * &lt;p&gt;Allows Options to be created from a single String.
+ * The pattern contains various single character flags and via
+ * an optional punctuation character, their expected type.
+ * &lt;/p&gt;
+ * 
+ * &lt;table border=&quot;1&quot;&gt;
+ *   &lt;caption&gt;Overview of PatternOptionBuilder patterns&lt;/caption&gt;
+ *   &lt;tr&gt;&lt;td&gt;a&lt;/td&gt;&lt;td&gt;-a flag&lt;/td&gt;&lt;/tr&gt;
+ *   &lt;tr&gt;&lt;td&gt;b@&lt;/td&gt;&lt;td&gt;-b [classname]&lt;/td&gt;&lt;/tr&gt;
+ *   &lt;tr&gt;&lt;td&gt;c&amp;gt;&lt;/td&gt;&lt;td&gt;-c [filename]&lt;/td&gt;&lt;/tr&gt;
+ *   &lt;tr&gt;&lt;td&gt;d+&lt;/td&gt;&lt;td&gt;-d [classname] (creates object via empty constructor)&lt;/td&gt;&lt;/tr&gt;
+ *   &lt;tr&gt;&lt;td&gt;e%&lt;/td&gt;&lt;td&gt;-e [number] (creates Double/Long instance depending on existing of a '.')&lt;/td&gt;&lt;/tr&gt;
+ *   &lt;tr&gt;&lt;td&gt;f/&lt;/td&gt;&lt;td&gt;-f [url]&lt;/td&gt;&lt;/tr&gt;
+ *   &lt;tr&gt;&lt;td&gt;g:&lt;/td&gt;&lt;td&gt;-g [string]&lt;/td&gt;&lt;/tr&gt;
+ * &lt;/table&gt;
+ * 
+ * &lt;p&gt;
+ * For example, the following allows command line flags of '-v -p string-value -f /dir/file'.
+ * The exclamation mark precede a mandatory option.
+ * &lt;/p&gt;
+ *
+ * &lt;pre&gt;
+ *     Options options = PatternOptionBuilder.parsePattern(&quot;vp:!f/&quot;);
+ * &lt;/pre&gt;
+ *
+ * &lt;p&gt;
+ * TODO: These need to break out to OptionType and also to be pluggable.
+ * &lt;/p&gt;
+ *
+ * @version $Id: PatternOptionBuilder.java 1677406 2015-05-03 14:27:31Z britter $
+ */
+<span class="nc" id="L57">public class PatternOptionBuilder</span>
+{
+    /** String class */
+<span class="fc" id="L60">    public static final Class&lt;String&gt; STRING_VALUE = String.class;</span>
+
+    /** Object class */
+<span class="fc" id="L63">    public static final Class&lt;Object&gt; OBJECT_VALUE = Object.class;</span>
+
+    /** Number class */
+<span class="fc" id="L66">    public static final Class&lt;Number&gt; NUMBER_VALUE = Number.class;</span>
+
+    /** Date class */
+<span class="fc" id="L69">    public static final Class&lt;Date&gt; DATE_VALUE = Date.class;</span>
+
+    /** Class class */
+<span class="fc" id="L72">    public static final Class&lt;?&gt; CLASS_VALUE = Class.class;</span>
+
+    /// can we do this one??
+    // is meant to check that the file exists, else it errors.
+    // ie) it's for reading not writing.
+
+    /** FileInputStream class */
+<span class="fc" id="L79">    public static final Class&lt;FileInputStream&gt; EXISTING_FILE_VALUE = FileInputStream.class;</span>
+
+    /** File class */
+<span class="fc" id="L82">    public static final Class&lt;File&gt; FILE_VALUE = File.class;</span>
+
+    /** File array class */
+<span class="fc" id="L85">    public static final Class&lt;File[]&gt; FILES_VALUE = File[].class;</span>
+
+    /** URL class */
+<span class="fc" id="L88">    public static final Class&lt;URL&gt; URL_VALUE = URL.class;</span>
+
+    /**
+     * Retrieve the class that &lt;code&gt;ch&lt;/code&gt; represents.
+     *
+     * @param ch the specified character
+     * @return The class that &lt;code&gt;ch&lt;/code&gt; represents
+     */
+    public static Object getValueClass(char ch)
+    {
+<span class="pc bpc" id="L98" title="1 of 10 branches missed.">        switch (ch)</span>
+        {
+            case '@':
+<span class="fc" id="L101">                return PatternOptionBuilder.OBJECT_VALUE;</span>
+            case ':':
+<span class="fc" id="L103">                return PatternOptionBuilder.STRING_VALUE;</span>
+            case '%':
+<span class="fc" id="L105">                return PatternOptionBuilder.NUMBER_VALUE;</span>
+            case '+':
+<span class="fc" id="L107">                return PatternOptionBuilder.CLASS_VALUE;</span>
+            case '#':
+<span class="fc" id="L109">                return PatternOptionBuilder.DATE_VALUE;</span>
+            case '&lt;':
+<span class="fc" id="L111">                return PatternOptionBuilder.EXISTING_FILE_VALUE;</span>
+            case '&gt;':
+<span class="fc" id="L113">                return PatternOptionBuilder.FILE_VALUE;</span>
+            case '*':
+<span class="fc" id="L115">                return PatternOptionBuilder.FILES_VALUE;</span>
+            case '/':
+<span class="fc" id="L117">                return PatternOptionBuilder.URL_VALUE;</span>
+        }
+
+<span class="nc" id="L120">        return null;</span>
+    }
+
+    /**
+     * Returns whether &lt;code&gt;ch&lt;/code&gt; is a value code, i.e.
+     * whether it represents a class in a pattern.
+     *
+     * @param ch the specified character
+     * @return true if &lt;code&gt;ch&lt;/code&gt; is a value code, otherwise false.
+     */
+    public static boolean isValueCode(char ch)
+    {
+<span class="fc bfc" id="L132" title="All 20 branches covered.">        return ch == '@'</span>
+                || ch == ':'
+                || ch == '%'
+                || ch == '+'
+                || ch == '#'
+                || ch == '&lt;'
+                || ch == '&gt;'
+                || ch == '*'
+                || ch == '/'
+                || ch == '!';
+    }
+
+    /**
+     * Returns the {@link Options} instance represented by &lt;code&gt;pattern&lt;/code&gt;.
+     *
+     * @param pattern the pattern string
+     * @return The {@link Options} instance
+     */
+    public static Options parsePattern(String pattern)
+    {
+<span class="fc" id="L152">        char opt = ' ';</span>
+<span class="fc" id="L153">        boolean required = false;</span>
+<span class="fc" id="L154">        Class&lt;?&gt; type = null;</span>
+
+<span class="fc" id="L156">        Options options = new Options();</span>
+
+<span class="fc bfc" id="L158" title="All 2 branches covered.">        for (int i = 0; i &lt; pattern.length(); i++)</span>
+        {
+<span class="fc" id="L160">            char ch = pattern.charAt(i);</span>
+
+            // a value code comes after an option and specifies
+            // details about it
+<span class="fc bfc" id="L164" title="All 2 branches covered.">            if (!isValueCode(ch))</span>
+            {
+<span class="fc bfc" id="L166" title="All 2 branches covered.">                if (opt != ' ')</span>
+                {
+<span class="fc bfc" id="L168" title="All 2 branches covered.">                    final Option option = Option.builder(String.valueOf(opt))</span>
+<span class="fc" id="L169">                        .hasArg(type != null)</span>
+<span class="fc" id="L170">                        .required(required)</span>
+<span class="fc" id="L171">                        .type(type)</span>
+<span class="fc" id="L172">                        .build();</span>
+                    
+                    // we have a previous one to deal with
+<span class="fc" id="L175">                    options.addOption(option);</span>
+<span class="fc" id="L176">                    required = false;</span>
+<span class="fc" id="L177">                    type = null;</span>
+<span class="fc" id="L178">                    opt = ' ';</span>
+                }
+
+<span class="fc" id="L181">                opt = ch;</span>
+            }
+<span class="fc bfc" id="L183" title="All 2 branches covered.">            else if (ch == '!')</span>
+            {
+<span class="fc" id="L185">                required = true;</span>
+            }
+            else
+            {
+<span class="fc" id="L189">                type = (Class&lt;?&gt;) getValueClass(ch);</span>
+            }
+        }
+
+<span class="fc bfc" id="L193" title="All 2 branches covered.">        if (opt != ' ')</span>
+        {
+<span class="fc bfc" id="L195" title="All 2 branches covered.">            final Option option = Option.builder(String.valueOf(opt))</span>
+<span class="fc" id="L196">                .hasArg(type != null)</span>
+<span class="fc" id="L197">                .required(required)</span>
+<span class="fc" id="L198">                .type(type)</span>
+<span class="fc" id="L199">                .build();</span>
+            
+            // we have a final one to deal with
+<span class="fc" id="L202">            options.addOption(option);</span>
+        }
+
+<span class="fc" id="L205">        return options;</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/PatternOptionBuilder.java.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PosixParser.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PosixParser.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PosixParser.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>PosixParser</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">PosixParser</span></div><h1>PosixParser</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" 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">0 of 334</td><td class="ctr2">100%</td><td class="bar">0 of 52</td><td class="ctr2">100%</td><td class="ctr1">0</td><td class="ctr2">33</td><td class="ctr1">0</td><td cla
 ss="ctr2">69</td><td class="ctr1">0</td><td class="ctr2">7</td></tr></tfoot><tbody><tr><td id="a1"><a href="PosixParser.java.html#L98" class="el_method">flatten(Options, String[], boolean)</a></td><td class="bar" id="b0"><img src="../.resources/greenbar.gif" width="120" height="10" title="183" alt="183"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../.resources/greenbar.gif" width="120" height="10" title="26" alt="26"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">14</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">35</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="PosixParser.java.html#L269" class="el_method">burstToken(String, boolean)</a></td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="47" height="10" title="72" alt="72"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"><img src="../.resources/greenbar.gif"
  width="46" height="10" title="10" alt="10"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">6</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">14</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a6"><a href="PosixParser.java.html#L228" class="el_method">processOptionToken(String, boolean)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="17" height="10" title="27" alt="27"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"><img src="../.resources/greenbar.gif" width="27" height="10" title="6" alt="6"/></td><td class="ctr2" id="e2">100%</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">6</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a5"><a href="PosixParser.java.html#L205" class="el_method">processNonOptionToken(String, boolean)</a></td><td class
 ="bar" id="b3"><img src="../.resources/greenbar.gif" width="15" height="10" title="23" alt="23"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"><img src="../.resources/greenbar.gif" width="27" height="10" title="6" alt="6"/></td><td class="ctr2" id="e3">100%</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">4</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">5</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a2"><a href="PosixParser.java.html#L187" class="el_method">gobble(Iterator)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="9" height="10" title="14" alt="14"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d4"><img src="../.resources/greenbar.gif" width="18" height="10" title="4" alt="4"/></td><td class="ctr2" id="e4">100%</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">3</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">4</td><td class="ctr1" id=
 "j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a4"><a href="PosixParser.java.html#L33" class="el_method">PosixParser()</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="5" height="10" title="8" alt="8"/></td><td class="ctr2" id="c5">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="i6">2</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a3"><a href="PosixParser.java.html#L54" class="el_method">init()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="4" height="10" title="7" alt="7"/></td><td class="ctr2" id="c6">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">3</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">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/PosixParser.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PosixParser.java.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PosixParser.java.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/PosixParser.java.html Sat May  9 18:19:15 2015
@@ -0,0 +1,298 @@
+<?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>PosixParser.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">PosixParser.java</span></div><h1>Po
 sixParser.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.ArrayList;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * The class PosixParser provides an implementation of the
+ * {@link Parser#flatten(Options,String[],boolean) flatten} method.
+ *
+ * @version $Id: PosixParser.java 1677406 2015-05-03 14:27:31Z britter $
+ * @deprecated since 1.3, use the {@link DefaultParser} instead
+ */
+@Deprecated
+<span class="fc" id="L33">public class PosixParser extends Parser</span>
+{
+    /** holder for flattened tokens */
+<span class="fc" id="L36">    private final List&lt;String&gt; tokens = new ArrayList&lt;String&gt;();</span>
+
+    /** specifies if bursting should continue */
+    private boolean eatTheRest;
+
+    /** holder for the current option */
+    private Option currentOption;
+
+    /** the command line Options */
+    private Options options;
+
+    /**
+     * Resets the members to their original state i.e. remove
+     * all of &lt;code&gt;tokens&lt;/code&gt; entries and set &lt;code&gt;eatTheRest&lt;/code&gt;
+     * to false.
+     */
+    private void init()
+    {
+<span class="fc" id="L54">        eatTheRest = false;</span>
+<span class="fc" id="L55">        tokens.clear();</span>
+<span class="fc" id="L56">    }</span>
+
+    /**
+     * &lt;p&gt;An implementation of {@link Parser}'s abstract
+     * {@link Parser#flatten(Options,String[],boolean) flatten} method.&lt;/p&gt;
+     *
+     * &lt;p&gt;The following are the rules used by this flatten method.&lt;/p&gt;
+     * &lt;ol&gt;
+     *  &lt;li&gt;if &lt;code&gt;stopAtNonOption&lt;/code&gt; is &lt;b&gt;true&lt;/b&gt; then do not
+     *  burst anymore of &lt;code&gt;arguments&lt;/code&gt; entries, just add each
+     *  successive entry without further processing.  Otherwise, ignore
+     *  &lt;code&gt;stopAtNonOption&lt;/code&gt;.&lt;/li&gt;
+     *  &lt;li&gt;if the current &lt;code&gt;arguments&lt;/code&gt; entry is &quot;&lt;b&gt;--&lt;/b&gt;&quot;
+     *  just add the entry to the list of processed tokens&lt;/li&gt;
+     *  &lt;li&gt;if the current &lt;code&gt;arguments&lt;/code&gt; entry is &quot;&lt;b&gt;-&lt;/b&gt;&quot;
+     *  just add the entry to the list of processed tokens&lt;/li&gt;
+     *  &lt;li&gt;if the current &lt;code&gt;arguments&lt;/code&gt; entry is two characters
+     *  in length and the first character is &quot;&lt;b&gt;-&lt;/b&gt;&quot; then check if this
+     *  is a valid {@link Option} id.  If it is a valid id, then add the
+     *  entry to the list of processed tokens and set the current {@link Option}
+     *  member.  If it is not a valid id and &lt;code&gt;stopAtNonOption&lt;/code&gt;
+     *  is true, then the remaining entries are copied to the list of
+     *  processed tokens.  Otherwise, the current entry is ignored.&lt;/li&gt;
+     *  &lt;li&gt;if the current &lt;code&gt;arguments&lt;/code&gt; entry is more than two
+     *  characters in length and the first character is &quot;&lt;b&gt;-&lt;/b&gt;&quot; then
+     *  we need to burst the entry to determine its constituents.  For more
+     *  information on the bursting algorithm see
+     *  {@link PosixParser#burstToken(String, boolean) burstToken}.&lt;/li&gt;
+     *  &lt;li&gt;if the current &lt;code&gt;arguments&lt;/code&gt; entry is not handled
+     *  by any of the previous rules, then the entry is added to the list
+     *  of processed tokens.&lt;/li&gt;
+     * &lt;/ol&gt;
+     *
+     * @param options The command line {@link Options}
+     * @param arguments The command line arguments to be parsed
+     * @param stopAtNonOption Specifies whether to stop flattening
+     * when an non option is found.
+     * @return The flattened &lt;code&gt;arguments&lt;/code&gt; String array.
+     */
+    @Override
+    protected String[] flatten(Options options, String[] arguments, boolean stopAtNonOption) throws ParseException
+    {
+<span class="fc" id="L98">        init();</span>
+<span class="fc" id="L99">        this.options = options;</span>
+
+        // an iterator for the command line tokens
+<span class="fc" id="L102">        Iterator&lt;String&gt; iter = Arrays.asList(arguments).iterator();</span>
+
+        // process each command line token
+<span class="fc bfc" id="L105" title="All 2 branches covered.">        while (iter.hasNext())</span>
+        {
+            // get the next command line token
+<span class="fc" id="L108">            String token = iter.next();</span>
+
+            // single or double hyphen
+<span class="fc bfc" id="L111" title="All 4 branches covered.">            if (&quot;-&quot;.equals(token) || &quot;--&quot;.equals(token))</span>
+            {
+<span class="fc" id="L113">                tokens.add(token);</span>
+            }
+            
+            // handle long option --foo or --foo=bar
+<span class="fc bfc" id="L117" title="All 2 branches covered.">            else if (token.startsWith(&quot;--&quot;))</span>
+            {
+<span class="fc" id="L119">                int pos = token.indexOf('=');</span>
+<span class="fc bfc" id="L120" title="All 2 branches covered.">                String opt = pos == -1 ? token : token.substring(0, pos); // --foo</span>
+                
+<span class="fc" id="L122">                List&lt;String&gt; matchingOpts = options.getMatchingOptions(opt);</span>
+
+<span class="fc bfc" id="L124" title="All 2 branches covered.">                if (matchingOpts.isEmpty())</span>
+                {
+<span class="fc" id="L126">                    processNonOptionToken(token, stopAtNonOption);</span>
+                }
+<span class="fc bfc" id="L128" title="All 2 branches covered.">                else if (matchingOpts.size() &gt; 1)</span>
+                {
+<span class="fc" id="L130">                    throw new AmbiguousOptionException(opt, matchingOpts);</span>
+                }
+                else
+                {
+<span class="fc" id="L134">                    currentOption = options.getOption(matchingOpts.get(0));</span>
+                    
+<span class="fc" id="L136">                    tokens.add(&quot;--&quot; + currentOption.getLongOpt());</span>
+<span class="fc bfc" id="L137" title="All 2 branches covered.">                    if (pos != -1)</span>
+                    {
+<span class="fc" id="L139">                        tokens.add(token.substring(pos + 1));</span>
+                    }
+                }
+<span class="fc" id="L142">            }</span>
+
+<span class="fc bfc" id="L144" title="All 2 branches covered.">            else if (token.startsWith(&quot;-&quot;))</span>
+            {
+<span class="fc bfc" id="L146" title="All 4 branches covered.">                if (token.length() == 2 || options.hasOption(token))</span>
+                {
+<span class="fc" id="L148">                    processOptionToken(token, stopAtNonOption);</span>
+                }
+<span class="fc bfc" id="L150" title="All 2 branches covered.">                else if (!options.getMatchingOptions(token).isEmpty())</span>
+                {
+<span class="fc" id="L152">                    List&lt;String&gt; matchingOpts = options.getMatchingOptions(token);</span>
+<span class="fc bfc" id="L153" title="All 2 branches covered.">                    if (matchingOpts.size() &gt; 1)</span>
+                    {
+<span class="fc" id="L155">                        throw new AmbiguousOptionException(token, matchingOpts);</span>
+                    }
+                    else
+                    {
+<span class="fc" id="L159">                        Option opt = options.getOption(matchingOpts.get(0));</span>
+<span class="fc" id="L160">                        processOptionToken(&quot;-&quot; + opt.getLongOpt(), stopAtNonOption);</span>
+                    }
+<span class="fc" id="L162">                }</span>
+                // requires bursting
+                else
+                {
+<span class="fc" id="L166">                    burstToken(token, stopAtNonOption);</span>
+                }
+            }
+            else
+            {
+<span class="fc" id="L171">                processNonOptionToken(token, stopAtNonOption);</span>
+            }
+
+<span class="fc" id="L174">            gobble(iter);</span>
+<span class="fc" id="L175">        }</span>
+
+<span class="fc" id="L177">        return tokens.toArray(new String[tokens.size()]);</span>
+    }
+
+    /**
+     * Adds the remaining tokens to the processed tokens list.
+     *
+     * @param iter An iterator over the remaining tokens
+     */
+    private void gobble(Iterator&lt;String&gt; iter)
+    {
+<span class="fc bfc" id="L187" title="All 2 branches covered.">        if (eatTheRest)</span>
+        {
+<span class="fc bfc" id="L189" title="All 2 branches covered.">            while (iter.hasNext())</span>
+            {
+<span class="fc" id="L191">                tokens.add(iter.next());</span>
+            }
+        }
+<span class="fc" id="L194">    }</span>
+
+    /**
+     * Add the special token &quot;&lt;b&gt;--&lt;/b&gt;&quot; and the current &lt;code&gt;value&lt;/code&gt;
+     * to the processed tokens list. Then add all the remaining
+     * &lt;code&gt;argument&lt;/code&gt; values to the processed tokens list.
+     *
+     * @param value The current token
+     */
+    private void processNonOptionToken(String value, boolean stopAtNonOption)
+    {
+<span class="fc bfc" id="L205" title="All 6 branches covered.">        if (stopAtNonOption &amp;&amp; (currentOption == null || !currentOption.hasArg()))</span>
+        {
+<span class="fc" id="L207">            eatTheRest = true;</span>
+<span class="fc" id="L208">            tokens.add(&quot;--&quot;);</span>
+        }
+
+<span class="fc" id="L211">        tokens.add(value);</span>
+<span class="fc" id="L212">    }</span>
+
+    /**
+     * &lt;p&gt;If an {@link Option} exists for &lt;code&gt;token&lt;/code&gt; then
+     * add the token to the processed list.&lt;/p&gt;
+     *
+     * &lt;p&gt;If an {@link Option} does not exist and &lt;code&gt;stopAtNonOption&lt;/code&gt;
+     * is set then add the remaining tokens to the processed tokens list
+     * directly.&lt;/p&gt;
+     *
+     * @param token The current option token
+     * @param stopAtNonOption Specifies whether flattening should halt
+     * at the first non option.
+     */
+    private void processOptionToken(String token, boolean stopAtNonOption)
+    {
+<span class="fc bfc" id="L228" title="All 4 branches covered.">        if (stopAtNonOption &amp;&amp; !options.hasOption(token))</span>
+        {
+<span class="fc" id="L230">            eatTheRest = true;</span>
+        }
+
+<span class="fc bfc" id="L233" title="All 2 branches covered.">        if (options.hasOption(token))</span>
+        {
+<span class="fc" id="L235">            currentOption = options.getOption(token);</span>
+        }
+
+<span class="fc" id="L238">        tokens.add(token);</span>
+<span class="fc" id="L239">    }</span>
+
+    /**
+     * Breaks &lt;code&gt;token&lt;/code&gt; into its constituent parts
+     * using the following algorithm.
+     *
+     * &lt;ul&gt;
+     *  &lt;li&gt;ignore the first character (&quot;&lt;b&gt;-&lt;/b&gt;&quot;)&lt;/li&gt;
+     *  &lt;li&gt;foreach remaining character check if an {@link Option}
+     *  exists with that id.&lt;/li&gt;
+     *  &lt;li&gt;if an {@link Option} does exist then add that character
+     *  prepended with &quot;&lt;b&gt;-&lt;/b&gt;&quot; to the list of processed tokens.&lt;/li&gt;
+     *  &lt;li&gt;if the {@link Option} can have an argument value and there
+     *  are remaining characters in the token then add the remaining
+     *  characters as a token to the list of processed tokens.&lt;/li&gt;
+     *  &lt;li&gt;if an {@link Option} does &lt;b&gt;NOT&lt;/b&gt; exist &lt;b&gt;AND&lt;/b&gt;
+     *  &lt;code&gt;stopAtNonOption&lt;/code&gt; &lt;b&gt;IS&lt;/b&gt; set then add the special token
+     *  &quot;&lt;b&gt;--&lt;/b&gt;&quot; followed by the remaining characters and also
+     *  the remaining tokens directly to the processed tokens list.&lt;/li&gt;
+     *  &lt;li&gt;if an {@link Option} does &lt;b&gt;NOT&lt;/b&gt; exist &lt;b&gt;AND&lt;/b&gt;
+     *  &lt;code&gt;stopAtNonOption&lt;/code&gt; &lt;b&gt;IS NOT&lt;/b&gt; set then add that
+     *  character prepended with &quot;&lt;b&gt;-&lt;/b&gt;&quot;.&lt;/li&gt;
+     * &lt;/ul&gt;
+     *
+     * @param token The current token to be &lt;b&gt;burst&lt;/b&gt;
+     * @param stopAtNonOption Specifies whether to stop processing
+     * at the first non-Option encountered.
+     */
+    protected void burstToken(String token, boolean stopAtNonOption)
+    {
+<span class="fc bfc" id="L269" title="All 2 branches covered.">        for (int i = 1; i &lt; token.length(); i++)</span>
+        {
+<span class="fc" id="L271">            String ch = String.valueOf(token.charAt(i));</span>
+
+<span class="fc bfc" id="L273" title="All 2 branches covered.">            if (options.hasOption(ch))</span>
+            {
+<span class="fc" id="L275">                tokens.add(&quot;-&quot; + ch);</span>
+<span class="fc" id="L276">                currentOption = options.getOption(ch);</span>
+
+<span class="fc bfc" id="L278" title="All 4 branches covered.">                if (currentOption.hasArg() &amp;&amp; token.length() != i + 1)</span>
+                {
+<span class="fc" id="L280">                    tokens.add(token.substring(i + 1));</span>
+
+<span class="fc" id="L282">                    break;</span>
+                }
+            }
+<span class="fc bfc" id="L285" title="All 2 branches covered.">            else if (stopAtNonOption)</span>
+            {
+<span class="fc" id="L287">                processNonOptionToken(token.substring(i), true);</span>
+<span class="fc" id="L288">                break;</span>
+            }
+            else
+            {
+<span class="fc" id="L292">                tokens.add(token);</span>
+<span class="fc" id="L293">                break;</span>
+            }
+        }
+<span class="fc" id="L296">    }</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/PosixParser.java.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/TypeHandler.html
==============================================================================
--- websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/TypeHandler.html (added)
+++ websites/production/commons/content/proper/commons-cli/jacoco/org.apache.commons.cli/TypeHandler.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>TypeHandler</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">TypeHandler</span></div><h1>TypeHandler</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" 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">11 of 167</td><td class="ctr2">93%</td><td class="bar">3 of 20</td><td class="ctr2">85%</td><td class="ctr1">4</td><td class="ctr2">20</td><td class="ctr1">4</td><td clas
 s="ctr2">42</td><td class="ctr1">1</td><td class="ctr2">10</td></tr></tfoot><tbody><tr><td id="a7"><a href="TypeHandler.java.html#L64" class="el_method">createValue(String, Class)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="17" height="10" title="8" alt="8"/><img src="../.resources/greenbar.gif" width="102" height="10" title="47" alt="47"/></td><td class="ctr2" id="c8">85%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="20" height="10" title="3" alt="3"/><img src="../.resources/greenbar.gif" width="100" height="10" title="15" alt="15"/></td><td class="ctr2" id="e1">83%</td><td class="ctr1" id="f0">3</td><td class="ctr2" id="g0">10</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">19</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a9"><a href="TypeHandler.java.html#L35" class="el_method">TypeHandler()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="6" height="
 10" title="3" alt="3"/></td><td class="ctr2" id="c9">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a5"><a href="TypeHandler.java.html#L119" class="el_method">createObject(String)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="80" height="10" title="37" alt="37"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i1">7</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a4"><a href="TypeHandler.java.html#L148" class="el_method">createNumber(String)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="39" height="10" title="18
 " alt="18"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"><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="f3">0</td><td class="ctr2" id="g1">2</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i2">5</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a6"><a href="TypeHandler.java.html#L209" class="el_method">createURL(String)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="39" height="10" title="18" alt="18"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i3">3</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a0"><a href="TypeHandler.java.html#L174" class="el_method">createClass(String)</a></td><td class="bar" id="b5
 "><img src="../.resources/greenbar.gif" width="34" height="10" title="16" alt="16"/></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">3</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a8"><a href="TypeHandler.java.html#L49" class="el_method">createValue(String, Object)</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="10" 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="i6">1</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a1"><a href="TypeHandler.java.html#L195" class="el_method">createDate(String)</a></td><td class="bar" id="b7"><img 
 src="../.resources/greenbar.gif" width="10" 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="ctr1" id="h7">0</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a2"><a href="TypeHandler.java.html#L225" class="el_method">createFile(String)</a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="10" 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="i8">1</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a3"><a href="TypeHandler.java.html#L242" class="el_method">createFiles(String)</a></td><td class="bar" id="b9"><img src="../.resourc
 es/greenbar.gif" width="10" 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="i9">1</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k9">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/TypeHandler.html
------------------------------------------------------------------------------
    svn:eol-style = native