blob: 90a33840f627e1ef17176772897d5380e533a3b5 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_262) on Wed Mar 10 21:50:11 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>CommandLineParser (Eclipse MOSAIC Parent 21.0 API)</title>
<meta name="date" content="2021-03-10">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="CommandLineParser (Eclipse MOSAIC Parent 21.0 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/CommandLineParser.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineOption.html" title="annotation in org.eclipse.mosaic.lib.util.cli"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" target="_top">Frames</a></li>
<li><a href="CommandLineParser.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.mosaic.lib.util.cli</div>
<h2 title="Class CommandLineParser" class="title">Class CommandLineParser&lt;T&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.mosaic.lib.util.cli.CommandLineParser&lt;T&gt;</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - class of the parameter object, which later holds the parsed parameter values</dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">CommandLineParser&lt;T&gt;</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">Helper class, which automatically converts a list of arguments from the command line into a parameter object and vice versa.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html#CommandLineParser-java.lang.Class-">CommandLineParser</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&gt;&nbsp;parameterClass)</code>
<div class="block">Constructs a new CLIParser with a class of the parameter object, which later holds the
parameter values.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>org.apache.commons.cli.Options</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html#getOptions--">getOptions</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html#parseArguments-java.lang.String:A-T-">parseArguments</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args,
<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&nbsp;parameters)</code>
<div class="block">Parses a list of arguments (POSIX style) and writes the set values into the given parameter object.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html#printHelp--">printHelp</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html#printHelp-java.io.PrintWriter-">printHelp</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;printWriter)</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html#transformToArguments-T-">transformToArguments</a></span>(<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&nbsp;parameters)</code>
<div class="block">Transforms the object, which holds the parameter values into a list of arguments, which can be
used to start MOSAIC processes with valid arguments.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="class in org.eclipse.mosaic.lib.util.cli">CommandLineParser</a>&lt;<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html#usageHint-java.lang.String-java.lang.String-java.lang.String-">usageHint</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;usageHint,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;header,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;footer)</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="CommandLineParser-java.lang.Class-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CommandLineParser</h4>
<pre>public&nbsp;CommandLineParser(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&gt;&nbsp;parameterClass)</pre>
<div class="block">Constructs a new CLIParser with a class of the parameter object, which later holds the
parameter values. This must also declare all command line related properties, such
as the name of the option and its description. For this, the fields in the given class
need to be public and need to be annotated with <a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineOption.html" title="annotation in org.eclipse.mosaic.lib.util.cli"><code>CommandLineOption</code></a>. Everything else
is done by this parser.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="parseArguments-java.lang.String:A-java.lang.Object-">
<!-- -->
</a><a name="parseArguments-java.lang.String:A-T-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parseArguments</h4>
<pre>public final&nbsp;<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&nbsp;parseArguments(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args,
<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&nbsp;parameters)
throws org.apache.commons.cli.ParseException</pre>
<div class="block">Parses a list of arguments (POSIX style) and writes the set values into the given parameter object.
The parameter object should be of the same class as this parser is initialized with.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>org.apache.commons.cli.ParseException</code></dd>
</dl>
</li>
</ul>
<a name="transformToArguments-java.lang.Object-">
<!-- -->
</a><a name="transformToArguments-T-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>transformToArguments</h4>
<pre>public final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;transformToArguments(<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&nbsp;parameters)</pre>
<div class="block">Transforms the object, which holds the parameter values into a list of arguments, which can be
used to start MOSAIC processes with valid arguments.</div>
</li>
</ul>
<a name="printHelp-java.io.PrintWriter-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printHelp</h4>
<pre>public&nbsp;void&nbsp;printHelp(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;printWriter)</pre>
</li>
</ul>
<a name="printHelp--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printHelp</h4>
<pre>public&nbsp;void&nbsp;printHelp()</pre>
</li>
</ul>
<a name="getOptions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOptions</h4>
<pre>public final&nbsp;org.apache.commons.cli.Options&nbsp;getOptions()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>all options declared in the parameter object this parser has been initialized with</dd>
</dl>
</li>
</ul>
<a name="usageHint-java.lang.String-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>usageHint</h4>
<pre>public&nbsp;<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="class in org.eclipse.mosaic.lib.util.cli">CommandLineParser</a>&lt;<a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" title="type parameter in CommandLineParser">T</a>&gt;&nbsp;usageHint(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;usageHint,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;header,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;footer)</pre>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/CommandLineParser.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/eclipse/mosaic/lib/util/cli/CommandLineOption.html" title="annotation in org.eclipse.mosaic.lib.util.cli"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/eclipse/mosaic/lib/util/cli/CommandLineParser.html" target="_top">Frames</a></li>
<li><a href="CommandLineParser.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2020&#x2013;2021 <a href="https://www.fokus.fraunhofer.de/">Fraunhofer FOKUS</a>. All rights reserved.</small></p>
</body>
</html>