blob: 0bac6c5ee0cb5cb281db0dda901e868ea6d4ec51 [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (21) on Thu Oct 05 19:54:57 CEST 2023 -->
<title>ConcurrentAuthorityFactory (Apache SIS 1.4 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="dc.created" content="2023-10-05">
<meta name="description" content="declaration: module: org.apache.sis.referencing, package: org.apache.sis.referencing.factory, class: ConcurrentAuthorityFactory">
<meta name="generator" content="javadoc/ClassWriterImpl">
<meta name="keywords" content="org.apache.sis.referencing.factory.ConcurrentAuthorityFactory class">
<meta name="keywords" content="newDataAccess()">
<meta name="keywords" content="canClose()">
<meta name="keywords" content="getTimeout()">
<meta name="keywords" content="setTimeout()">
<meta name="keywords" content="getAuthority()">
<meta name="keywords" content="getAuthorityCodes()">
<meta name="keywords" content="getDescriptionText()">
<meta name="keywords" content="normalizeCode()">
<meta name="keywords" content="createObject()">
<meta name="keywords" content="createCoordinateReferenceSystem()">
<meta name="keywords" content="createGeographicCRS()">
<meta name="keywords" content="createGeocentricCRS()">
<meta name="keywords" content="createProjectedCRS()">
<meta name="keywords" content="createVerticalCRS()">
<meta name="keywords" content="createTemporalCRS()">
<meta name="keywords" content="createCompoundCRS()">
<meta name="keywords" content="createDerivedCRS()">
<meta name="keywords" content="createEngineeringCRS()">
<meta name="keywords" content="createImageCRS()">
<meta name="keywords" content="createDatum()">
<meta name="keywords" content="createGeodeticDatum()">
<meta name="keywords" content="createVerticalDatum()">
<meta name="keywords" content="createTemporalDatum()">
<meta name="keywords" content="createEngineeringDatum()">
<meta name="keywords" content="createImageDatum()">
<meta name="keywords" content="createEllipsoid()">
<meta name="keywords" content="createPrimeMeridian()">
<meta name="keywords" content="createExtent()">
<meta name="keywords" content="createCoordinateSystem()">
<meta name="keywords" content="createEllipsoidalCS()">
<meta name="keywords" content="createVerticalCS()">
<meta name="keywords" content="createTimeCS()">
<meta name="keywords" content="createCartesianCS()">
<meta name="keywords" content="createSphericalCS()">
<meta name="keywords" content="createCylindricalCS()">
<meta name="keywords" content="createPolarCS()">
<meta name="keywords" content="createCoordinateSystemAxis()">
<meta name="keywords" content="createUnit()">
<meta name="keywords" content="createParameterDescriptor()">
<meta name="keywords" content="createOperationMethod()">
<meta name="keywords" content="createCoordinateOperation()">
<meta name="keywords" content="createFromCoordinateReferenceSystemCodes()">
<meta name="keywords" content="newIdentifiedObjectFinder()">
<meta name="keywords" content="isCacheable()">
<meta name="keywords" content="printCacheContent()">
<meta name="keywords" content="close()">
<meta name="keywords" content="toString()">
<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">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.6.1.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="../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</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="module-label-in-type">Module</span>&nbsp;<a href="../../../../../module-summary.html">org.apache.sis.referencing</a></div>
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.sis.referencing.factory</a></div>
<h1 title="Class ConcurrentAuthorityFactory" class="title">Class ConcurrentAuthorityFactory&lt;DAO extends <a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">GeodeticAuthorityFactory</a>&gt;</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/11/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="../../../../../../org.apache.sis.metadata/org/apache/sis/util/iso/AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a>
<div class="inheritance"><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">GeodeticAuthorityFactory</a>
<div class="inheritance">ConcurrentAuthorityFactory&lt;DAO&gt;</div>
</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>DAO</code> - the type of factory used as Data Access Object (DAO).</dd>
</dl>
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/AutoCloseable.html" title="class or interface in java.lang" class="external-link">Auto­Closeable</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html" title="class or interface in org.opengis.referencing" class="external-link">Authority­Factory</a></code>, <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/Factory.html" title="class or interface in org.opengis.util" class="external-link">Factory</a></code></dd>
</dl>
<dl class="notes">
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="sql/EPSGFactory.html" title="class in org.apache.sis.referencing.factory.sql">EPSGFactory</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public abstract class </span><span class="element-name type-name-label">ConcurrentAuthorityFactory&lt;DAO extends <a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">GeodeticAuthorityFactory</a>&gt;</span>
<span class="extends-implements">extends <a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">GeodeticAuthorityFactory</a>
implements <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/AutoCloseable.html" title="class or interface in java.lang" class="external-link">AutoCloseable</a></span></div>
<div class="block">A concurrent authority factory that caches all objects created by another factory.
All <code>create­Foo(String)</code> methods first check if a previously created object exists for the given code.
If such object exists, it is returned. Otherwise, the object creation is delegated to another factory given
by <a href="#newDataAccess()"><code>new­Data­Access()</code></a> and the result is cached in this factory.
<p><code>Concurrent­Authority­Factory</code> delays the call to <code>new­Data­Access()</code> until first needed,
and <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/AutoCloseable.html#close()" title="class or interface in java.lang" class="external-link">closes</a> the factory used as a <cite>Data Access Object</cite>
(DAO) after some timeout. This approach allows to establish a connection to a database (for example)
and keep it only for a relatively short amount of time.</p>
<h2 id="caching-strategy-heading">Caching strategy</h2>
Objects are cached by strong references, up to the amount of objects specified at construction time.
If a greater amount of objects are cached, then the oldest ones will be retained through a
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/ref/WeakReference.html" title="class or interface in java.lang.ref" class="external-link">weak reference</a> instead of a strong one.
This means that this caching factory will continue to return those objects as long as they are in use somewhere
else in the Java virtual machine, but will be discarded (and recreated on the fly if needed) otherwise.
<h2 id="multi-threading-heading">Multi-threading</h2>
The cache managed by this class is concurrent. However, the Data Access Objects (DAO) are assumed non-concurrent.
If two or more threads are accessing this factory at the same time, then two or more Data Access Object instances
may be created. The maximal amount of instances to create is specified at <code>Concurrent­Authority­Factory</code>
construction time. If more Data Access Object instances are needed, some of the threads will block until an
instance become available.
<h2 id="note-for-subclasses-heading">Note for subclasses</h2>
This abstract class does not implement any of the <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html" title="class or interface in org.opengis.referencing.datum" class="external-link"><code>Datum­Authority­Factory</code></a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html" title="class or interface in org.opengis.referencing.cs" class="external-link"><code>CSAuthority­Factory</code></a>,
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html" title="class or interface in org.opengis.referencing.crs" class="external-link"><code>CRSAuthority­Factory</code></a> and <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperationAuthorityFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link"><code>Coordinate­Operation­Authority­Factory</code></a> interfaces.
Subclasses should select the interfaces that they choose to implement.</div>
<dl class="notes">
<dt>Since:</dt>
<dd>0.7</dd>
</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 three-column-summary">
<div class="table-header col-first">Modifier</div>
<div class="table-header col-second">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>protected </code></div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.Class)" class="member-name-link">Concurrent­Authority­Factory</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;<a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a>&gt;&nbsp;data­Access­Class)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs an instance with a default number of threads and a default number of entries to keep
by strong references.</div>
</div>
<div class="col-first odd-row-color"><code>protected </code></div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.Class,int,int)" class="member-name-link">Concurrent­Authority­Factory</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;<a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a>&gt;&nbsp;data­Access­Class,
int&nbsp;max­Strong­References,
int&nbsp;max­Concurrent­Queries)</code></div>
<div class="col-last odd-row-color">
<div class="block">Constructs an instance with the specified number of entries to keep by strong references.</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-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract 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>protected boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#canClose(DAO)" class="member-name-link">can­Close</a><wbr>(<a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a>&nbsp;factory)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns <code>true</code> if the given Data Access Object (DAO) can be closed.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#close()" class="member-name-link">close</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Immediately closes all Data Access Objects that are closeable.</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/referencing/cs/CartesianCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Cartesian­CS</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCartesianCS(java.lang.String)" class="member-name-link">create­Cartesian­CS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a 2- or 3-dimensional Cartesian coordinate system made of straight orthogonal axes.</div>
</div>
<div class="col-first odd-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/referencing/crs/CompoundCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Compound­CRS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCompoundCRS(java.lang.String)" class="member-name-link">create­Compound­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 CRS describing the position of points through two or more independent coordinate reference systems.</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/referencing/operation/CoordinateOperation.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Coordinate­Operation</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCoordinateOperation(java.lang.String)" class="member-name-link">create­Coordinate­Operation</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns an operation for transforming coordinates in the source CRS to coordinates in the target CRS.</div>
</div>
<div class="col-first odd-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/referencing/crs/CoordinateReferenceSystem.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Coordinate­Reference­System</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCoordinateReferenceSystem(java.lang.String)" class="member-name-link">create­Coordinate­Reference­System</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns an arbitrary coordinate reference system from a code.</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/referencing/cs/CoordinateSystem.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Coordinate­System</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCoordinateSystem(java.lang.String)" class="member-name-link">create­Coordinate­System</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns an arbitrary coordinate system from a code.</div>
</div>
<div class="col-first odd-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/referencing/cs/CoordinateSystemAxis.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Coordinate­System­Axis</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCoordinateSystemAxis(java.lang.String)" class="member-name-link">create­Coordinate­System­Axis</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 coordinate system axis with name, direction, unit and range of values.</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/referencing/cs/CylindricalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Cylindrical­CS</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createCylindricalCS(java.lang.String)" class="member-name-link">create­Cylindrical­CS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a 3-dimensional coordinate system made of a polar coordinate system
extended by a straight perpendicular axis.</div>
</div>
<div class="col-first odd-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/referencing/datum/Datum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Datum</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createDatum(java.lang.String)" class="member-name-link">create­Datum</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns an arbitrary datum from a code.</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/referencing/crs/DerivedCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Derived­CRS</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createDerivedCRS(java.lang.String)" class="member-name-link">create­Derived­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a CRS that is defined by its coordinate conversion from another CRS (not by a datum).</div>
</div>
<div class="col-first odd-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/referencing/datum/Ellipsoid.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Ellipsoid</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createEllipsoid(java.lang.String)" class="member-name-link">create­Ellipsoid</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 geometric figure that can be used to describe the approximate shape of the earth.</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/referencing/cs/EllipsoidalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Ellipsoidal­CS</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createEllipsoidalCS(java.lang.String)" class="member-name-link">create­Ellipsoidal­CS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a 2- or 3-dimensional coordinate system for geodetic latitude and longitude, sometimes with ellipsoidal height.</div>
</div>
<div class="col-first odd-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/referencing/crs/EngineeringCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Engineering­CRS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createEngineeringCRS(java.lang.String)" class="member-name-link">create­Engineering­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 1-, 2- or 3-dimensional contextually local coordinate reference system.</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/referencing/datum/EngineeringDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Engineering­Datum</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createEngineeringDatum(java.lang.String)" class="member-name-link">create­Engineering­Datum</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a datum defining the origin of an engineering coordinate reference system.</div>
</div>
<div class="col-first odd-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/metadata/extent/Extent.html" title="class or interface in org.opengis.metadata.extent" class="external-link">Extent</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createExtent(java.lang.String)" class="member-name-link">create­Extent</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns information about spatial, vertical, and temporal extent (usually a domain of validity) from a code.</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/11/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a><wbr>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperation.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Coordinate­Operation</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="#createFromCoordinateReferenceSystemCodes(java.lang.String,java.lang.String)" class="member-name-link">create­From­Coordinate­Reference­System­Codes</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;source­CRS,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;target­CRS)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns operations from source and target coordinate reference system codes.</div>
</div>
<div class="col-first odd-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/referencing/crs/GeocentricCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Geocentric­CRS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createGeocentricCRS(java.lang.String)" class="member-name-link">create­Geocentric­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 3-dimensional coordinate reference system with the origin at the approximate centre of mass of the earth.</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/referencing/datum/GeodeticDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Geodetic­Datum</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createGeodeticDatum(java.lang.String)" class="member-name-link">create­Geodetic­Datum</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a datum defining the location and orientation of an ellipsoid that approximates the shape of the earth.</div>
</div>
<div class="col-first odd-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/referencing/crs/GeographicCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Geographic­CRS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createGeographicCRS(java.lang.String)" class="member-name-link">create­Geographic­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 2- or 3-dimensional coordinate reference system based on an ellipsoidal approximation of the geoid.</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/referencing/crs/ImageCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Image­CRS</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createImageCRS(java.lang.String)" class="member-name-link">create­Image­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a 2-dimensional engineering coordinate reference system applied to locations in images.</div>
</div>
<div class="col-first odd-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/referencing/datum/ImageDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Image­Datum</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createImageDatum(java.lang.String)" class="member-name-link">create­Image­Datum</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 datum defining the origin of an image coordinate reference system.</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/referencing/IdentifiedObject.html" title="class or interface in org.opengis.referencing" class="external-link">Identified­Object</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createObject(java.lang.String)" class="member-name-link">create­Object</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns an arbitrary object from a code.</div>
</div>
<div class="col-first odd-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/referencing/operation/OperationMethod.html" title="class or interface in org.opengis.referencing.operation" class="external-link">Operation­Method</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createOperationMethod(java.lang.String)" class="member-name-link">create­Operation­Method</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 description of the algorithm and parameters used to perform a coordinate operation.</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/ParameterDescriptor.html" title="class or interface in org.opengis.parameter" class="external-link">Parameter­Descriptor</a><wbr>&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="#createParameterDescriptor(java.lang.String)" class="member-name-link">create­Parameter­Descriptor</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a definition of a single parameter used by an operation method.</div>
</div>
<div class="col-first odd-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/referencing/cs/PolarCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Polar­CS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createPolarCS(java.lang.String)" class="member-name-link">create­Polar­CS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 2-dimensional coordinate system for coordinates represented by a distance from the origin
and an angle from a fixed direction.</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/referencing/datum/PrimeMeridian.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Prime­Meridian</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createPrimeMeridian(java.lang.String)" class="member-name-link">create­Prime­Meridian</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a prime meridian defining the origin from which longitude values are determined.</div>
</div>
<div class="col-first odd-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/referencing/crs/ProjectedCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Projected­CRS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createProjectedCRS(java.lang.String)" class="member-name-link">create­Projected­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 2-dimensional coordinate reference system used to approximate the shape of the earth on a planar surface.</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/referencing/cs/SphericalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Spherical­CS</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createSphericalCS(java.lang.String)" class="member-name-link">create­Spherical­CS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a 3-dimensional coordinate system with one distance measured from the origin and two angular coordinates.</div>
</div>
<div class="col-first odd-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/referencing/crs/TemporalCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Temporal­CRS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createTemporalCRS(java.lang.String)" class="member-name-link">create­Temporal­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 1-dimensional coordinate reference system used for the recording of time.</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/referencing/datum/TemporalDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Temporal­Datum</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createTemporalDatum(java.lang.String)" class="member-name-link">create­Temporal­Datum</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a datum defining the origin of a temporal coordinate reference system.</div>
</div>
<div class="col-first odd-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/referencing/cs/TimeCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Time­CS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createTimeCS(java.lang.String)" class="member-name-link">create­Time­CS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 1-dimensional coordinate system for heights or depths of points.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html" title="class or interface in javax.measure" class="external-link">Unit</a><wbr>&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="#createUnit(java.lang.String)" class="member-name-link">create­Unit</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns an unit of measurement from a code.</div>
</div>
<div class="col-first odd-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/referencing/crs/VerticalCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">Vertical­CRS</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createVerticalCRS(java.lang.String)" class="member-name-link">create­Vertical­CRS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 1-dimensional coordinate reference system used for recording heights or depths.</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/referencing/cs/VerticalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">Vertical­CS</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createVerticalCS(java.lang.String)" class="member-name-link">create­Vertical­CS</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a 1-dimensional coordinate system for heights or depths of points.</div>
</div>
<div class="col-first odd-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/referencing/datum/VerticalDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Vertical­Datum</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createVerticalDatum(java.lang.String)" class="member-name-link">create­Vertical­Datum</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 datum identifying a particular reference level surface used as a zero-height surface.</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/metadata/citation/Citation.html" title="class or interface in org.opengis.metadata.citation" class="external-link">Citation</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAuthority()" class="member-name-link">get­Authority</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 database or specification that defines the codes recognized by this factory.</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/11/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</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="#getAuthorityCodes(java.lang.Class)" class="member-name-link">get­Authority­Codes</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;? extends <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/IdentifiedObject.html" title="class or interface in org.opengis.referencing" class="external-link">Identified­Object</a>&gt;&nbsp;type)</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 set of authority codes for objects of the given type.</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/util/InternationalString.html" title="class or interface in org.opengis.util" class="external-link">International­String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDescriptionText(java.lang.String)" class="member-name-link">get­Description­Text</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets a description of the object corresponding to a code.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTimeout(java.util.concurrent.TimeUnit)" class="member-name-link">get­Timeout</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">Time­Unit</a>&nbsp;unit)</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 amount of time that <code>Concurrent­Authority­Factory</code> will wait before to close a Data Access Object.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isCacheable(java.lang.String,java.lang.Object)" class="member-name-link">is­Cacheable</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code,
<a href="https://docs.oracle.com/en/java/javase/11/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">Returns whether the given object can be cached.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>protected abstract <a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#newDataAccess()" class="member-name-link">new­Data­Access</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Creates a factory which will perform the actual geodetic object creation work.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="IdentifiedObjectFinder.html" title="class in org.apache.sis.referencing.factory">Identified­Object­Finder</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newIdentifiedObjectFinder()" class="member-name-link">new­Identified­Object­Finder</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 a finder which can be used for looking up unidentified objects.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#normalizeCode(java.lang.String)" class="member-name-link">normalize­Code</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</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 code equivalent to the given code but with unnecessary elements eliminated.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#printCacheContent(java.io.PrintWriter)" class="member-name-link">print­Cache­Content</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/PrintWriter.html" title="class or interface in java.io" class="external-link">Print­Writer</a>&nbsp;out)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Prints the cache content to the given writer.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setTimeout(long,java.util.concurrent.TimeUnit)" class="member-name-link">set­Timeout</a><wbr>(long&nbsp;delay,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">Time­Unit</a>&nbsp;unit)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets a timer for closing the Data Access Object after the specified amount of time of inactivity.</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/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">to­String</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 a string representation of this factory for debugging purpose only.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-GeodeticAuthorityFactory">Methods inherited from class&nbsp;<a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">GeodeticAuthorityFactory</a></h3>
<code><a href="GeodeticAuthorityFactory.html#createParametricCRS(java.lang.String)">create­Parametric­CRS</a>, <a href="GeodeticAuthorityFactory.html#createParametricCS(java.lang.String)">create­Parametric­CS</a>, <a href="GeodeticAuthorityFactory.html#createParametricDatum(java.lang.String)">create­Parametric­Datum</a>, <a href="GeodeticAuthorityFactory.html#getCodeSpaces()">get­Code­Spaces</a>, <a href="GeodeticAuthorityFactory.html#trimNamespace(java.lang.String)">trim­Namespace</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-AbstractFactory">Methods inherited from class&nbsp;<a href="../../../../../../org.apache.sis.metadata/org/apache/sis/util/iso/AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a></h3>
<code><a href="../../../../../../org.apache.sis.metadata/org/apache/sis/util/iso/AbstractFactory.html#getVendor()">get­Vendor</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/11/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/11/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/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/11/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/11/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hash­Code</a>, <a href="https://docs.oracle.com/en/java/javase/11/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/11/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/11/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/11/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/11/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>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-Factory">Methods inherited from interface&nbsp;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/Factory.html" title="class or interface in org.opengis.util" class="external-link">Factory</a></h3>
<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/Factory.html#getVendor()" title="class or interface in org.opengis.util" class="external-link">get­Vendor</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;(java.lang.Class)">
<h3>ConcurrentAuthorityFactory</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="element-name">ConcurrentAuthorityFactory</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;<a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a>&gt;&nbsp;dataAccessClass)</span></div>
<div class="block">Constructs an instance with a default number of threads and a default number of entries to keep
by strong references. Note that those default values may change in any future SIS versions based
on experience gained.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>data­Access­Class</code> - the class of Data Access Object (DAO) created by <a href="#newDataAccess()"><code>new­Data­Access()</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(java.lang.Class,int,int)">
<h3>ConcurrentAuthorityFactory</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="element-name">ConcurrentAuthorityFactory</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;<a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a>&gt;&nbsp;dataAccessClass,
int&nbsp;maxStrongReferences,
int&nbsp;maxConcurrentQueries)</span></div>
<div class="block">Constructs an instance with the specified number of entries to keep by strong references.
If a number of object greater than <code>max­Strong­References</code> are created, then the strong references
for the eldest objects will be replaced by weak references.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>data­Access­Class</code> - the class of Data Access Object (DAO) created by <a href="#newDataAccess()"><code>new­Data­Access()</code></a>.</dd>
<dd><code>max­Strong­References</code> - the maximum number of objects to keep by strong reference.</dd>
<dd><code>max­Concurrent­Queries</code> - the maximal amount of Data Access Objects to use concurrently.
If more than this amount of threads are querying this <code>Concurrent­Authority­Factory</code> concurrently,
additional threads will be blocked until a Data Access Object become available.</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="newDataAccess()">
<h3>newDataAccess</h3>
<div class="member-signature"><span class="modifiers">protected abstract</span>&nbsp;<span class="return-type"><a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a></span>&nbsp;<span class="element-name">newDataAccess</span>()
throws <span class="exceptions"><a href="UnavailableFactoryException.html" title="class in org.apache.sis.referencing.factory">UnavailableFactoryException</a>,
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Creates a factory which will perform the actual geodetic object creation work.
This method is invoked the first time a <code>create­Foo(String)</code> method is invoked.
It may also be invoked again if additional factories are needed in different threads,
or if all factories have been closed after the timeout.
<h4 id="multi-threading-heading1">Multi-threading</h4>
This method (but not necessarily the returned factory) needs to be thread-safe;
<code>Concurrent­Authority­Factory</code> does not hold any lock when invoking this method.
Subclasses are responsible to apply their own synchronization if needed,
but are encouraged to avoid doing so if possible.
In addition, implementations should not invoke other <code>Concurrent­Authority­Factory</code>
methods during this method execution in order to avoid never-ending loop.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>Data Access Object (DAO) to use in <code>create­Foo(String)</code> methods.</dd>
<dt>Throws:</dt>
<dd><code><a href="UnavailableFactoryException.html" title="class in org.apache.sis.referencing.factory">Unavailable­Factory­Exception</a></code> - if the Data Access Object is unavailable because an optional resource is missing.</dd>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the creation of Data Access Object failed for another reason.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="canClose(DAO)">
<h3 id="canClose(org.apache.sis.referencing.factory.GeodeticAuthorityFactory)">canClose</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">canClose</span><wbr><span class="parameters">(<a href="ConcurrentAuthorityFactory.html" title="type parameter in ConcurrentAuthorityFactory">DAO</a>&nbsp;factory)</span></div>
<div class="block">Returns <code>true</code> if the given Data Access Object (DAO) can be closed. This method is invoked automatically
after the <a href="#getTimeout(java.util.concurrent.TimeUnit)">timeout</a> if the given DAO has been idle during all that time.
Subclasses can override this method and return <code>false</code> if they want to prevent the DAO disposal
under some circumstances.
<p>The default implementation always returns <code>true</code>.</p></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>factory</code> - the Data Access Object which is about to be closed.</dd>
<dt>Returns:</dt>
<dd><code>true</code> if the given Data Access Object can be closed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="#close()"><code>close()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getTimeout(java.util.concurrent.TimeUnit)">
<h3>getTimeout</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getTimeout</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;unit)</span></div>
<div class="block">Returns the amount of time that <code>Concurrent­Authority­Factory</code> will wait before to close a Data Access Object.
This delay is measured from the last time the Data Access Object has been used by a <code>create­Foo(String)</code> method.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>unit</code> - the desired unit of measurement for the timeout.</dd>
<dt>Returns:</dt>
<dd>the current timeout in the given unit of measurement.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setTimeout(long,java.util.concurrent.TimeUnit)">
<h3>setTimeout</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setTimeout</span><wbr><span class="parameters">(long&nbsp;delay,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;unit)</span></div>
<div class="block">Sets a timer for closing the Data Access Object after the specified amount of time of inactivity.
If a new Data Access Object is needed after the disposal of the last one, then the <a href="#newDataAccess()"><code>new­Data­Access()</code></a>
method will be invoked again.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>delay</code> - the delay of inactivity before to close a Data Access Object.</dd>
<dd><code>unit</code> - the unit of measurement of the given delay.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAuthority()">
<h3>getAuthority</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/metadata/citation/Citation.html" title="class or interface in org.opengis.metadata.citation" class="external-link">Citation</a></span>&nbsp;<span class="element-name">getAuthority</span>()</div>
<div class="block">Returns the database or specification that defines the codes recognized by this factory.
The default implementation performs the following steps:
<ul>
<li>Returns the cached value if it exists.</li>
<li>Otherwise:
<ol>
<li>get an instance of the Data Access Object,</li>
<li>delegate to its <a href="GeodeticAuthorityFactory.html#getAuthority()"><code>Geodetic­Authority­Factory​.get­Authority()</code></a> method,</li>
<li>release the Data Access Object,</li>
<li>cache the result.</li>
</ol>
</li>
</ul>
If this method cannot get a Data Access Object (for example because no database connection is available),
then this method returns <code>null</code>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html#getAuthority()" title="class or interface in org.opengis.referencing" class="external-link">get­Authority</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html" title="class or interface in org.opengis.referencing" class="external-link">Authority­Factory</a></code></dd>
<dt>Specified by:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#getAuthority()">get­Authority</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Returns:</dt>
<dd>the organization responsible for definition of the database, or <code>null</code> if unavailable.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../../../../../../org.apache.sis.metadata/org/apache/sis/util/iso/AbstractFactory.html#getVendor()"><code>Abstract­Factory​.get­Vendor()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAuthorityCodes(java.lang.Class)">
<h3>getAuthorityCodes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getAuthorityCodes</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;? extends <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/IdentifiedObject.html" title="class or interface in org.opengis.referencing" class="external-link">IdentifiedObject</a>&gt;&nbsp;type)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns the set of authority codes for objects of the given type.
The default implementation performs the following steps:
<ol>
<li>get an instance of the Data Access Object,</li>
<li>delegate to its <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html#getAuthorityCodes(java.lang.Class)" title="class or interface in org.opengis.referencing" class="external-link"><code>Authority­Factory​.get­Authority­Codes(Class)</code></a> method,</li>
<li>release the Data Access Object.</li>
</ol></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html#getAuthorityCodes(java.lang.Class)" title="class or interface in org.opengis.referencing" class="external-link">get­Authority­Codes</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html" title="class or interface in org.opengis.referencing" class="external-link">Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>type</code> - the spatial reference objects type (e.g. <code>Projected­CRS​.class</code>).</dd>
<dt>Returns:</dt>
<dd>the set of authority codes for spatial reference objects of the given type.
If this factory does not contains any object of the given type, then this method returns an empty set.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if access to the underlying database failed.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDescriptionText(java.lang.String)">
<h3>getDescriptionText</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/util/InternationalString.html" title="class or interface in org.opengis.util" class="external-link">InternationalString</a></span>&nbsp;<span class="element-name">getDescriptionText</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/NoSuchAuthorityCodeException.html" title="class or interface in org.opengis.referencing" class="external-link">NoSuchAuthorityCodeException</a>,
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Gets a description of the object corresponding to a code.
The default implementation performs the following steps:
<ol>
<li>get an instance of the Data Access Object,</li>
<li>delegate to its <a href="GeodeticAuthorityFactory.html#getDescriptionText(java.lang.String)"><code>Geodetic­Authority­Factory​.get­Description­Text(String)</code></a> method,</li>
<li>release the Data Access Object.</li>
</ol></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html#getDescriptionText(java.lang.String)" title="class or interface in org.opengis.referencing" class="external-link">get­Description­Text</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html" title="class or interface in org.opengis.referencing" class="external-link">Authority­Factory</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#getDescriptionText(java.lang.String)">get­Description­Text</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>a description of the object, or <code>null</code> if the object
corresponding to the specified <code>code</code> has no description.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/NoSuchAuthorityCodeException.html" title="class or interface in org.opengis.referencing" class="external-link">No­Such­Authority­Code­Exception</a></code> - if the specified <code>code</code> was not found.</dd>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the query failed for some other reason.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="normalizeCode(java.lang.String)">
<h3>normalizeCode</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">normalizeCode</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a code equivalent to the given code but with unnecessary elements eliminated.
The normalized code is used as the key in the cache, and is also the code which will
be passed to the <a href="#newDataAccess()">Data Access Object</a> (DAO).
<p>The default implementation performs the following steps:</p>
<ol>
<li>Removes the namespace if presents. For example if the <a href="GeodeticAuthorityFactory.html#getCodeSpaces()">codespace</a>
is EPSG and the given code starts with the <code>"EPSG:"</code> prefix, then that prefix is removed.</li>
<li>Removes leading and trailing spaces.</li>
</ol>
Subclasses can override this method for performing a different normalization work.
It is okay to return internal codes completely different than the given codes,
provided that the Data Access Objects will understand those internal codes.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>code</code> - the code to normalize.</dd>
<dt>Returns:</dt>
<dd>the normalized code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if an error occurred while normalizing the given code.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createObject(java.lang.String)">
<h3>createObject</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/referencing/IdentifiedObject.html" title="class or interface in org.opengis.referencing" class="external-link">IdentifiedObject</a></span>&nbsp;<span class="element-name">createObject</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns an arbitrary object from a code.
The default implementation performs the following steps:
<ul>
<li>Returns the cached instance for the given code if such instance already exists.</li>
<li>Otherwise:
<ol>
<li>get an instance of the Data Access Object,</li>
<li>delegate to its <a href="GeodeticAuthorityFactory.html#createObject(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Object(String)</code></a> method,</li>
<li>release the Data Access Object,</li>
<li>cache the result.</li>
</ol>
</li>
</ul></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html#createObject(java.lang.String)" title="class or interface in org.opengis.referencing" class="external-link">create­Object</a></code>&nbsp;in interface&nbsp;<code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/AuthorityFactory.html" title="class or interface in org.opengis.referencing" class="external-link">Authority­Factory</a></code></dd>
<dt>Specified by:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createObject(java.lang.String)">create­Object</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the object for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../AbstractIdentifiedObject.html" title="class in org.apache.sis.referencing"><code>Abstract­Identified­Object</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCoordinateReferenceSystem(java.lang.String)">
<h3>createCoordinateReferenceSystem</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/referencing/crs/CoordinateReferenceSystem.html" title="class or interface in org.opengis.referencing.crs" class="external-link">CoordinateReferenceSystem</a></span>&nbsp;<span class="element-name">createCoordinateReferenceSystem</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns an arbitrary coordinate reference system from a code.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Coordinate­Reference­System(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createCoordinateReferenceSystem(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Coordinate­Reference­System(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createCoordinateReferenceSystem(java.lang.String)">create­Coordinate­Reference­System</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/AbstractCRS.html" title="class in org.apache.sis.referencing.crs"><code>Abstract­CRS</code></a></li>
<li><a href="../CRS.html#forCode(java.lang.String)"><code>CRS​.for­Code(String)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createGeographicCRS(java.lang.String)">
<h3>createGeographicCRS</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/referencing/crs/GeographicCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">GeographicCRS</a></span>&nbsp;<span class="element-name">createGeographicCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 2- or 3-dimensional coordinate reference system based on an ellipsoidal approximation of the geoid.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Geographic­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createGeographicCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Geographic­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createGeographicCRS(java.lang.String)">create­Geographic­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultGeographicCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Geographic­CRS</code></a></li>
<li><a href="../CommonCRS.html#geographic()"><code>Common­CRS​.geographic()</code></a></li>
<li><a href="../CommonCRS.html#geographic3D()"><code>Common­CRS​.geographic3D()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createGeocentricCRS(java.lang.String)">
<h3>createGeocentricCRS</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/referencing/crs/GeocentricCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">GeocentricCRS</a></span>&nbsp;<span class="element-name">createGeocentricCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 3-dimensional coordinate reference system with the origin at the approximate centre of mass of the earth.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Geocentric­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createGeocentricCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Geocentric­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createGeocentricCRS(java.lang.String)">create­Geocentric­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultGeocentricCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Geocentric­CRS</code></a></li>
<li><a href="../CommonCRS.html#geocentric()"><code>Common­CRS​.geocentric()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createProjectedCRS(java.lang.String)">
<h3>createProjectedCRS</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/referencing/crs/ProjectedCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">ProjectedCRS</a></span>&nbsp;<span class="element-name">createProjectedCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 2-dimensional coordinate reference system used to approximate the shape of the earth on a planar surface.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Projected­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createProjectedCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Projected­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createProjectedCRS(java.lang.String)">create­Projected­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultProjectedCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Projected­CRS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createVerticalCRS(java.lang.String)">
<h3>createVerticalCRS</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/referencing/crs/VerticalCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">VerticalCRS</a></span>&nbsp;<span class="element-name">createVerticalCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 1-dimensional coordinate reference system used for recording heights or depths.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Vertical­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createVerticalCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Vertical­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createVerticalCRS(java.lang.String)">create­Vertical­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultVerticalCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Vertical­CRS</code></a></li>
<li><a href="../CommonCRS.Vertical.html#crs()"><code>Common­CRS​.Vertical​.crs()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createTemporalCRS(java.lang.String)">
<h3>createTemporalCRS</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/referencing/crs/TemporalCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">TemporalCRS</a></span>&nbsp;<span class="element-name">createTemporalCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 1-dimensional coordinate reference system used for the recording of time.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Temporal­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createTemporalCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Temporal­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createTemporalCRS(java.lang.String)">create­Temporal­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultTemporalCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Temporal­CRS</code></a></li>
<li><a href="../CommonCRS.Temporal.html#crs()"><code>Common­CRS​.Temporal​.crs()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCompoundCRS(java.lang.String)">
<h3>createCompoundCRS</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/referencing/crs/CompoundCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">CompoundCRS</a></span>&nbsp;<span class="element-name">createCompoundCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a CRS describing the position of points through two or more independent coordinate reference systems.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Compound­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createCompoundCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Compound­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createCompoundCRS(java.lang.String)">create­Compound­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultCompoundCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Compound­CRS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createDerivedCRS(java.lang.String)">
<h3>createDerivedCRS</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/referencing/crs/DerivedCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">DerivedCRS</a></span>&nbsp;<span class="element-name">createDerivedCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a CRS that is defined by its coordinate conversion from another CRS (not by a datum).
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Derived­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createDerivedCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Derived­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createDerivedCRS(java.lang.String)">create­Derived­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultDerivedCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Derived­CRS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createEngineeringCRS(java.lang.String)">
<h3>createEngineeringCRS</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/referencing/crs/EngineeringCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">EngineeringCRS</a></span>&nbsp;<span class="element-name">createEngineeringCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 1-, 2- or 3-dimensional contextually local coordinate reference system.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Engineering­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createEngineeringCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Engineering­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createEngineeringCRS(java.lang.String)">create­Engineering­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultEngineeringCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Engineering­CRS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createImageCRS(java.lang.String)">
<h3>createImageCRS</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/referencing/crs/ImageCRS.html" title="class or interface in org.opengis.referencing.crs" class="external-link">ImageCRS</a></span>&nbsp;<span class="element-name">createImageCRS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 2-dimensional engineering coordinate reference system applied to locations in images.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Image­CRS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createImageCRS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Image­CRS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateReferenceSystem(java.lang.String)"><code>create­Coordinate­Reference­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createImageCRS(java.lang.String)">create­Image­CRS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate reference system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../crs/DefaultImageCRS.html" title="class in org.apache.sis.referencing.crs"><code>Default­Image­CRS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createDatum(java.lang.String)">
<h3>createDatum</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/referencing/datum/Datum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Datum</a></span>&nbsp;<span class="element-name">createDatum</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns an arbitrary datum from a code. The returned object will typically be an
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Datum(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createDatum(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Datum(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createDatum(java.lang.String)">create­Datum</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the datum for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/AbstractDatum.html" title="class in org.apache.sis.referencing.datum"><code>Abstract­Datum</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createGeodeticDatum(java.lang.String)">
<h3>createGeodeticDatum</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/referencing/datum/GeodeticDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">GeodeticDatum</a></span>&nbsp;<span class="element-name">createGeodeticDatum</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a datum defining the location and orientation of an ellipsoid that approximates the shape of the earth.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Geodetic­Datum(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createGeodeticDatum(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Geodetic­Datum(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createDatum(java.lang.String)"><code>create­Datum(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createGeodeticDatum(java.lang.String)">create­Geodetic­Datum</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the datum for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/DefaultGeodeticDatum.html" title="class in org.apache.sis.referencing.datum"><code>Default­Geodetic­Datum</code></a></li>
<li><a href="../CommonCRS.html#datum()"><code>Common­CRS​.datum()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createVerticalDatum(java.lang.String)">
<h3>createVerticalDatum</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/referencing/datum/VerticalDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">VerticalDatum</a></span>&nbsp;<span class="element-name">createVerticalDatum</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a datum identifying a particular reference level surface used as a zero-height surface.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Vertical­Datum(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createVerticalDatum(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Vertical­Datum(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createDatum(java.lang.String)"><code>create­Datum(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createVerticalDatum(java.lang.String)">create­Vertical­Datum</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the datum for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/DefaultVerticalDatum.html" title="class in org.apache.sis.referencing.datum"><code>Default­Vertical­Datum</code></a></li>
<li><a href="../CommonCRS.Vertical.html#datum()"><code>Common­CRS​.Vertical​.datum()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createTemporalDatum(java.lang.String)">
<h3>createTemporalDatum</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/referencing/datum/TemporalDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">TemporalDatum</a></span>&nbsp;<span class="element-name">createTemporalDatum</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a datum defining the origin of a temporal coordinate reference system.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Temporal­Datum(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createTemporalDatum(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Temporal­Datum(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createDatum(java.lang.String)"><code>create­Datum(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createTemporalDatum(java.lang.String)">create­Temporal­Datum</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the datum for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/DefaultTemporalDatum.html" title="class in org.apache.sis.referencing.datum"><code>Default­Temporal­Datum</code></a></li>
<li><a href="../CommonCRS.Temporal.html#datum()"><code>Common­CRS​.Temporal​.datum()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createEngineeringDatum(java.lang.String)">
<h3>createEngineeringDatum</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/referencing/datum/EngineeringDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">EngineeringDatum</a></span>&nbsp;<span class="element-name">createEngineeringDatum</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a datum defining the origin of an engineering coordinate reference system.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Engineering­Datum(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createEngineeringDatum(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Engineering­Datum(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createDatum(java.lang.String)"><code>create­Datum(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createEngineeringDatum(java.lang.String)">create­Engineering­Datum</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the datum for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/DefaultEngineeringDatum.html" title="class in org.apache.sis.referencing.datum"><code>Default­Engineering­Datum</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createImageDatum(java.lang.String)">
<h3>createImageDatum</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/referencing/datum/ImageDatum.html" title="class or interface in org.opengis.referencing.datum" class="external-link">ImageDatum</a></span>&nbsp;<span class="element-name">createImageDatum</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a datum defining the origin of an image coordinate reference system.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Image­Datum(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createImageDatum(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Image­Datum(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createDatum(java.lang.String)"><code>create­Datum(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createImageDatum(java.lang.String)">create­Image­Datum</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the datum for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/DefaultImageDatum.html" title="class in org.apache.sis.referencing.datum"><code>Default­Image­Datum</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createEllipsoid(java.lang.String)">
<h3>createEllipsoid</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/referencing/datum/Ellipsoid.html" title="class or interface in org.opengis.referencing.datum" class="external-link">Ellipsoid</a></span>&nbsp;<span class="element-name">createEllipsoid</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a geometric figure that can be used to describe the approximate shape of the earth.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Ellipsoid(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createEllipsoid(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Ellipsoid(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createEllipsoid(java.lang.String)">create­Ellipsoid</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the ellipsoid for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/DefaultEllipsoid.html" title="class in org.apache.sis.referencing.datum"><code>Default­Ellipsoid</code></a></li>
<li><a href="../CommonCRS.html#ellipsoid()"><code>Common­CRS​.ellipsoid()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createPrimeMeridian(java.lang.String)">
<h3>createPrimeMeridian</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/referencing/datum/PrimeMeridian.html" title="class or interface in org.opengis.referencing.datum" class="external-link">PrimeMeridian</a></span>&nbsp;<span class="element-name">createPrimeMeridian</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a prime meridian defining the origin from which longitude values are determined.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Prime­Meridian(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createPrimeMeridian(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Prime­Meridian(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createPrimeMeridian(java.lang.String)">create­Prime­Meridian</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the prime meridian for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../datum/DefaultPrimeMeridian.html" title="class in org.apache.sis.referencing.datum"><code>Default­Prime­Meridian</code></a></li>
<li><a href="../CommonCRS.html#primeMeridian()"><code>Common­CRS​.prime­Meridian()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createExtent(java.lang.String)">
<h3>createExtent</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/metadata/extent/Extent.html" title="class or interface in org.opengis.metadata.extent" class="external-link">Extent</a></span>&nbsp;<span class="element-name">createExtent</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns information about spatial, vertical, and temporal extent (usually a domain of validity) from a code.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Extent(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createExtent(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Extent(String)</code></a>
method in the parent class.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createExtent(java.lang.String)">create­Extent</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the extent for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../../../../../../org.apache.sis.metadata/org/apache/sis/metadata/iso/extent/DefaultExtent.html" title="class in org.apache.sis.metadata.iso.extent"><code>Default­Extent</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCoordinateSystem(java.lang.String)">
<h3>createCoordinateSystem</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/referencing/cs/CoordinateSystem.html" title="class or interface in org.opengis.referencing.cs" class="external-link">CoordinateSystem</a></span>&nbsp;<span class="element-name">createCoordinateSystem</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns an arbitrary coordinate system from a code.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Coordinate­System(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createCoordinateSystem(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Coordinate­System(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createCoordinateSystem(java.lang.String)">create­Coordinate­System</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="../cs/AbstractCS.html" title="class in org.apache.sis.referencing.cs"><code>Abstract­CS</code></a></li>
<li><a href="../cs/CoordinateSystems.html#getEpsgCode(javax.measure.Unit,org.opengis.referencing.cs.AxisDirection...)"><code>Coordinate­Systems​.get­Epsg­Code(Unit, Axis­Direction...)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createEllipsoidalCS(java.lang.String)">
<h3>createEllipsoidalCS</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/referencing/cs/EllipsoidalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">EllipsoidalCS</a></span>&nbsp;<span class="element-name">createEllipsoidalCS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 2- or 3-dimensional coordinate system for geodetic latitude and longitude, sometimes with ellipsoidal height.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Ellipsoidal­CS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createEllipsoidalCS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Ellipsoidal­CS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateSystem(java.lang.String)"><code>create­Coordinate­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createEllipsoidalCS(java.lang.String)">create­Ellipsoidal­CS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultEllipsoidalCS.html" title="class in org.apache.sis.referencing.cs"><code>Default­Ellipsoidal­CS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createVerticalCS(java.lang.String)">
<h3>createVerticalCS</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/referencing/cs/VerticalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">VerticalCS</a></span>&nbsp;<span class="element-name">createVerticalCS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 1-dimensional coordinate system for heights or depths of points.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Vertical­CS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createVerticalCS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Vertical­CS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateSystem(java.lang.String)"><code>create­Coordinate­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createVerticalCS(java.lang.String)">create­Vertical­CS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultVerticalCS.html" title="class in org.apache.sis.referencing.cs"><code>Default­Vertical­CS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createTimeCS(java.lang.String)">
<h3>createTimeCS</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/referencing/cs/TimeCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">TimeCS</a></span>&nbsp;<span class="element-name">createTimeCS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 1-dimensional coordinate system for heights or depths of points.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Time­CS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createTimeCS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Time­CS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateSystem(java.lang.String)"><code>create­Coordinate­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createTimeCS(java.lang.String)">create­Time­CS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultTimeCS.html" title="class in org.apache.sis.referencing.cs"><code>Default­Time­CS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCartesianCS(java.lang.String)">
<h3>createCartesianCS</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/referencing/cs/CartesianCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">CartesianCS</a></span>&nbsp;<span class="element-name">createCartesianCS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 2- or 3-dimensional Cartesian coordinate system made of straight orthogonal axes.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Cartesian­CS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createCartesianCS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Cartesian­CS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateSystem(java.lang.String)"><code>create­Coordinate­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createCartesianCS(java.lang.String)">create­Cartesian­CS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultCartesianCS.html" title="class in org.apache.sis.referencing.cs"><code>Default­Cartesian­CS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createSphericalCS(java.lang.String)">
<h3>createSphericalCS</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/referencing/cs/SphericalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">SphericalCS</a></span>&nbsp;<span class="element-name">createSphericalCS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 3-dimensional coordinate system with one distance measured from the origin and two angular coordinates.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Spherical­CS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createSphericalCS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Spherical­CS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateSystem(java.lang.String)"><code>create­Coordinate­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createSphericalCS(java.lang.String)">create­Spherical­CS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultSphericalCS.html" title="class in org.apache.sis.referencing.cs"><code>Default­Spherical­CS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCylindricalCS(java.lang.String)">
<h3>createCylindricalCS</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/referencing/cs/CylindricalCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">CylindricalCS</a></span>&nbsp;<span class="element-name">createCylindricalCS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 3-dimensional coordinate system made of a polar coordinate system
extended by a straight perpendicular axis.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Cylindrical­CS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createCylindricalCS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Cylindrical­CS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateSystem(java.lang.String)"><code>create­Coordinate­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createCylindricalCS(java.lang.String)">create­Cylindrical­CS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultCylindricalCS.html" title="class in org.apache.sis.referencing.cs"><code>Default­Cylindrical­CS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createPolarCS(java.lang.String)">
<h3>createPolarCS</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/referencing/cs/PolarCS.html" title="class or interface in org.opengis.referencing.cs" class="external-link">PolarCS</a></span>&nbsp;<span class="element-name">createPolarCS</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a 2-dimensional coordinate system for coordinates represented by a distance from the origin
and an angle from a fixed direction.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Polar­CS(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createPolarCS(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Polar­CS(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createCoordinateSystem(java.lang.String)"><code>create­Coordinate­System(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createPolarCS(java.lang.String)">create­Polar­CS</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the coordinate system for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultPolarCS.html" title="class in org.apache.sis.referencing.cs"><code>Default­Polar­CS</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCoordinateSystemAxis(java.lang.String)">
<h3>createCoordinateSystemAxis</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/referencing/cs/CoordinateSystemAxis.html" title="class or interface in org.opengis.referencing.cs" class="external-link">CoordinateSystemAxis</a></span>&nbsp;<span class="element-name">createCoordinateSystemAxis</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a coordinate system axis with name, direction, unit and range of values.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Coordinate­System­Axis(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createCoordinateSystemAxis(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Coordinate­System­Axis(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createCoordinateSystemAxis(java.lang.String)">create­Coordinate­System­Axis</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the axis for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../cs/DefaultCoordinateSystemAxis.html" title="class in org.apache.sis.referencing.cs"><code>Default­Coordinate­System­Axis</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createUnit(java.lang.String)">
<h3>createUnit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html" title="class or interface in javax.measure" class="external-link">Unit</a>&lt;?&gt;</span>&nbsp;<span class="element-name">createUnit</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns an unit of measurement from a code.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Unit(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createUnit(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Unit(String)</code></a>
method in the parent class.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createUnit(java.lang.String)">create­Unit</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the unit of measurement for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../../../../../../org.apache.sis.util/org/apache/sis/measure/Units.html#valueOfEPSG(int)"><code>Units​.value­Of­EPSG(int)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createParameterDescriptor(java.lang.String)">
<h3>createParameterDescriptor</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/ParameterDescriptor.html" title="class or interface in org.opengis.parameter" class="external-link">ParameterDescriptor</a>&lt;?&gt;</span>&nbsp;<span class="element-name">createParameterDescriptor</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a definition of a single parameter used by an operation method.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Parameter­Descriptor(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createParameterDescriptor(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Parameter­Descriptor(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createParameterDescriptor(java.lang.String)">create­Parameter­Descriptor</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the parameter descriptor for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="../../parameter/DefaultParameterDescriptor.html" title="class in org.apache.sis.parameter"><code>Default­Parameter­Descriptor</code></a></li>
<li><a href="https://sis.apache.org/tables/CoordinateOperationMethods.html">Apache SIS™ Coordinate Operation Methods</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createOperationMethod(java.lang.String)">
<h3>createOperationMethod</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/referencing/operation/OperationMethod.html" title="class or interface in org.opengis.referencing.operation" class="external-link">OperationMethod</a></span>&nbsp;<span class="element-name">createOperationMethod</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a description of the algorithm and parameters used to perform a coordinate operation.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Operation­Method(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createOperationMethod(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Operation­Method(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createOperationMethod(java.lang.String)">create­Operation­Method</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the operation method for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="../operation/DefaultOperationMethod.html" title="class in org.apache.sis.referencing.operation"><code>Default­Operation­Method</code></a></li>
<li><a href="https://sis.apache.org/tables/CoordinateOperationMethods.html">Apache SIS™ Coordinate Operation Methods</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCoordinateOperation(java.lang.String)">
<h3>createCoordinateOperation</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/referencing/operation/CoordinateOperation.html" title="class or interface in org.opengis.referencing.operation" class="external-link">CoordinateOperation</a></span>&nbsp;<span class="element-name">createCoordinateOperation</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns an operation for transforming coordinates in the source CRS to coordinates in the target CRS.
The default implementation performs the following steps:
<ul>
<li>Return the cached instance for the given code if such instance already exists.</li>
<li>Otherwise if the Data Access Object (DAO) overrides the <code>create­Coordinate­Operation(String)</code>
method, invoke that method and cache the result for future use.</li>
<li>Otherwise delegate to the <a href="GeodeticAuthorityFactory.html#createCoordinateOperation(java.lang.String)"><code>Geodetic­Authority­Factory​.create­Coordinate­Operation(String)</code></a>
method in the parent class. This allows to check if the more generic
<a href="#createObject(java.lang.String)"><code>create­Object(String)</code></a> method cached a value before to try that method.</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createCoordinateOperation(java.lang.String)">create­Coordinate­Operation</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>code</code> - value allocated by authority.</dd>
<dt>Returns:</dt>
<dd>the operation for the given code.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="../operation/AbstractCoordinateOperation.html" title="class in org.apache.sis.referencing.operation"><code>Abstract­Coordinate­Operation</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createFromCoordinateReferenceSystemCodes(java.lang.String,java.lang.String)">
<h3>createFromCoordinateReferenceSystemCodes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperation.html" title="class or interface in org.opengis.referencing.operation" class="external-link">CoordinateOperation</a>&gt;</span>&nbsp;<span class="element-name">createFromCoordinateReferenceSystemCodes</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;sourceCRS,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;targetCRS)</span>
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns operations from source and target coordinate reference system codes.
The default implementation performs the following steps:
<ul>
<li>Returns the cached collection for the given pair of codes if such collection already exists.</li>
<li>Otherwise:
<ol>
<li>get an instance of the Data Access Object,</li>
<li>delegate to its <a href="GeodeticAuthorityFactory.html#createFromCoordinateReferenceSystemCodes(java.lang.String,java.lang.String)"><code>Geodetic­Authority­Factory​.create­From­Coordinate­Reference­System­Codes(String, String)</code></a> method,</li>
<li>release the Data Access Object — <em>this step assumes that the collection obtained at step 2
is still valid after the Data Access Object has been released</em>,</li>
<li>cache the result — <em>this step assumes that the collection obtained at step 2 is immutable</em>.</li>
</ol>
</li>
</ul></div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#createFromCoordinateReferenceSystemCodes(java.lang.String,java.lang.String)">create­From­Coordinate­Reference­System­Codes</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>source­CRS</code> - coded value of source coordinate reference system.</dd>
<dd><code>target­CRS</code> - coded value of target coordinate reference system.</dd>
<dt>Returns:</dt>
<dd>the operations from <code>source­CRS</code> to <code>target­CRS</code>.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the object creation failed.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="newIdentifiedObjectFinder()">
<h3>newIdentifiedObjectFinder</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="IdentifiedObjectFinder.html" title="class in org.apache.sis.referencing.factory">IdentifiedObjectFinder</a></span>&nbsp;<span class="element-name">newIdentifiedObjectFinder</span>()
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Returns a finder which can be used for looking up unidentified objects.
The default implementation delegates lookup to the underlying Data Access Object and caches the result.</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#newIdentifiedObjectFinder()">new­Identified­Object­Finder</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Returns:</dt>
<dd>a finder to use for looking up unidentified objects.</dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if the finder cannot be created.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="../IdentifiedObjects.html#newFinder(java.lang.String)"><code>Identified­Objects​.new­Finder(String)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isCacheable(java.lang.String,java.lang.Object)">
<h3>isCacheable</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isCacheable</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;code,
<a href="https://docs.oracle.com/en/java/javase/11/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">Returns whether the given object can be cached. This method is invoked after the
<a href="#newDataAccess()">Data Access Object</a> created a new object not previously in the cache.
If this <code>is­Cacheable(…)</code> method returns <code>true</code>, then the newly created object will be cached so
that next calls to the same <code>create­Foo(String)</code> method with the same code may return the same object.
If this method returns <code>false</code>, then the newly created object will not be cached and next call to
the <code>create­Foo(String)</code> method with the same code will return a new object.
<p>The default implementation always returns <code>true</code>.
Subclasses can override this method for filtering the objects to store in the cache.</p></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>code</code> - the authority code specified by the caller for creating an object.</dd>
<dd><code>object</code> - the object created for the given authority code.</dd>
<dt>Returns:</dt>
<dd>whether the given object should be cached.</dd>
<dt>Since:</dt>
<dd>0.8</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="#printCacheContent(java.io.PrintWriter)"><code>print­Cache­Content(Print­Writer)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="printCacheContent(java.io.PrintWriter)">
<h3>printCacheContent</h3>
<div class="member-signature"><span class="annotations"><a href="../../../../../../org.apache.sis.util/org/apache/sis/util/Debug.html" title="annotation interface in org.apache.sis.util">@Debug</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">printCacheContent</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/PrintWriter.html" title="class or interface in java.io" class="external-link">PrintWriter</a>&nbsp;out)</span></div>
<div class="block">Prints the cache content to the given writer.
Keys are sorted by numerical order if possible, or alphabetical order otherwise.
This method is used for debugging purpose only.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>out</code> - the output printer, or <code>null</code> for the <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/System.html#out" title="class or interface in java.lang" class="external-link">standard output stream</a>.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="#isCacheable(java.lang.String,java.lang.Object)"><code>is­Cacheable(String, Object)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="close()">
<h3>close</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">close</span>()
throws <span class="exceptions"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">FactoryException</a></span></div>
<div class="block">Immediately closes all Data Access Objects that are closeable.
This method does not clear the cache and does not disallow further usage of this factory:
this <code>Concurrent­Authority­Factory</code> can still be used as usual after it has been "closed".
<a href="#newDataAccess()">New Data Access Objects</a> will be created if needed for replacing
the ones closed by this method.
<p>The main purpose of this method is to force immediate release of JDBC connections or other kind of resources
that Data Access Objects may hold. If this method is not invoked, Data Access Objects will be closed
when this <code>Concurrent­Authority­Factory</code> will be garbage collected or at JVM shutdown time,
depending which event happen first.</p></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/AutoCloseable.html#close()" title="class or interface in java.lang" class="external-link">close</a></code>&nbsp;in interface&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/AutoCloseable.html" title="class or interface in java.lang" class="external-link">Auto­Closeable</a></code></dd>
<dt>Throws:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/FactoryException.html" title="class or interface in org.opengis.util" class="external-link">Factory­Exception</a></code> - if an error occurred while closing the Data Access Objects.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="#canClose(DAO)"><code>can­Close(Geodetic­Authority­Factory)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toString()">
<h3>toString</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">toString</span>()</div>
<div class="block">Returns a string representation of this factory for debugging purpose only.
The string returned by this method may change in any future SIS version.</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="GeodeticAuthorityFactory.html#toString()">to­String</a></code>&nbsp;in class&nbsp;<code><a href="GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">Geodetic­Authority­Factory</a></code></dd>
<dt>Returns:</dt>
<dd>a string representation for debugging purpose.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="#printCacheContent(java.io.PrintWriter)"><code>print­Cache­Content(Print­Writer)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>