| <!DOCTYPE HTML> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (21) on Thu Oct 05 19:54:57 CEST 2023 --> |
| <title>EPSGFactory (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.sql, class: EPSGFactory"> |
| <meta name="generator" content="javadoc/ClassWriterImpl"> |
| <meta name="keywords" content="org.apache.sis.referencing.factory.sql.EPSGFactory class"> |
| <meta name="keywords" content="dataSource"> |
| <meta name="keywords" content="nameFactory"> |
| <meta name="keywords" content="datumFactory"> |
| <meta name="keywords" content="csFactory"> |
| <meta name="keywords" content="crsFactory"> |
| <meta name="keywords" content="copFactory"> |
| <meta name="keywords" content="mtFactory"> |
| <meta name="keywords" content="getCodeSpaces()"> |
| <meta name="keywords" content="getLocale()"> |
| <meta name="keywords" content="install()"> |
| <meta name="keywords" content="newDataAccess()"> |
| <meta name="keywords" content="canClose()"> |
| <meta name="keywords" content="isCacheable()"> |
| <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"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </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><a href="#field-summary">Field</a></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><a href="#field-detail">Field</a></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: </li> |
| <li>Nested | </li> |
| <li><a href="#field-summary">Field</a> | </li> |
| <li><a href="#constructor-summary">Constr</a> | </li> |
| <li><a href="#method-summary">Method</a></li> |
| </ul> |
| <ul class="sub-nav-list"> |
| <li>Detail: </li> |
| <li><a href="#field-detail">Field</a> | </li> |
| <li><a href="#constructor-detail">Constr</a> | </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> <a href="../../../../../../module-summary.html">org.apache.sis.referencing</a></div> |
| <div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">org.apache.sis.referencing.factory.sql</a></div> |
| <h1 title="Class EPSGFactory" class="title">Class EPSGFactory</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"><a href="../ConcurrentAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">ConcurrentAuthorityFactory</a><<a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a>> |
| <div class="inheritance">EPSGFactory</div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <section class="class-description" id="class-description"> |
| <dl class="notes"> |
| <dt>All Implemented Interfaces:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/AutoCloseable.html" title="class or interface in java.lang" class="external-link">AutoCloseable</a></code>, <code><a href="../../../../../../../org.apache.sis.util/org/apache/sis/util/Localized.html" title="interface in org.apache.sis.util">Localized</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">AuthorityFactory</a></code>, <code><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">CRSAuthorityFactory</a></code>, <code><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">CSAuthorityFactory</a></code>, <code><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">DatumAuthorityFactory</a></code>, <code><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">CoordinateOperationAuthorityFactory</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> |
| <hr> |
| <div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">EPSGFactory</span> |
| <span class="extends-implements">extends <a href="../ConcurrentAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">ConcurrentAuthorityFactory</a><<a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a>> |
| implements <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">CRSAuthorityFactory</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">CSAuthorityFactory</a>, <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">DatumAuthorityFactory</a>, <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">CoordinateOperationAuthorityFactory</a>, <a href="../../../../../../../org.apache.sis.util/org/apache/sis/util/Localized.html" title="interface in org.apache.sis.util">Localized</a></span></div> |
| <div class="block">A geodetic object factory backed by the EPSG database. This class creates JDBC connections to the EPSG database |
| when first needed using the <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/javax/sql/DataSource.html" title="class or interface in javax.sql" class="external-link"><code>DataSource</code></a> specified at construction time. The geodetic objects are cached |
| for reuse and the idle connections are closed after a timeout. |
| |
| <p>If no data source has been specified to the constructor, then <code>EPSGFactory</code> searches for a |
| default data source in JNDI, or in the directory given by the <code>SIS_DATA</code> environment variable, |
| or in the directory given by the <code>"derby.system.home"</code> property, in that order. |
| See the <a href="package-summary.html">package documentation</a> for more information.</p> |
| |
| <h2 id="epsg-dataset-installation-heading">EPSG dataset installation</h2> |
| This class tries to automatically detect the schema that contains the EPSG tables |
| (see <a href="SQLTranslator.html" title="class in org.apache.sis.referencing.factory.sql"><code>SQLTranslator</code></a> for examples of tables to look for). If the tables are not found, |
| then the <a href="#install(java.sql.Connection)"><code>install(Connection)</code></a> method will be invoked for creating the EPSG schema. |
| The <code>install(…)</code> method can perform its work only if the definition files are reachable |
| on the module path, or if the directory containing the files have been specified. |
| |
| <h2 id="data-access-object-dao--heading">Data Access Object (DAO)</h2> |
| If there is no cached object for a given code, then <code>EPSGFactory</code> creates an <a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql"><code>EPSGDataAccess</code></a> instance |
| for performing the actual creation work. Developers who need to customize the geodetic object creation can override |
| the <a href="#newDataAccess(java.sql.Connection,org.apache.sis.referencing.factory.sql.SQLTranslator)"><code>newDataAccess(Connection, SQLTranslator)</code></a> method in order to return their own <a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql"><code>EPSGDataAccess</code></a> |
| subclass.</div> |
| <dl class="notes"> |
| <dt>Since:</dt> |
| <dd>0.7</dd> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="tag-list"> |
| <li><a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql"><code>EPSGDataAccess</code></a></li> |
| <li><a href="SQLTranslator.html" title="class in org.apache.sis.referencing.factory.sql"><code>SQLTranslator</code></a></li> |
| <li><a href="https://sis.apache.org/tables/CoordinateReferenceSystems.html">List of authority codes</a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| <section class="summary"> |
| <ul class="summary-list"> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <li> |
| <section class="field-summary" id="field-summary"> |
| <h2>Field Summary</h2> |
| <div class="caption"><span>Fields</span></div> |
| <div class="summary-table three-column-summary"> |
| <div class="table-header col-first">Modifier and Type</div> |
| <div class="table-header col-second">Field</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color"><code>protected final <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperationFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">CoordinateOperationFactory</a></code></div> |
| <div class="col-second even-row-color"><code><a href="#copFactory" class="member-name-link">copFactory</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">The factory to use for creating <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"><code>CoordinateOperation</code></a> instances |
| from the properties read in the database.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>protected final <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSFactory.html" title="class or interface in org.opengis.referencing.crs" class="external-link">CRSFactory</a></code></div> |
| <div class="col-second odd-row-color"><code><a href="#crsFactory" class="member-name-link">crsFactory</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">The factory to use for creating <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"><code>CoordinateReferenceSystem</code></a> instances |
| from the properties read in the database.</div> |
| </div> |
| <div class="col-first even-row-color"><code>protected final <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSFactory.html" title="class or interface in org.opengis.referencing.cs" class="external-link">CSFactory</a></code></div> |
| <div class="col-second even-row-color"><code><a href="#csFactory" class="member-name-link">csFactory</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">The factory to use for creating <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"><code>CoordinateSystem</code></a> instances |
| from the properties read in the database.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>protected final <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/javax/sql/DataSource.html" title="class or interface in javax.sql" class="external-link">DataSource</a></code></div> |
| <div class="col-second odd-row-color"><code><a href="#dataSource" class="member-name-link">dataSource</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">The factory to use for creating <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Connection.html" title="class or interface in java.sql" class="external-link"><code>Connection</code></a>s to the EPSG database.</div> |
| </div> |
| <div class="col-first even-row-color"><code>protected final <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumFactory.html" title="class or interface in org.opengis.referencing.datum" class="external-link">DatumFactory</a></code></div> |
| <div class="col-second even-row-color"><code><a href="#datumFactory" class="member-name-link">datumFactory</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">The factory to use for creating <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"><code>Datum</code></a> instances |
| from the properties read in the database.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>protected final <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransformFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransformFactory</a></code></div> |
| <div class="col-second odd-row-color"><code><a href="#mtFactory" class="member-name-link">mtFactory</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">The factory to use for creating <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link"><code>MathTransform</code></a> instances.</div> |
| </div> |
| <div class="col-first even-row-color"><code>protected final <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html" title="class or interface in org.opengis.util" class="external-link">NameFactory</a></code></div> |
| <div class="col-second even-row-color"><code><a href="#nameFactory" class="member-name-link">nameFactory</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">The factory to use for creating <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/GenericName.html" title="class or interface in org.opengis.util" class="external-link"><code>GenericName</code></a> instances.</div> |
| </div> |
| </div> |
| </section> |
| </li> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <li> |
| <section class="constructor-summary" id="constructor-summary"> |
| <h2>Constructor Summary</h2> |
| <div class="caption"><span>Constructors</span></div> |
| <div class="summary-table two-column-summary"> |
| <div class="table-header col-first">Constructor</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.util.Map)" class="member-name-link">EPSGFactory</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<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>,<wbr>?> properties)</code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Creates a factory using the given configuration.</div> |
| </div> |
| </div> |
| </section> |
| </li> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <li> |
| <section class="method-summary" id="method-summary"> |
| <h2>Method Summary</h2> |
| <div id="method-summary-table"> |
| <div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> |
| <div id="method-summary-table.tabpanel" role="tabpanel"> |
| <div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> |
| <div class="table-header col-first">Modifier and Type</div> |
| <div class="table-header col-second">Method</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>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(org.apache.sis.referencing.factory.sql.EPSGDataAccess)" class="member-name-link">canClose</a><wbr>(<a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a> 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><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><<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="#getCodeSpaces()" class="member-name-link">getCodeSpaces</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the namespace of EPSG codes.</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/Locale.html" title="class or interface in java.util" class="external-link">Locale</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLocale()" class="member-name-link">getLocale</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 locale used by this factory for producing error messages.</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="#install(java.sql.Connection)" class="member-name-link">install</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Connection.html" title="class or interface in java.sql" class="external-link">Connection</a> connection)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates the EPSG schema in the database and populates the tables with geodetic definitions.</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">isCacheable</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> 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> 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-tab4"><code>protected <a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newDataAccess()" class="member-name-link">newDataAccess</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates the 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>protected <a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newDataAccess(java.sql.Connection,org.apache.sis.referencing.factory.sql.SQLTranslator)" class="member-name-link">newDataAccess</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Connection.html" title="class or interface in java.sql" class="external-link">Connection</a> connection, |
| <a href="SQLTranslator.html" title="class in org.apache.sis.referencing.factory.sql">SQLTranslator</a> translator)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates the factory which will perform the actual geodetic object creation from a given connection.</div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-ConcurrentAuthorityFactory">Methods inherited from class <a href="../ConcurrentAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">ConcurrentAuthorityFactory</a></h3> |
| <code><a href="../ConcurrentAuthorityFactory.html#close()">close</a>, <a href="../ConcurrentAuthorityFactory.html#createCartesianCS(java.lang.String)">createCartesianCS</a>, <a href="../ConcurrentAuthorityFactory.html#createCompoundCRS(java.lang.String)">createCompoundCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createCoordinateOperation(java.lang.String)">createCoordinateOperation</a>, <a href="../ConcurrentAuthorityFactory.html#createCoordinateReferenceSystem(java.lang.String)">createCoordinateReferenceSystem</a>, <a href="../ConcurrentAuthorityFactory.html#createCoordinateSystem(java.lang.String)">createCoordinateSystem</a>, <a href="../ConcurrentAuthorityFactory.html#createCoordinateSystemAxis(java.lang.String)">createCoordinateSystemAxis</a>, <a href="../ConcurrentAuthorityFactory.html#createCylindricalCS(java.lang.String)">createCylindricalCS</a>, <a href="../ConcurrentAuthorityFactory.html#createDatum(java.lang.String)">createDatum</a>, <a href="../ConcurrentAuthorityFactory.html#createDerivedCRS(java.lang.String)">createDerivedCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createEllipsoid(java.lang.String)">createEllipsoid</a>, <a href="../ConcurrentAuthorityFactory.html#createEllipsoidalCS(java.lang.String)">createEllipsoidalCS</a>, <a href="../ConcurrentAuthorityFactory.html#createEngineeringCRS(java.lang.String)">createEngineeringCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createEngineeringDatum(java.lang.String)">createEngineeringDatum</a>, <a href="../ConcurrentAuthorityFactory.html#createExtent(java.lang.String)">createExtent</a>, <a href="../ConcurrentAuthorityFactory.html#createFromCoordinateReferenceSystemCodes(java.lang.String,java.lang.String)">createFromCoordinateReferenceSystemCodes</a>, <a href="../ConcurrentAuthorityFactory.html#createGeocentricCRS(java.lang.String)">createGeocentricCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createGeodeticDatum(java.lang.String)">createGeodeticDatum</a>, <a href="../ConcurrentAuthorityFactory.html#createGeographicCRS(java.lang.String)">createGeographicCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createImageCRS(java.lang.String)">createImageCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createImageDatum(java.lang.String)">createImageDatum</a>, <a href="../ConcurrentAuthorityFactory.html#createObject(java.lang.String)">createObject</a>, <a href="../ConcurrentAuthorityFactory.html#createOperationMethod(java.lang.String)">createOperationMethod</a>, <a href="../ConcurrentAuthorityFactory.html#createParameterDescriptor(java.lang.String)">createParameterDescriptor</a>, <a href="../ConcurrentAuthorityFactory.html#createPolarCS(java.lang.String)">createPolarCS</a>, <a href="../ConcurrentAuthorityFactory.html#createPrimeMeridian(java.lang.String)">createPrimeMeridian</a>, <a href="../ConcurrentAuthorityFactory.html#createProjectedCRS(java.lang.String)">createProjectedCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createSphericalCS(java.lang.String)">createSphericalCS</a>, <a href="../ConcurrentAuthorityFactory.html#createTemporalCRS(java.lang.String)">createTemporalCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createTemporalDatum(java.lang.String)">createTemporalDatum</a>, <a href="../ConcurrentAuthorityFactory.html#createTimeCS(java.lang.String)">createTimeCS</a>, <a href="../ConcurrentAuthorityFactory.html#createUnit(java.lang.String)">createUnit</a>, <a href="../ConcurrentAuthorityFactory.html#createVerticalCRS(java.lang.String)">createVerticalCRS</a>, <a href="../ConcurrentAuthorityFactory.html#createVerticalCS(java.lang.String)">createVerticalCS</a>, <a href="../ConcurrentAuthorityFactory.html#createVerticalDatum(java.lang.String)">createVerticalDatum</a>, <a href="../ConcurrentAuthorityFactory.html#getAuthority()">getAuthority</a>, <a href="../ConcurrentAuthorityFactory.html#getAuthorityCodes(java.lang.Class)">getAuthorityCodes</a>, <a href="../ConcurrentAuthorityFactory.html#getDescriptionText(java.lang.String)">getDescriptionText</a>, <a href="../ConcurrentAuthorityFactory.html#getTimeout(java.util.concurrent.TimeUnit)">getTimeout</a>, <a href="../ConcurrentAuthorityFactory.html#newIdentifiedObjectFinder()">newIdentifiedObjectFinder</a>, <a href="../ConcurrentAuthorityFactory.html#normalizeCode(java.lang.String)">normalizeCode</a>, <a href="../ConcurrentAuthorityFactory.html#printCacheContent(java.io.PrintWriter)">printCacheContent</a>, <a href="../ConcurrentAuthorityFactory.html#setTimeout(long,java.util.concurrent.TimeUnit)">setTimeout</a>, <a href="../ConcurrentAuthorityFactory.html#toString()">toString</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-GeodeticAuthorityFactory">Methods inherited from class <a href="../GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">GeodeticAuthorityFactory</a></h3> |
| <code><a href="../GeodeticAuthorityFactory.html#createParametricCRS(java.lang.String)">createParametricCRS</a>, <a href="../GeodeticAuthorityFactory.html#createParametricCS(java.lang.String)">createParametricCS</a>, <a href="../GeodeticAuthorityFactory.html#createParametricDatum(java.lang.String)">createParametricDatum</a>, <a href="../GeodeticAuthorityFactory.html#trimNamespace(java.lang.String)">trimNamespace</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-AbstractFactory">Methods inherited from class <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()">getVendor</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-Object">Methods inherited from class <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">getClass</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">hashCode</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">notifyAll</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-AuthorityFactory">Methods inherited from interface <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">AuthorityFactory</a></h3> |
| <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">createObject</a>, <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">getAuthority</a>, <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">getAuthorityCodes</a>, <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">getDescriptionText</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-CoordinateOperationAuthorityFactory">Methods inherited from interface <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">CoordinateOperationAuthorityFactory</a></h3> |
| <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperationAuthorityFactory.html#createCoordinateOperation(java.lang.String)" title="class or interface in org.opengis.referencing.operation" class="external-link">createCoordinateOperation</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperationAuthorityFactory.html#createFromCoordinateReferenceSystemCodes(java.lang.String,java.lang.String)" title="class or interface in org.opengis.referencing.operation" class="external-link">createFromCoordinateReferenceSystemCodes</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperationAuthorityFactory.html#createOperationMethod(java.lang.String)" title="class or interface in org.opengis.referencing.operation" class="external-link">createOperationMethod</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-CRSAuthorityFactory">Methods inherited from interface <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">CRSAuthorityFactory</a></h3> |
| <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createCompoundCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createCompoundCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createCoordinateReferenceSystem(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createCoordinateReferenceSystem</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createDerivedCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createDerivedCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createEngineeringCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createEngineeringCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createGeocentricCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createGeocentricCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createGeographicCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createGeographicCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createImageCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createImageCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createProjectedCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createProjectedCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createTemporalCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createTemporalCRS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSAuthorityFactory.html#createVerticalCRS(java.lang.String)" title="class or interface in org.opengis.referencing.crs" class="external-link">createVerticalCRS</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-CSAuthorityFactory">Methods inherited from interface <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">CSAuthorityFactory</a></h3> |
| <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createCartesianCS(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createCartesianCS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createCoordinateSystem(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createCoordinateSystem</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createCoordinateSystemAxis(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createCoordinateSystemAxis</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createCylindricalCS(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createCylindricalCS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createEllipsoidalCS(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createEllipsoidalCS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createPolarCS(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createPolarCS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createSphericalCS(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createSphericalCS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createTimeCS(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createTimeCS</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createUnit(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createUnit</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSAuthorityFactory.html#createVerticalCS(java.lang.String)" title="class or interface in org.opengis.referencing.cs" class="external-link">createVerticalCS</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-DatumAuthorityFactory">Methods inherited from interface <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">DatumAuthorityFactory</a></h3> |
| <code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createDatum(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createDatum</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createEllipsoid(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createEllipsoid</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createEngineeringDatum(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createEngineeringDatum</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createGeodeticDatum(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createGeodeticDatum</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createImageDatum(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createImageDatum</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createPrimeMeridian(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createPrimeMeridian</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createTemporalDatum(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createTemporalDatum</a>, <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumAuthorityFactory.html#createVerticalDatum(java.lang.String)" title="class or interface in org.opengis.referencing.datum" class="external-link">createVerticalDatum</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-Factory">Methods inherited from interface <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">getVendor</a></code></div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <section class="details"> |
| <ul class="details-list"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <li> |
| <section class="field-details" id="field-detail"> |
| <h2>Field Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="dataSource"> |
| <h3>dataSource</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/javax/sql/DataSource.html" title="class or interface in javax.sql" class="external-link">DataSource</a></span> <span class="element-name">dataSource</span></div> |
| <div class="block">The factory to use for creating <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Connection.html" title="class or interface in java.sql" class="external-link"><code>Connection</code></a>s to the EPSG database.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="nameFactory"> |
| <h3>nameFactory</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html" title="class or interface in org.opengis.util" class="external-link">NameFactory</a></span> <span class="element-name">nameFactory</span></div> |
| <div class="block">The factory to use for creating <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/GenericName.html" title="class or interface in org.opengis.util" class="external-link"><code>GenericName</code></a> instances.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="datumFactory"> |
| <h3>datumFactory</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/datum/DatumFactory.html" title="class or interface in org.opengis.referencing.datum" class="external-link">DatumFactory</a></span> <span class="element-name">datumFactory</span></div> |
| <div class="block">The factory to use for creating <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"><code>Datum</code></a> instances |
| from the properties read in the database.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="csFactory"> |
| <h3>csFactory</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/cs/CSFactory.html" title="class or interface in org.opengis.referencing.cs" class="external-link">CSFactory</a></span> <span class="element-name">csFactory</span></div> |
| <div class="block">The factory to use for creating <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"><code>CoordinateSystem</code></a> instances |
| from the properties read in the database.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="crsFactory"> |
| <h3>crsFactory</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/crs/CRSFactory.html" title="class or interface in org.opengis.referencing.crs" class="external-link">CRSFactory</a></span> <span class="element-name">crsFactory</span></div> |
| <div class="block">The factory to use for creating <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"><code>CoordinateReferenceSystem</code></a> instances |
| from the properties read in the database.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="copFactory"> |
| <h3>copFactory</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/CoordinateOperationFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">CoordinateOperationFactory</a></span> <span class="element-name">copFactory</span></div> |
| <div class="block">The factory to use for creating <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"><code>CoordinateOperation</code></a> instances |
| from the properties read in the database.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="mtFactory"> |
| <h3>mtFactory</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransformFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link">MathTransformFactory</a></span> <span class="element-name">mtFactory</span></div> |
| <div class="block">The factory to use for creating <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link"><code>MathTransform</code></a> instances. |
| The math transforms are created as part of <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"><code>CoordinateOperation</code></a> |
| creation process.</div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <li> |
| <section class="constructor-details" id="constructor-detail"> |
| <h2>Constructor Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="<init>(java.util.Map)"> |
| <h3>EPSGFactory</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="element-name">EPSGFactory</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<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>,<wbr>?> properties)</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">Creates a factory using the given configuration. The properties recognized by this constructor |
| are listed in the table below. Any property not listed below will be ignored by this constructor. |
| All properties are optional and can <code>null</code> or omitted, in which case default values are used. |
| Those default values are implementation-specific and may change in any future SIS version. |
| |
| <table class="sis"> |
| <caption>Recognized properties</caption> |
| <tr> |
| <th>Key</th> |
| <th>Value class</th> |
| <th>Description</th> |
| </tr><tr> |
| <td><code>dataSource</code></td> |
| <td><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/javax/sql/DataSource.html" title="class or interface in javax.sql" class="external-link"><code>DataSource</code></a></td> |
| <td>The factory to use for creating <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Connection.html" title="class or interface in java.sql" class="external-link"><code>Connection</code></a>s to the EPSG database.</td> |
| </tr><tr> |
| <td><code>nameFactory</code></td> |
| <td><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html" title="class or interface in org.opengis.util" class="external-link"><code>NameFactory</code></a></td> |
| <td>The factory to use for creating <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/GenericName.html" title="class or interface in org.opengis.util" class="external-link"><code>GenericName</code></a> instances.</td> |
| </tr><tr> |
| <td><code>datumFactory</code></td> |
| <td><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>DatumAuthorityFactory</code></a></td> |
| <td>The factory to use for creating <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"><code>Datum</code></a> instances.</td> |
| </tr><tr> |
| <td><code>csFactory</code></td> |
| <td><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>CSAuthorityFactory</code></a></td> |
| <td>The factory to use for creating <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"><code>CoordinateSystem</code></a> instances.</td> |
| </tr><tr> |
| <td><code>crsFactory</code></td> |
| <td><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>CRSAuthorityFactory</code></a></td> |
| <td>The factory to use for creating <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"><code>CoordinateReferenceSystem</code></a> instances.</td> |
| </tr><tr> |
| <td><code>copFactory</code></td> |
| <td><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>CoordinateOperationAuthorityFactory</code></a></td> |
| <td>The factory to use for creating <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"><code>CoordinateOperation</code></a> instances.</td> |
| </tr><tr> |
| <td><code>mtFactory</code></td> |
| <td><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransformFactory.html" title="class or interface in org.opengis.referencing.operation" class="external-link"><code>MathTransformFactory</code></a></td> |
| <td>The factory to use for creating <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/referencing/operation/MathTransform.html" title="class or interface in org.opengis.referencing.operation" class="external-link"><code>MathTransform</code></a> instances.</td> |
| </tr><tr> |
| <td><code>catalog</code></td> |
| <td><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"><code>String</code></a></td> |
| <td>The database catalog that contains the EPSG schema (see <a href="#install(java.sql.Connection)">install</a>).</td> |
| </tr><tr> |
| <td><code>schema</code></td> |
| <td><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"><code>String</code></a></td> |
| <td>The database schema that contains the EPSG tables (see <a href="#install(java.sql.Connection)">install</a>).</td> |
| </tr><tr> |
| <td><code>scriptProvider</code></td> |
| <td><a href="InstallationScriptProvider.html" title="class in org.apache.sis.referencing.factory.sql"><code>InstallationScriptProvider</code></a></td> |
| <td>A provider of SQL scripts to use if <code>EPSGFactory</code> needs to create the database.</td> |
| </tr><tr> |
| <td><code>locale</code></td> |
| <td><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Locale.html" title="class or interface in java.util" class="external-link"><code>Locale</code></a></td> |
| <td>The locale for producing error messages on a <cite>best effort</cite> basis.</td> |
| </tr> |
| </table> |
| |
| <p>Default values</p> |
| <ul> |
| <li>If no <code>dataSource</code> is specified, this constructor defaults to the search algorithm described |
| in the <a href="package-summary.html">package documentation</a>.</li> |
| <li>If no <code>catalog</code> or <code>schema</code> is specified, <a href="SQLTranslator.html" title="class in org.apache.sis.referencing.factory.sql"><code>SQLTranslator</code></a> will try to auto-detect |
| the schema that contains the EPSG tables.</li> |
| <li>If no <code>locale</code> is specified, this constructor defaults to the |
| <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Locale.html#getDefault(java.util.Locale.Category)" title="class or interface in java.util" class="external-link">display locale</a>.</li> |
| </ul></div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>properties</code> - the data source, authority factories and other configuration properties, |
| or <code>null</code> for the default values.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/ClassCastException.html" title="class or interface in java.lang" class="external-link">ClassCastException</a></code> - if a property value is not of the expected class.</dd> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if a property value is invalid.</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">FactoryException</a></code> - if an error occurred while creating the EPSG factory.</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="getCodeSpaces()"> |
| <h3>getCodeSpaces</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <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><<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> <span class="element-name">getCodeSpaces</span>()</div> |
| <div class="block">Returns the namespace of EPSG codes.</div> |
| <dl class="notes"> |
| <dt>Overrides:</dt> |
| <dd><code><a href="../GeodeticAuthorityFactory.html#getCodeSpaces()">getCodeSpaces</a></code> in class <code><a href="../GeodeticAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">GeodeticAuthorityFactory</a></code></dd> |
| <dt>Returns:</dt> |
| <dd>the <code>"EPSG"</code> string in a singleton map.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getLocale()"> |
| <h3>getLocale</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Locale.html" title="class or interface in java.util" class="external-link">Locale</a></span> <span class="element-name">getLocale</span>()</div> |
| <div class="block">Returns the locale used by this factory for producing error messages. |
| This locale does not change the way data are read from the EPSG database.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="../../../../../../../org.apache.sis.util/org/apache/sis/util/Localized.html#getLocale()">getLocale</a></code> in interface <code><a href="../../../../../../../org.apache.sis.util/org/apache/sis/util/Localized.html" title="interface in org.apache.sis.util">Localized</a></code></dd> |
| <dt>Returns:</dt> |
| <dd>the locale for error messages.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="install(java.sql.Connection)"> |
| <h3>install</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">install</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Connection.html" title="class or interface in java.sql" class="external-link">Connection</a> connection)</span> |
| throws <span class="exceptions"><a href="../UnavailableFactoryException.html" title="class in org.apache.sis.referencing.factory">UnavailableFactoryException</a></span></div> |
| <div class="block">Creates the EPSG schema in the database and populates the tables with geodetic definitions. |
| This method is invoked automatically when <a href="#newDataAccess()"><code>newDataAccess()</code></a> detects that the EPSG dataset is not installed. |
| Users can also invoke this method explicitly if they wish to force the dataset installation. |
| |
| <p>This method uses the following properties from the map specified at |
| <a href="#%3Cinit%3E(java.util.Map)">construction time</a>:</p> |
| |
| <ul class="verbose"> |
| <li><b><code>catalog</code>:</b><br> |
| a <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"><code>String</code></a> giving the name of the database catalog where to create the EPSG schema. |
| If non-null, that catalog shall exist prior this method call (this method does not create any catalog). |
| If no catalog is specified or if the catalog is an empty string, |
| then the EPSG schema will be created without catalog. |
| If the database does not <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/DatabaseMetaData.html#supportsCatalogsInTableDefinitions()" title="class or interface in java.sql" class="external-link">support |
| catalogs in table definitions</a> or in <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/DatabaseMetaData.html#supportsCatalogsInDataManipulation()" title="class or interface in java.sql" class="external-link">data manipulation</a>, then this property is ignored.</li> |
| |
| <li><b><code>schema</code>:</b><br> |
| a <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"><code>String</code></a> giving the name of the database schema where to create the EPSG tables. |
| That schema shall <strong>not</strong> exist prior this method call; |
| the schema will be created by this <code>install(…)</code> method. |
| If the schema is an empty string, then the tables will be created without schema. |
| If no schema is specified, then the default schema is <code>"EPSG"</code>. |
| If the database does not <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/DatabaseMetaData.html#supportsSchemasInTableDefinitions()" title="class or interface in java.sql" class="external-link">support |
| schemas in table definitions</a> or in <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/DatabaseMetaData.html#supportsSchemasInDataManipulation()" title="class or interface in java.sql" class="external-link">data manipulation</a>, then this property is ignored.</li> |
| |
| <li><b><code>scriptProvider</code>:</b><br> |
| an <a href="InstallationScriptProvider.html" title="class in org.apache.sis.referencing.factory.sql"><code>InstallationScriptProvider</code></a> giving the SQL scripts to execute for creating the EPSG database. |
| If no provider is specified, then this method searches on the module path (with <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/ServiceLoader.html" title="class or interface in java.util" class="external-link"><code>ServiceLoader</code></a>) |
| for user-provided implementations of <code>InstallationScriptProvider</code>. |
| If no user-specified provider is found, then this method will search for |
| <code>"EPSG_*Tables.sql"</code>, <code>"EPSG_*Data.sql"</code> and <code>"EPSG_*FKeys.sql"</code> files in the |
| <code>$SIS_DATA/Databases/ExternalSources</code> directory where <code>*</code> stands for any characters |
| provided that there is no ambiguity.</li> |
| </ul> |
| |
| <h4 id="legal-constraint-heading">Legal constraint</h4> |
| The EPSG dataset cannot be distributed with Apache SIS for licensing reasons. |
| Users need to either install the dataset manually (for example with the help of this method), |
| or add on the module path a separated bundle such as the <code>org.apache.sis.referencing.epsg</code> module. |
| See <a href="https://sis.apache.org/epsg.html">How to use EPSG geodetic dataset</a> for more information.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>connection</code> - connection to the database where to create the EPSG schema.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="../UnavailableFactoryException.html" title="class in org.apache.sis.referencing.factory">UnavailableFactoryException</a></code> - if installation failed. The exception will have a |
| <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/FileNotFoundException.html" title="class or interface in java.io" class="external-link"><code>FileNotFoundException</code></a> cause if a SQL script has not been found |
| (typically because a required resource is not on the module path), an |
| <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link"><code>IOException</code></a> if an I/O error occurred while reading a SQL script, or a |
| <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/SQLException.html" title="class or interface in java.sql" class="external-link"><code>SQLException</code></a> if an error occurred while writing to the database.</dd> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="tag-list"> |
| <li><a href="InstallationScriptProvider.html" title="class in org.apache.sis.referencing.factory.sql"><code>InstallationScriptProvider</code></a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="newDataAccess()"> |
| <h3>newDataAccess</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a></span> <span class="element-name">newDataAccess</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">Creates the factory which will perform the actual geodetic object creation work. |
| This method is invoked automatically when a new worker is required, either because the previous |
| one has been disposed after its timeout or because a new one is required for concurrency. |
| |
| <p>The default implementation performs the following steps:</p> |
| <ol> |
| <li>Gets a new connection from the <a href="#dataSource"><code>dataSource</code></a>.</li> |
| <li>If this method is invoked for the first time, verifies if the EPSG tables exists. |
| If the tables are not found, invokes <a href="#install(java.sql.Connection)"><code>install(Connection)</code></a>.</li> |
| <li>Delegates to <a href="#newDataAccess(java.sql.Connection,org.apache.sis.referencing.factory.sql.SQLTranslator)"><code>newDataAccess(Connection, SQLTranslator)</code></a>, which provides an easier |
| overriding point for subclasses wanting to return a custom <a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql"><code>EPSGDataAccess</code></a> instance.</li> |
| </ol></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="../ConcurrentAuthorityFactory.html#newDataAccess()">newDataAccess</a></code> in class <code><a href="../ConcurrentAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">ConcurrentAuthorityFactory</a><<a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a>></code></dd> |
| <dt>Returns:</dt> |
| <dd>Data Access Object (DAO) to use in <code>createFoo(String)</code> methods.</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">FactoryException</a></code> - if the constructor failed to connect to the EPSG database. |
| This exception usually has a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/SQLException.html" title="class or interface in java.sql" class="external-link"><code>SQLException</code></a> as its cause.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="newDataAccess(java.sql.Connection,org.apache.sis.referencing.factory.sql.SQLTranslator)"> |
| <h3>newDataAccess</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a></span> <span class="element-name">newDataAccess</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Connection.html" title="class or interface in java.sql" class="external-link">Connection</a> connection, |
| <a href="SQLTranslator.html" title="class in org.apache.sis.referencing.factory.sql">SQLTranslator</a> translator)</span> |
| throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/SQLException.html" title="class or interface in java.sql" class="external-link">SQLException</a></span></div> |
| <div class="block">Creates the factory which will perform the actual geodetic object creation from a given connection. |
| This method is a convenience hook easier to override than <a href="#newDataAccess()"><code>newDataAccess()</code></a> for subclasses |
| wanting to return instances of their own <a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql"><code>EPSGDataAccess</code></a> subclass. |
| The default implementation is simply: |
| |
| |
| <div class="snippet-container"><button class="copy snippet-copy" aria-label="Copy snippet" onclick="copySnippet(this)"><span data-copied="Copied!">Copy</span><img src="../../../../../../../copy.svg" alt="Copy snippet"></button> |
| <pre class="snippet"><code class="language-java">return new EPSGDataAccess(this, connection, translator); |
| </code></pre> |
| </div> |
| |
| |
| Subclasses can override this method with a similar code but with <code>new EPSGDataAccess(…)</code> replaced |
| by <code>new MyDataAccessSubclass(…)</code>.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>connection</code> - a connection to the EPSG database.</dd> |
| <dd><code>translator</code> - the translator from the SQL statements using MS-Access dialect to SQL statements |
| using the dialect of the actual database.</dd> |
| <dt>Returns:</dt> |
| <dd>Data Access Object (DAO) to use in <code>createFoo(String)</code> methods.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/SQLException.html" title="class or interface in java.sql" class="external-link">SQLException</a></code> - if a problem with the database has been detected.</dd> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="tag-list-long"> |
| <li><a href="EPSGDataAccess.html#%3Cinit%3E(org.apache.sis.referencing.factory.sql.EPSGFactory,java.sql.Connection,org.apache.sis.referencing.factory.sql.SQLTranslator)"><code>EPSGDataAccess(EPSGFactory, Connection, SQLTranslator)</code></a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="canClose(org.apache.sis.referencing.factory.sql.EPSGDataAccess)"> |
| <h3>canClose</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">boolean</span> <span class="element-name">canClose</span><wbr><span class="parameters">(<a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a> 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="../ConcurrentAuthorityFactory.html#getTimeout(java.util.concurrent.TimeUnit)">timeout</a> if the given DAO has been idle during all that time. The default |
| implementation always returns <code>false</code> if a set returned by <a href="EPSGDataAccess.html#getAuthorityCodes(java.lang.Class)"><code>EPSGDataAccess.getAuthorityCodes(Class)</code></a> |
| is still in use.</div> |
| <dl class="notes"> |
| <dt>Overrides:</dt> |
| <dd><code><a href="../ConcurrentAuthorityFactory.html#canClose(DAO)">canClose</a></code> in class <code><a href="../ConcurrentAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">ConcurrentAuthorityFactory</a><<a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a>></code></dd> |
| <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-long"> |
| <li><a href="../ConcurrentAuthorityFactory.html#close()"><code>ConcurrentAuthorityFactory.close()</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> <span class="return-type">boolean</span> <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> 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> object)</span></div> |
| <div class="block">Returns whether the given object can be cached. |
| This method is invoked after <a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql"><code>EPSGDataAccess</code></a> created a new object not previously in the cache.</div> |
| <dl class="notes"> |
| <dt>Overrides:</dt> |
| <dd><code><a href="../ConcurrentAuthorityFactory.html#isCacheable(java.lang.String,java.lang.Object)">isCacheable</a></code> in class <code><a href="../ConcurrentAuthorityFactory.html" title="class in org.apache.sis.referencing.factory">ConcurrentAuthorityFactory</a><<a href="EPSGDataAccess.html" title="class in org.apache.sis.referencing.factory.sql">EPSGDataAccess</a>></code></dd> |
| <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-long"> |
| <li><a href="../ConcurrentAuthorityFactory.html#printCacheContent(java.io.PrintWriter)"><code>ConcurrentAuthorityFactory.printCacheContent(PrintWriter)</code></a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <!-- ========= END OF CLASS DATA ========= --> |
| </main> |
| </div> |
| </div> |
| </body> |
| </html> |