blob: e51d08d6bea2a042e5176ef243ca0a69540c7759 [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (19) -->
<title>DefaultParameterValueGroup (Apache SIS 1.3 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.sis.parameter, class: DefaultParameterValueGroup">
<meta name="generator" content="javadoc/ClassWriterImpl">
<meta name="keywords" content="org.apache.sis.parameter.DefaultParameterValueGroup class">
<meta name="keywords" content="getDescriptor()">
<meta name="keywords" content="values()">
<meta name="keywords" content="getOrCreate()">
<meta name="keywords" content="parameter()">
<meta name="keywords" content="groups()">
<meta name="keywords" content="addGroup()">
<meta name="keywords" content="equals()">
<meta name="keywords" content="hashCode()">
<meta name="keywords" content="clone()">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../sis.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/DefaultParameterValueGroup.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#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<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="sub-nav-list">
<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>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.sis.parameter</a></div>
<h1 title="Class DefaultParameterValueGroup" class="title">Class DefaultParameterValueGroup</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
<div class="inheritance"><a href="Parameters.html" title="class in org.apache.sis.parameter">Parameters</a>
<div class="inheritance">DefaultParameterValueGroup</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code>, <code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Cloneable.html" title="class or interface in java.lang" class="external-link">Cloneable</a></code>, <code><a href="../util/LenientComparable.html" title="interface in org.apache.sis.util">Lenient­Comparable</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">General­Parameter­Value</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">DefaultParameterValueGroup</span>
<span class="extends-implements">extends <a href="Parameters.html" title="class in org.apache.sis.parameter">Parameters</a>
implements <a href="../util/LenientComparable.html" title="interface in org.apache.sis.util">LenientComparable</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></span></div>
<div class="block">A group of related parameter values. Parameter groups have some similarities with <code>java​.util​.Map</code>:
<ul>
<li><a href="#parameter(java.lang.String)"><code>parameter(String)</code></a> is similar in purpose to <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Map.html#get(java.lang.Object)" title="class or interface in java.util" class="external-link"><code>Map​.get(Object)</code></a>,
with an additional level of indirection in both the argument and the return value.</li>
<li><a href="#values()"><code>values()</code></a> is similar in purpose to <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Map.html#entrySet()" title="class or interface in java.util" class="external-link"><code>Map​.entry­Set()</code></a>,
with <code>Parameter­Value</code> playing a role similar to <code>Map​.Entry</code>.</li>
</ul>
<h2>Instantiation and validity constraints</h2>
<code>Parameter­Value­Group</code> instances are typically created by calls to
<code>descriptor.<a href="DefaultParameterDescriptorGroup.html#createValue()">create­Value()</a></code> on a descriptor
supplied by a coordinate operation or process provider. New instances are initialized with a <a href="#values()">list of values</a> containing all mandatory parameters, and no optional parameter. The values list is modifiable, but
all methods will first ensure that the modification would not violate the cardinality constraints (i.e. the minimum
and maximum occurrences of that parameter allowed by the descriptor). If a cardinality constraint is violated, then
an <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/InvalidParameterCardinalityException.html" title="class or interface in org.opengis.parameter" class="external-link"><code>Invalid­Parameter­Cardinality­Exception</code></a> will be thrown.
<h2>Setting the parameter values</h2>
After a new <code>Parameter­Value­Group</code> instance has been created, the parameter values can be set by chaining
calls to <a href="#parameter(java.lang.String)"><code>parameter(String)</code></a> with one of the <code>set­Value(…)</code> methods defined in the returned object
(see the <a href="DefaultParameterValue.html" title="class in org.apache.sis.parameter">table of setter methods</a>). The <code>parameter(String)</code> method can
be invoked regardless of whether the parameter is mandatory or optional: if the parameter was optional and not
yet present in this group, it will be created.
<div class="note"><b>Example:</b>
Assuming the descriptor defined in the <a href="DefaultParameterDescriptorGroup.html" title="class in org.apache.sis.parameter"><code>Default­Parameter­Descriptor­Group</code></a> example,
one can set <cite>Mercator (variant A)</cite> projection parameters as below:
<blockquote><pre>ParameterValueGroup mercator = Mercator.PARAMETERS.<b>createValue</b>();
mercator.<b>parameter</b>(<font color="orangered">"Longitude of natural origin"</font>).<b>setValue</b>(-60, Units.DEGREE); <i><font color="gray">// 60°W</font></i>
mercator.<b>parameter</b>(<font color="orangered">"Latitude of natural origin"</font>) .<b>setValue</b>( 40, Units.DEGREE); <i><font color="gray">// 40°N</font></i>
<i><font color="gray">// Keep default values for other parameters.</font></i></pre></blockquote>
</div>
Alternatively, if all parameters were created elsewhere and the user wants to copy them in a new
parameter group, the <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html#addAll(java.util.Collection)" title="class or interface in java.util" class="external-link"><code>List​.add­All(Collection)</code></a> method can be invoked on the values list.
<div class="note"><b>Example:</b>
<blockquote><pre>ParameterValue&lt;?&gt;[] parameter = ...; <i><font color="gray">// Defined elsewhere.</font></i>
ParameterValueGroup mercator = Mercator.PARAMETERS.<b>createValue</b>();
Collections.<b>addAll</b>(mercator.<b>values</b>(), parameters);</pre></blockquote>
</div>
Optional parameters can be removed by the usual <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html#remove(int)" title="class or interface in java.util" class="external-link"><code>List​.remove(int)</code></a> or <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html#remove(java.lang.Object)" title="class or interface in java.util" class="external-link"><code>List​.remove(Object)</code></a>
operations on the values list. But attempts to remove a mandatory parameter will cause an
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/InvalidParameterCardinalityException.html" title="class or interface in org.opengis.parameter" class="external-link"><code>Invalid­Parameter­Cardinality­Exception</code></a> to be thrown.
<p>Calls to <code>values()​.clear()</code> restore this <code>Default­Parameter­Value­Group</code> to its initial state.</p></div>
<dl class="notes">
<dt>Since:</dt>
<dd>0.4</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="DefaultParameterDescriptorGroup.html" title="class in org.apache.sis.parameter"><code>Default­Parameter­Descriptor­Group</code></a></li>
<li><a href="DefaultParameterValue.html" title="class in org.apache.sis.parameter"><code>Default­Parameter­Value</code></a></li>
<li><a href="../../../../serialized-form.html#org.apache.sis.parameter.DefaultParameterValueGroup">Serialized Form</a></li>
</ul>
</dd>
<p><font size="-1">Defined in the <code>sis-referencing</code> module</font></p>
</dl>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(org.opengis.parameter.ParameterDescriptorGroup)" class="member-name-link">Default­Parameter­Value­Group</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptorGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Descriptor­Group</a>&nbsp;descriptor)</code></div>
<div class="col-last even-row-color">
<div class="block">Creates a parameter group from the specified descriptor.</div>
</div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(org.opengis.parameter.ParameterValueGroup)" class="member-name-link">Default­Parameter­Value­Group</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a>&nbsp;parameters)</code></div>
<div class="col-last odd-row-color">
<div class="block">Creates a new instance initialized with all values from the specified parameter group.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addGroup(java.lang.String)" class="member-name-link">add­Group</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Creates a new subgroup of the specified name, and adds it to the list of subgroups.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="DefaultParameterValueGroup.html" title="class in org.apache.sis.parameter">Default­Parameter­Value­Group</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#clone()" class="member-name-link">clone</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a deep copy of this group of parameter values.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object)" class="member-name-link">equals</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;object)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Compares the specified object with this parameter for equality.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object,org.apache.sis.util.ComparisonMode)" class="member-name-link">equals</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;object,
<a href="../util/ComparisonMode.html" title="enum class in org.apache.sis.util">Comparison­Mode</a>&nbsp;mode)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Compares the specified object with this parameter for equality.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptorGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Descriptor­Group</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDescriptor()" class="member-name-link">get­Descriptor</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the abstract definition of this group of parameters.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>&lt;T&gt;&nbsp;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value</a>&lt;T&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOrCreate(org.opengis.parameter.ParameterDescriptor)" class="member-name-link">get­Or­Create</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptor.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Descriptor</a>&lt;T&gt;&nbsp;parameter)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the parameter identified by the given descriptor.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#groups(java.lang.String)" class="member-name-link">groups</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns all subgroups with the specified name.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hashCode()" class="member-name-link">hash­Code</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a hash value for this parameter.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value</a>&lt;?&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#parameter(java.lang.String)" class="member-name-link">parameter</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the value in this group for the specified name.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">General­Parameter­Value</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#values()" class="member-name-link">values</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the values in this group.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-Parameters">Methods inherited from class&nbsp;<a href="Parameters.html" title="class in org.apache.sis.parameter">Parameters</a></h3>
<code><a href="Parameters.html#booleanValue(org.opengis.parameter.ParameterDescriptor)">boolean­Value</a>, <a href="Parameters.html#cast(org.opengis.parameter.ParameterDescriptor,java.lang.Class)">cast</a>, <a href="Parameters.html#cast(org.opengis.parameter.ParameterValue,java.lang.Class)">cast</a>, <a href="Parameters.html#castOrWrap(org.opengis.parameter.ParameterValueGroup)">cast­Or­Wrap</a>, <a href="Parameters.html#copy(org.opengis.parameter.ParameterValueGroup,org.opengis.parameter.ParameterValueGroup)">copy</a>, <a href="Parameters.html#doubleValue(org.opengis.parameter.ParameterDescriptor)">double­Value</a>, <a href="Parameters.html#doubleValue(org.opengis.parameter.ParameterDescriptor,javax.measure.Unit)">double­Value</a>, <a href="Parameters.html#doubleValueList(org.opengis.parameter.ParameterDescriptor)">double­Value­List</a>, <a href="Parameters.html#getDescriptors(org.opengis.parameter.GeneralParameterValue...)">get­Descriptors</a>, <a href="Parameters.html#getMandatoryValue(org.opengis.parameter.ParameterDescriptor)">get­Mandatory­Value</a>, <a href="Parameters.html#getMemberName(org.opengis.parameter.ParameterDescriptor)">get­Member­Name</a>, <a href="Parameters.html#getValue(org.opengis.parameter.ParameterDescriptor)">get­Value</a>, <a href="Parameters.html#getValueDomain(org.opengis.parameter.ParameterDescriptor)">get­Value­Domain</a>, <a href="Parameters.html#intValue(org.opengis.parameter.ParameterDescriptor)">int­Value</a>, <a href="Parameters.html#intValueList(org.opengis.parameter.ParameterDescriptor)">int­Value­List</a>, <a href="Parameters.html#isUnmodifiable(org.opengis.parameter.ParameterValueGroup)">is­Unmodifiable</a>, <a href="Parameters.html#print()">print</a>, <a href="Parameters.html#stringValue(org.opengis.parameter.ParameterDescriptor)">string­Value</a>, <a href="Parameters.html#toString()">to­String</a>, <a href="Parameters.html#unmodifiable(org.opengis.parameter.ParameterValueGroup)">unmodifiable</a>, <a href="Parameters.html#unmodifiable(org.opengis.parameter.ParameterValueGroup,java.util.function.Predicate)">unmodifiable</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-Object">Methods inherited from class&nbsp;<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">get­Class</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notify­All</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(org.opengis.parameter.ParameterDescriptorGroup)">
<h3>DefaultParameterValueGroup</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">DefaultParameterValueGroup</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptorGroup.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterDescriptorGroup</a>&nbsp;descriptor)</span></div>
<div class="block">Creates a parameter group from the specified descriptor.
<h4>Usage note</h4>
<code>Parameter­Value­Group</code> are usually not instantiated directly. Instead, consider invoking
<code>descriptor.<a href="DefaultParameterDescriptorGroup.html#createValue()">create­Value()</a></code>
on a descriptor supplied by a map projection or process provider.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>descriptor</code> - the descriptor for this group.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(org.opengis.parameter.ParameterValueGroup)">
<h3>DefaultParameterValueGroup</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">DefaultParameterValueGroup</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterValueGroup</a>&nbsp;parameters)</span></div>
<div class="block">Creates a new instance initialized with all values from the specified parameter group.
This is a <em>shallow</em> copy constructor, since the values contained in the given
group is not cloned.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>parameters</code> - The parameters to copy values from.</dd>
<dt>Since:</dt>
<dd>0.6</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="#clone()"><code>clone()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getDescriptor()">
<h3>getDescriptor</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptorGroup.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterDescriptorGroup</a></span>&nbsp;<span class="element-name">getDescriptor</span>()</div>
<div class="block">Returns the abstract definition of this group of parameters.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterValue.html#getDescriptor()" title="class or interface in org.opengis.parameter" class="external-link">get­Descriptor</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">General­Parameter­Value</a></code></dd>
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html#getDescriptor()" title="class or interface in org.opengis.parameter" class="external-link">get­Descriptor</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></dd>
<dt>Returns:</dt>
<dd>the abstract definition of this group of parameters.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="values()">
<h3>values</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">GeneralParameterValue</a>&gt;</span>&nbsp;<span class="element-name">values</span>()</div>
<div class="block">Returns the values in this group. The returned list is <em>live</em>:
changes in this list are reflected on this <code>Parameter­Value­Group</code>, and conversely.
<h4>Restrictions</h4>
All write operations must comply to the following conditions:
<ul>
<li>Parameters added to the list shall have one of the descriptors listed by <a href="#getDescriptor()"><code>get­Descriptor()</code></a>.</li>
<li>Adding or removing parameters shall not violate the parameter cardinality constraints.</li>
</ul>
The list will verify those conditions and throws <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/InvalidParameterNameException.html" title="class or interface in org.opengis.parameter" class="external-link"><code>Invalid­Parameter­Name­Exception</code></a>,
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/InvalidParameterCardinalityException.html" title="class or interface in org.opengis.parameter" class="external-link"><code>Invalid­Parameter­Cardinality­Exception</code></a> or other runtime exceptions if a condition
is not met.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html#values()" title="class or interface in org.opengis.parameter" class="external-link">values</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></dd>
<dt>Returns:</dt>
<dd>the values in this group.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getOrCreate(org.opengis.parameter.ParameterDescriptor)">
<h3>getOrCreate</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterValue</a>&lt;T&gt;</span>&nbsp;<span class="element-name">getOrCreate</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptor.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterDescriptor</a>&lt;T&gt;&nbsp;parameter)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterNotFoundException</a></span></div>
<div class="block">Returns the parameter identified by the given descriptor.
If the identified parameter is optional and not yet created, then it will be created now.</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="Parameters.html#getOrCreate(org.opengis.parameter.ParameterDescriptor)">get­Or­Create</a></code>&nbsp;in class&nbsp;<code><a href="Parameters.html" title="class in org.apache.sis.parameter">Parameters</a></code></dd>
<dt>Type Parameters:</dt>
<dd><code>T</code> - the type of the parameter value.</dd>
<dt>Parameters:</dt>
<dd><code>parameter</code> - the parameter to look for.</dd>
<dt>Returns:</dt>
<dd>the requested parameter instance.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Not­Found­Exception</a></code> - if the given <code>parameter</code> name or alias is not legal for this group.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="Parameters.html#getValue(org.opengis.parameter.ParameterDescriptor)"><code>Parameters​.get­Value(Parameter­Descriptor)</code></a></li>
<li><a href="Parameters.html#getMandatoryValue(org.opengis.parameter.ParameterDescriptor)"><code>Parameters​.get­Mandatory­Value(Parameter­Descriptor)</code></a></li>
<li><a href="#parameter(java.lang.String)"><code>parameter(String)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parameter(java.lang.String)">
<h3>parameter</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterValue</a>&lt;?&gt;</span>&nbsp;<span class="element-name">parameter</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterNotFoundException</a></span></div>
<div class="block">Returns the value in this group for the specified name.
This method performs the first applicable action in the following choices:
<ul>
<li>If this group contains a parameter value of the given name, then that parameter is returned.</li>
<li>Otherwise if a <a href="DefaultParameterDescriptorGroup.html#descriptor(java.lang.String)">descriptor</a> of the
given name exists, then a new <code>Parameter­Value</code> instance is
<a href="DefaultParameterDescriptor.html#createValue()">created</a>, added to this group and returned.</li>
<li>Otherwise a <code>Parameter­Not­Found­Exception</code> is thrown.</li>
</ul>
This convenience method provides a way to get and set parameter values by name.
For example, the following idiom fetches a floating point value for the <cite>False easting</cite>
and <cite>False northing</cite> parameters and set a new value for the <cite>False easting</cite> one:
<blockquote><pre><font color="green">double</font> easting = <b>parameter</b>(<font color="orangered">"False easting"</font> ).<b>doubleValue</b>();
<font color="green">double</font> northing = <b>parameter</b>(<font color="orangered">"False northing"</font>).<b>doubleValue</b>();
<b>parameter</b>(<font color="orangered">"False easting"</font>).<b>setValue</b>(500000.0);</pre></blockquote>
<div class="note"><b>API note:</b> there is no <code>parameter<b><u>s</u></b>(String)</code> method
returning a list of parameter values because the ISO 19111 standard fixes the <code>Parameter­Value</code>
<a href="AbstractParameterDescriptor.html#getMaximumOccurs()">maximum occurrence</a> to 1.</div>
<h4>Parameters subgroups</h4>
This method does not search recursively in subgroups. This is because more than one subgroup
may exist for the same <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterDescriptorGroup.html" title="class or interface in org.opengis.parameter" class="external-link">descriptor</a>. The user have to
<a href="#groups(java.lang.String)">query all subgroups</a> and select explicitly the appropriate one.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html#parameter(java.lang.String)" title="class or interface in org.opengis.parameter" class="external-link">parameter</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></dd>
<dt>Parameters:</dt>
<dd><code>name</code> - the name of the parameter to search for.</dd>
<dt>Returns:</dt>
<dd>the parameter value for the given name.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Not­Found­Exception</a></code> - if there is no parameter value for the given name.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="Parameters.html#getValue(org.opengis.parameter.ParameterDescriptor)"><code>Parameters​.get­Value(Parameter­Descriptor)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="groups(java.lang.String)">
<h3>groups</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterValueGroup</a>&gt;</span>&nbsp;<span class="element-name">groups</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterNotFoundException</a></span></div>
<div class="block">Returns all subgroups with the specified name.
Groups are listed in the order they were added by calls to <a href="#addGroup(java.lang.String)"><code>add­Group(String)</code></a>.
<p>This method does not create new groups: if the requested group is optional (i.e.
<code><a href="AbstractParameterDescriptor.html#getMinimumOccurs()">minimum­Occurs</a> == 0</code>)
and no value were defined previously, then this method returns an empty set.</p></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html#groups(java.lang.String)" title="class or interface in org.opengis.parameter" class="external-link">groups</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></dd>
<dt>Parameters:</dt>
<dd><code>name</code> - the name of the parameter to search for.</dd>
<dt>Returns:</dt>
<dd>the list of all parameter group for the given name, in insertion order.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Not­Found­Exception</a></code> - if no descriptor was found for the given name.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addGroup(java.lang.String)">
<h3>addGroup</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterValueGroup</a></span>&nbsp;<span class="element-name">addGroup</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterNotFoundException</a>,
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/InvalidParameterCardinalityException.html" title="class or interface in org.opengis.parameter" class="external-link">InvalidParameterCardinalityException</a></span></div>
<div class="block">Creates a new subgroup of the specified name, and adds it to the list of subgroups.
The argument shall be the name of a <a href="DefaultParameterDescriptorGroup.html" title="class in org.apache.sis.parameter">descriptor group</a>
which is a child of this group.
<div class="note"><b>API note:</b>
There is no <code>remove­Group(String)</code> method. To remove a group, users can inspect the
<a href="#groups(java.lang.String)"><code>groups(String)</code></a> or <a href="#values()"><code>values()</code></a> list, decide which occurrences to remove if
there is many of them for the same name, and whether to iterate recursively into sub-groups or not.</div></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html#addGroup(java.lang.String)" title="class or interface in org.opengis.parameter" class="external-link">add­Group</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></dd>
<dt>Parameters:</dt>
<dd><code>name</code> - the name of the parameter group to create.</dd>
<dt>Returns:</dt>
<dd>a newly created parameter group for the given name.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterNotFoundException.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Not­Found­Exception</a></code> - if no descriptor was found for the given name.</dd>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/InvalidParameterCardinalityException.html" title="class or interface in org.opengis.parameter" class="external-link">Invalid­Parameter­Cardinality­Exception</a></code> - if this parameter group already contains the
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterDescriptor.html#getMaximumOccurs()" title="class or interface in org.opengis.parameter" class="external-link">maximum number of occurrences</a>
of subgroups of the given name.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="equals(java.lang.Object,org.apache.sis.util.ComparisonMode)">
<h3>equals</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">equals</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;object,
<a href="../util/ComparisonMode.html" title="enum class in org.apache.sis.util">ComparisonMode</a>&nbsp;mode)</span></div>
<div class="block">Compares the specified object with this parameter for equality.
The strictness level is controlled by the second argument:
<ul>
<li><a href="../util/ComparisonMode.html#STRICT"><code>Comparison­Mode​.STRICT</code></a> and <a href="../util/ComparisonMode.html#BY_CONTRACT"><code>BY_CONTRACT</code></a>
take in account the parameter order.</li>
<li><a href="../util/ComparisonMode.html#IGNORE_METADATA"><code>Comparison­Mode​.IGNORE_METADATA</code></a> and <a href="../util/ComparisonMode.html#APPROXIMATE"><code>APPROXIMATE</code></a>
ignore the order of parameter values (but not necessarily the order of parameter descriptors).</li>
</ul></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../util/LenientComparable.html#equals(java.lang.Object,org.apache.sis.util.ComparisonMode)">equals</a></code>&nbsp;in interface&nbsp;<code><a href="../util/LenientComparable.html" title="interface in org.apache.sis.util">Lenient­Comparable</a></code></dd>
<dt>Parameters:</dt>
<dd><code>object</code> - the object to compare to <code>this</code>.</dd>
<dd><code>mode</code> - the strictness level of the comparison.</dd>
<dt>Returns:</dt>
<dd><code>true</code> if both objects are equal according the given comparison mode.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="../util/Utilities.html#deepEquals(java.lang.Object,java.lang.Object,org.apache.sis.util.ComparisonMode)"><code>Utilities​.deep­Equals(Object, Object, Comparison­Mode)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="equals(java.lang.Object)">
<h3>equals</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">equals</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;object)</span></div>
<div class="block">Compares the specified object with this parameter for equality.
This method is implemented as below:
<blockquote><pre><font color="green">return</font> <b>equals</b>(other, ComparisonMode.STRICT);</pre></blockquote>
Subclasses shall override <a href="#equals(java.lang.Object,org.apache.sis.util.ComparisonMode)"><code>equals(Object, Comparison­Mode)</code></a> instead of this method.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../util/LenientComparable.html#equals(java.lang.Object)">equals</a></code>&nbsp;in interface&nbsp;<code><a href="../util/LenientComparable.html" title="interface in org.apache.sis.util">Lenient­Comparable</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd>
<dt>Parameters:</dt>
<dd><code>object</code> - the object to compare to <code>this</code>.</dd>
<dt>Returns:</dt>
<dd><code>true</code> if both objects are equal.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../util/ComparisonMode.html#STRICT"><code>Comparison­Mode​.STRICT</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hashCode()">
<h3>hashCode</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">hashCode</span>()</div>
<div class="block">Returns a hash value for this parameter.</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hash­Code</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd>
<dt>Returns:</dt>
<dd>the hash code value. This value does not need to be the same
in past or future versions of this class.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="clone()">
<h3>clone</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="DefaultParameterValueGroup.html" title="class in org.apache.sis.parameter">DefaultParameterValueGroup</a></span>&nbsp;<span class="element-name">clone</span>()</div>
<div class="block">Returns a deep copy of this group of parameter values.
Included parameter values and subgroups are cloned recursively.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterValue.html#clone()" title="class or interface in org.opengis.parameter" class="external-link">clone</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/GeneralParameterValue.html" title="class or interface in org.opengis.parameter" class="external-link">General­Parameter­Value</a></code></dd>
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html#clone()" title="class or interface in org.opengis.parameter" class="external-link">clone</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/parameter/ParameterValueGroup.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Value­Group</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="Parameters.html#clone()">clone</a></code>&nbsp;in class&nbsp;<code><a href="Parameters.html" title="class in org.apache.sis.parameter">Parameters</a></code></dd>
<dt>Returns:</dt>
<dd>a copy of this group of parameter values.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="Parameters.html#copy(org.opengis.parameter.ParameterValueGroup,org.opengis.parameter.ParameterValueGroup)"><code>Parameters​.copy(Parameter­Value­Group, Parameter­Value­Group)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2010&#x2013;2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>