blob: 81ca2fca13384319cceefc871239d9a67a302e65 [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (21) on Thu Oct 05 19:54:57 CEST 2023 -->
<title>DefaultNameFactory (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.metadata, package: org.apache.sis.util.iso, class: DefaultNameFactory">
<meta name="generator" content="javadoc/ClassWriterImpl">
<meta name="keywords" content="org.apache.sis.util.iso.DefaultNameFactory class">
<meta name="keywords" content="provider()">
<meta name="keywords" content="createInternationalString()">
<meta name="keywords" content="createNameSpace()">
<meta name="keywords" content="createTypeName()">
<meta name="keywords" content="createMemberName()">
<meta name="keywords" content="createLocalName()">
<meta name="keywords" content="createGenericName()">
<meta name="keywords" content="parseGenericName()">
<meta name="keywords" content="toGenericNames()">
<meta name="keywords" content="toTypeName()">
<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.metadata</a></div>
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.sis.util.iso</a></div>
<h1 title="Class DefaultNameFactory" class="title">Class DefaultNameFactory</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="AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a>
<div class="inheritance">DefaultNameFactory</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><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>, <code><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">Name­Factory</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">DefaultNameFactory</span>
<span class="extends-implements">extends <a href="AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a>
implements <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></div>
<div class="block">A factory for creating <a href="AbstractName.html" title="class in org.apache.sis.util.iso"><code>Abstract­Name</code></a> objects.
This factory provides the following methods for creating name instances:
<ul>
<li><a href="#createTypeName(org.opengis.util.NameSpace,java.lang.CharSequence)"><code>create­Type­Name(Name­Space, Char­Sequence)</code></a></li>
<li><a href="#createMemberName(org.opengis.util.NameSpace,java.lang.CharSequence,org.opengis.util.TypeName)"><code>create­Member­Name(Name­Space, Char­Sequence, Type­Name)</code></a></li>
<li><a href="#createLocalName(org.opengis.util.NameSpace,java.lang.CharSequence)"><code>create­Local­Name(Name­Space, Char­Sequence)</code></a></li>
<li><a href="#createGenericName(org.opengis.util.NameSpace,java.lang.CharSequence...)"><code>create­Generic­Name(Name­Space, Char­Sequence[])</code></a> – for local or scoped names</li>
</ul>
The following methods for creating miscellaneous name-related objects:
<ul>
<li><a href="#createNameSpace(org.opengis.util.GenericName,java.util.Map)"><code>create­Name­Space(Generic­Name, Map)</code></a></li>
<li><a href="#createInternationalString(java.util.Map)"><code>create­International­String(Map)</code></a></li>
</ul>
And the following methods for performing some analysis:
<ul>
<li><a href="#parseGenericName(org.opengis.util.NameSpace,java.lang.CharSequence)"><code>parse­Generic­Name(Name­Space, Char­Sequence)</code></a></li>
<li><a href="#toGenericNames(java.lang.Object)"><code>to­Generic­Names(Object)</code></a></li>
<li><a href="#toTypeName(java.lang.Class)"><code>to­Type­Name(Class)</code></a></li>
</ul>
<h2 id="thread-safety-heading">Thread safety</h2>
The same <code>Default­Name­Factory</code> instance can be safely used by many threads without synchronization
on the part of the caller. Subclasses should make sure that any overridden methods remain safe to call
from multiple threads.</div>
<dl class="notes">
<dt>Since:</dt>
<dd>0.3</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="Names.html" title="class in org.apache.sis.util.iso"><code>Names</code></a></li>
<li><a href="DefaultNameSpace.html" title="class in org.apache.sis.util.iso"><code>Default­Name­Space</code></a></li>
<li><a href="DefaultScopedName.html" title="class in org.apache.sis.util.iso"><code>Default­Scoped­Name</code></a></li>
<li><a href="DefaultLocalName.html" title="class in org.apache.sis.util.iso"><code>Default­Local­Name</code></a></li>
<li><a href="DefaultTypeName.html" title="class in org.apache.sis.util.iso"><code>Default­Type­Name</code></a></li>
<li><a href="DefaultMemberName.html" title="class in org.apache.sis.util.iso"><code>Default­Member­Name</code></a></li>
</ul>
</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 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()" class="member-name-link">Default­Name­Factory</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Creates a new factory.</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-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/GenericName.html" title="class or interface in org.opengis.util" class="external-link">Generic­Name</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createGenericName(org.opengis.util.NameSpace,java.lang.CharSequence...)" class="member-name-link">create­Generic­Name</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">Name­Space</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">Char­Sequence</a>...&nbsp;parsed­Names)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Creates a local or scoped name from an array of parsed names.</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/util/InternationalString.html" title="class or interface in org.opengis.util" class="external-link">International­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="#createInternationalString(java.util.Map)" class="member-name-link">create­International­String</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>&lt;<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>,<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>&gt;&nbsp;strings)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Creates an international string from a set of strings in different locales.</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/LocalName.html" title="class or interface in org.opengis.util" class="external-link">Local­Name</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createLocalName(org.opengis.util.NameSpace,java.lang.CharSequence)" class="member-name-link">create­Local­Name</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">Name­Space</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">Char­Sequence</a>&nbsp;name)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Creates a local name from the given character sequence.</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/util/MemberName.html" title="class or interface in org.opengis.util" class="external-link">Member­Name</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createMemberName(org.opengis.util.NameSpace,java.lang.CharSequence,org.opengis.util.TypeName)" class="member-name-link">create­Member­Name</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">Name­Space</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">Char­Sequence</a>&nbsp;name,
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/TypeName.html" title="class or interface in org.opengis.util" class="external-link">Type­Name</a>&nbsp;attribute­Type)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Creates a member name from the given character sequence and attribute 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/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">Name­Space</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createNameSpace(org.opengis.util.GenericName,java.util.Map)" class="member-name-link">create­Name­Space</a><wbr>(<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">Generic­Name</a>&nbsp;name,
<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>&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>,<wbr>?&gt;&nbsp;properties)</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 namespace having the given name.</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/util/TypeName.html" title="class or interface in org.opengis.util" class="external-link">Type­Name</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createTypeName(org.opengis.util.NameSpace,java.lang.CharSequence)" class="member-name-link">create­Type­Name</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">Name­Space</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">Char­Sequence</a>&nbsp;name)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Creates a type name from the given character sequence and automatically inferred Java 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/TypeName.html" title="class or interface in org.opengis.util" class="external-link">Type­Name</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createTypeName(org.opengis.util.NameSpace,java.lang.CharSequence,java.lang.reflect.Type)" class="member-name-link">create­Type­Name</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">Name­Space</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">Char­Sequence</a>&nbsp;name,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/reflect/Type.html" title="class or interface in java.lang.reflect" class="external-link">Type</a>&nbsp;java­Type)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Creates a type name from the given character sequence and explicit Java type.</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/util/GenericName.html" title="class or interface in org.opengis.util" class="external-link">Generic­Name</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#parseGenericName(org.opengis.util.NameSpace,java.lang.CharSequence)" class="member-name-link">parse­Generic­Name</a><wbr>(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">Name­Space</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">Char­Sequence</a>&nbsp;name)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Constructs a generic name from a qualified name.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="DefaultNameFactory.html" title="class in org.apache.sis.util.iso">Default­Name­Factory</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#provider()" class="member-name-link">provider</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns the default provider of <code>Generic­Name</code> instances.</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/util/GenericName.html" title="class or interface in org.opengis.util" class="external-link">Generic­Name</a>[]</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toGenericNames(java.lang.Object)" class="member-name-link">to­Generic­Names</a><wbr>(<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;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Converts the given value to an array of generic names.</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/TypeName.html" title="class or interface in org.opengis.util" class="external-link">Type­Name</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toTypeName(java.lang.Class)" class="member-name-link">to­Type­Name</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;?&gt;&nbsp;value­Class)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Suggests a type name for the given class.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-AbstractFactory">Methods inherited from class&nbsp;<a href="AbstractFactory.html" title="class in org.apache.sis.util.iso">AbstractFactory</a></h3>
<code><a href="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#toString()" title="class or interface in java.lang" class="external-link">to­String</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>
</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;()">
<h3>DefaultNameFactory</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">DefaultNameFactory</span>()</div>
<div class="block">Creates a new factory.</div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="#provider()"><code>provider()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="provider()">
<h3>provider</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="DefaultNameFactory.html" title="class in org.apache.sis.util.iso">DefaultNameFactory</a></span>&nbsp;<span class="element-name">provider</span>()</div>
<div class="block">Returns the default provider of <code>Generic­Name</code> instances.
This is the factory used by the Apache SIS library when no non-null
<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>Name­Factory</code></a> has been explicitly specified.
This method can be invoked directly, or indirectly through
<code>Service­Loader​.load(Name­Factory​.class)</code>.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the default provider of generic names.</dd>
<dt>Since:</dt>
<dd>1.4</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><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>Service­Loader</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createInternationalString(java.util.Map)">
<h3>createInternationalString</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">createInternationalString</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>&lt;<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>,<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>&gt;&nbsp;strings)</span></div>
<div class="block">Creates an international string from a set of strings in different locales.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html#createInternationalString(java.util.Map)" title="class or interface in org.opengis.util" class="external-link">create­International­String</a></code>&nbsp;in interface&nbsp;<code><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">Name­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>strings</code> - string value for each locale key.</dd>
<dt>Returns:</dt>
<dd>the international string.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="Types.html#toInternationalString(java.lang.CharSequence)"><code>Types​.to­International­String(Char­Sequence)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createNameSpace(org.opengis.util.GenericName,java.util.Map)">
<h3>createNameSpace</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/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">NameSpace</a></span>&nbsp;<span class="element-name">createNameSpace</span><wbr><span class="parameters">(<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">GenericName</a>&nbsp;name,
<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>&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>,<wbr>?&gt;&nbsp;properties)</span></div>
<div class="block">Returns a namespace having the given name. Despite the "create" name, this method tries to
return an existing instance when possible. The namespace is characterized by the given name,
and optionally by the following properties:
<table class="sis">
<caption>Recognized properties</caption>
<tr>
<th>Property name</th>
<th>Purpose</th>
</tr>
<tr>
<td><code>"separator"</code></td>
<td>The separator to insert between <a href="AbstractName.html#getParsedNames()">parsed names</a>
in that namespace.</td>
</tr>
<tr>
<td><code>"separator.head"</code></td>
<td>The separator to insert between the namespace and the <a href="AbstractName.html#head()">head</a>.<br>
If omitted, then the default is the same value than <code>"separator"</code>.</td>
</tr>
</table>
<h4 id="examples-heading">Examples</h4>
<ul>
<li>For URN namespace, <code>separator</code> = <code>":"</code> is typically sufficient.</li>
<li>For HTTP namespace, <code>separator​.head</code> = <code>"://"</code> and <code>separator</code> = <code>"."</code>.</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/util/NameFactory.html#createNameSpace(org.opengis.util.GenericName,java.util.Map)" title="class or interface in org.opengis.util" class="external-link">create­Name­Space</a></code>&nbsp;in interface&nbsp;<code><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">Name­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>name</code> - the name of the namespace to be returned. This argument can be created using
<code><a href="#createGenericName(org.opengis.util.NameSpace,java.lang.CharSequence...)">create­Generic­Name</a>(null, namespace)</code>.</dd>
<dd><code>properties</code> - an optional map of properties to be assigned to the namespace, or <code>null</code> if none.</dd>
<dt>Returns:</dt>
<dd>a namespace having the given name and separator.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="Names.html#createLocalName(java.lang.CharSequence,java.lang.String,java.lang.CharSequence)"><code>Names​.create­Local­Name(Char­Sequence, String, Char­Sequence)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createTypeName(org.opengis.util.NameSpace,java.lang.CharSequence)">
<h3>createTypeName</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/TypeName.html" title="class or interface in org.opengis.util" class="external-link">TypeName</a></span>&nbsp;<span class="element-name">createTypeName</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">NameSpace</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a>&nbsp;name)</span>
throws <span class="exceptions"><a href="../../../../../../org.apache.sis.util/org/apache/sis/util/UnknownNameException.html" title="class in org.apache.sis.util">UnknownNameException</a></span></div>
<div class="block">Creates a type name from the given character sequence and automatically inferred Java type.
The default implementation returns a new or an existing <a href="DefaultTypeName.html" title="class in org.apache.sis.util.iso"><code>Default­Type­Name</code></a> instance.
See <a href="DefaultTypeName.html" title="class in org.apache.sis.util.iso"><code>Default­Type­Name</code></a> javadoc for the list of recognized type names.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html#createTypeName(org.opengis.util.NameSpace,java.lang.CharSequence)" title="class or interface in org.opengis.util" class="external-link">create­Type­Name</a></code>&nbsp;in interface&nbsp;<code><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">Name­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>scope</code> - the <a href="AbstractName.html#scope()">scope</a> of the type name create,
or <code>null</code> for a global namespace.</dd>
<dd><code>name</code> - the type name as a string or an international string.</dd>
<dt>Returns:</dt>
<dd>the type name for the given scope and character sequence.</dd>
<dt>Throws:</dt>
<dd><code><a href="../../../../../../org.apache.sis.util/org/apache/sis/util/UnknownNameException.html" title="class in org.apache.sis.util">Unknown­Name­Exception</a></code> - if a mapping from the name to a Java class was expected to exist
(because the specified scope is "OGC" or "class") but the associated Java class cannot be found.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="#toTypeName(java.lang.Class)"><code>to­Type­Name(Class)</code></a></li>
<li><a href="DefaultTypeName.html#%3Cinit%3E(org.opengis.util.NameSpace,java.lang.CharSequence)"><code>Default­Type­Name(Name­Space, Char­Sequence)</code></a></li>
<li><a href="Names.html#createTypeName(java.lang.CharSequence,java.lang.String,java.lang.CharSequence)"><code>Names​.create­Type­Name(Char­Sequence, String, Char­Sequence)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createTypeName(org.opengis.util.NameSpace,java.lang.CharSequence,java.lang.reflect.Type)">
<h3>createTypeName</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/TypeName.html" title="class or interface in org.opengis.util" class="external-link">TypeName</a></span>&nbsp;<span class="element-name">createTypeName</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">NameSpace</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a>&nbsp;name,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/reflect/Type.html" title="class or interface in java.lang.reflect" class="external-link">Type</a>&nbsp;javaType)</span></div>
<div class="block">Creates a type name from the given character sequence and explicit Java type.
The default implementation returns a new or an existing <a href="DefaultTypeName.html" title="class in org.apache.sis.util.iso"><code>Default­Type­Name</code></a> instance.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>scope</code> - the <a href="AbstractName.html#scope()">scope</a> of the type name to create,
or <code>null</code> for a global namespace.</dd>
<dd><code>name</code> - the type name as a string or an international string.</dd>
<dd><code>java­Type</code> - the Java type represented by the name, or <code>null</code> if none.</dd>
<dt>Returns:</dt>
<dd>the type name for the given scope, character sequence and Java type.</dd>
<dt>Since:</dt>
<dd>1.3</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="#toTypeName(java.lang.Class)"><code>to­Type­Name(Class)</code></a></li>
<li><a href="DefaultTypeName.html#%3Cinit%3E(org.opengis.util.NameSpace,java.lang.CharSequence,java.lang.reflect.Type)"><code>Default­Type­Name(Name­Space, Char­Sequence, Type)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createMemberName(org.opengis.util.NameSpace,java.lang.CharSequence,org.opengis.util.TypeName)">
<h3>createMemberName</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/MemberName.html" title="class or interface in org.opengis.util" class="external-link">MemberName</a></span>&nbsp;<span class="element-name">createMemberName</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">NameSpace</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a>&nbsp;name,
<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/TypeName.html" title="class or interface in org.opengis.util" class="external-link">TypeName</a>&nbsp;attributeType)</span></div>
<div class="block">Creates a member name from the given character sequence and attribute type.
The default implementation returns a new or an existing <a href="DefaultMemberName.html" title="class in org.apache.sis.util.iso"><code>Default­Member­Name</code></a> instance.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>scope</code> - the <a href="AbstractName.html#scope()">scope</a> of the member name to create,
or <code>null</code> for a global namespace.</dd>
<dd><code>name</code> - the member name as a string or an international string.</dd>
<dd><code>attribute­Type</code> - the type of the data associated with the member.</dd>
<dt>Returns:</dt>
<dd>the member name for the given character sequence.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="Names.html#createMemberName(java.lang.CharSequence,java.lang.String,java.lang.CharSequence,org.opengis.util.TypeName)"><code>Names​.create­Member­Name(Char­Sequence, String, Char­Sequence, Type­Name)</code></a></li>
<li><a href="Names.html#createMemberName(java.lang.CharSequence,java.lang.String,java.lang.CharSequence,java.lang.Class)"><code>Names​.create­Member­Name(Char­Sequence, String, Char­Sequence, Class)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createLocalName(org.opengis.util.NameSpace,java.lang.CharSequence)">
<h3>createLocalName</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/LocalName.html" title="class or interface in org.opengis.util" class="external-link">LocalName</a></span>&nbsp;<span class="element-name">createLocalName</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">NameSpace</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a>&nbsp;name)</span></div>
<div class="block">Creates a local name from the given character sequence.
The default implementation returns a new or an existing <a href="DefaultLocalName.html" title="class in org.apache.sis.util.iso"><code>Default­Local­Name</code></a> instance.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html#createLocalName(org.opengis.util.NameSpace,java.lang.CharSequence)" title="class or interface in org.opengis.util" class="external-link">create­Local­Name</a></code>&nbsp;in interface&nbsp;<code><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">Name­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>scope</code> - the <a href="AbstractName.html#scope()">scope</a> of the local name to create,
or <code>null</code> for a global namespace.</dd>
<dd><code>name</code> - the local name as a string or an international string.</dd>
<dt>Returns:</dt>
<dd>the local name for the given character sequence.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="Names.html#createLocalName(java.lang.CharSequence,java.lang.String,java.lang.CharSequence)"><code>Names​.create­Local­Name(Char­Sequence, String, Char­Sequence)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createGenericName(org.opengis.util.NameSpace,java.lang.CharSequence...)">
<h3>createGenericName</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/GenericName.html" title="class or interface in org.opengis.util" class="external-link">GenericName</a></span>&nbsp;<span class="element-name">createGenericName</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">NameSpace</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a>...&nbsp;parsedNames)</span></div>
<div class="block">Creates a local or scoped name from an array of parsed names. The default implementation
returns an instance of <a href="DefaultLocalName.html" title="class in org.apache.sis.util.iso"><code>Default­Local­Name</code></a> if the length of the <code>parsed­Names</code>
array is 1, or an instance of <a href="DefaultScopedName.html" title="class in org.apache.sis.util.iso"><code>Default­Scoped­Name</code></a> if the length of the array is 2
or more.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html#createGenericName(org.opengis.util.NameSpace,java.lang.CharSequence...)" title="class or interface in org.opengis.util" class="external-link">create­Generic­Name</a></code>&nbsp;in interface&nbsp;<code><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">Name­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>scope</code> - the <a href="AbstractName.html#scope()">scope</a> of the generic name to create,
or <code>null</code> for a global namespace.</dd>
<dd><code>parsed­Names</code> - the local names as an array of <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> or <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"><code>International­String</code></a> instances.
This array shall contain at least one element.</dd>
<dt>Returns:</dt>
<dd>the generic name for the given parsed names.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="#parseGenericName(org.opengis.util.NameSpace,java.lang.CharSequence)"><code>parse­Generic­Name(Name­Space, Char­Sequence)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parseGenericName(org.opengis.util.NameSpace,java.lang.CharSequence)">
<h3>parseGenericName</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/GenericName.html" title="class or interface in org.opengis.util" class="external-link">GenericName</a></span>&nbsp;<span class="element-name">parseGenericName</span><wbr><span class="parameters">(<a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameSpace.html" title="class or interface in org.opengis.util" class="external-link">NameSpace</a>&nbsp;scope,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a>&nbsp;name)</span></div>
<div class="block">Constructs a generic name from a qualified name.
This method splits the given name around a separator inferred from the given scope, or the
<a href="DefaultNameSpace.html#DEFAULT_SEPARATOR"><code>':'</code></a> separator if the given scope is null.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/util/NameFactory.html#parseGenericName(org.opengis.util.NameSpace,java.lang.CharSequence)" title="class or interface in org.opengis.util" class="external-link">parse­Generic­Name</a></code>&nbsp;in interface&nbsp;<code><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">Name­Factory</a></code></dd>
<dt>Parameters:</dt>
<dd><code>scope</code> - the <a href="AbstractName.html#scope()">scope</a> of the generic name to create,
or <code>null</code> for a global namespace.</dd>
<dd><code>name</code> - the qualified name, as a sequence of names separated by a scope-dependent separator.</dd>
<dt>Returns:</dt>
<dd>a name parsed from the given string.</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list-long">
<li><a href="Names.html#parseGenericName(java.lang.CharSequence,java.lang.String,java.lang.CharSequence)"><code>Names​.parse­Generic­Name(Char­Sequence, String, Char­Sequence)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toGenericNames(java.lang.Object)">
<h3>toGenericNames</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/GenericName.html" title="class or interface in org.opengis.util" class="external-link">GenericName</a>[]</span>&nbsp;<span class="element-name">toGenericNames</span><wbr><span class="parameters">(<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;value)</span>
throws <span class="exceptions"><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></span></div>
<div class="block">Converts the given value to an array of generic names. If the given value is an instance of
<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>Generic­Name</code></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> or any other type enumerated below, then it is converted
and returned in an array of length 1. If the given value is an array or a collection, then an
array of same length is returned where each element has been converted.
<p>Allowed types or element types are:</p>
<ul>
<li><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>Generic­Name</code></a>, to be casted and returned as-is.</li>
<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link"><code>Char­Sequence</code></a> (usually 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> or an <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"><code>International­String</code></a>),
to be parsed as a generic name using the <a href="DefaultNameSpace.html#DEFAULT_SEPARATOR"><code>':'</code></a> separator.</li>
<li><a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/metadata/Identifier.html" title="class or interface in org.opengis.metadata" class="external-link"><code>Identifier</code></a>, its <a href="http://www.geoapi.org/3.0/javadoc/org.opengis.geoapi/org/opengis/metadata/Identifier.html#getCode()" title="class or interface in org.opengis.metadata" class="external-link">code</a> to be parsed as a generic name
using the <a href="DefaultNameSpace.html#DEFAULT_SEPARATOR"><code>':'</code></a> separator.</li>
</ul>
If <code>value</code> is an array or a collection containing <code>null</code> elements,
then the corresponding element in the returned array will also be <code>null</code>.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - the object to cast into an array of generic names, or <code>null</code>.</dd>
<dt>Returns:</dt>
<dd>the generic names, or <code>null</code> if the given <code>value</code> was null.
Note that it may be the <code>value</code> reference itself casted to <code>Generic­Name[]</code>.</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">Class­Cast­Exception</a></code> - if <code>value</code> cannot be casted.</dd>
<dt>Since:</dt>
<dd>0.5</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toTypeName(java.lang.Class)">
<h3>toTypeName</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/TypeName.html" title="class or interface in org.opengis.util" class="external-link">TypeName</a></span>&nbsp;<span class="element-name">toTypeName</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;?&gt;&nbsp;valueClass)</span></div>
<div class="block">Suggests a type name for the given class. Apache SIS provides a mapping between <code>Class</code>
and <code>Type­Name</code> objects as documented in the <a href="DefaultTypeName.html" title="class in org.apache.sis.util.iso"><code>Default­Type­Name</code></a> javadoc.
The given <code>value­Class</code> can be fetched back by <a href="DefaultTypeName.html#toJavaType()"><code>Default­Type­Name​.to­Java­Type()</code></a>.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value­Class</code> - the Java class for which to get a type name, or <code>null</code>.</dd>
<dt>Returns:</dt>
<dd>a suggested type name, or <code>null</code> if the given class was null.</dd>
<dt>Since:</dt>
<dd>0.5</dd>
<dt>See Also:</dt>
<dd>
<ul class="tag-list">
<li><a href="DefaultTypeName.html#toJavaType()"><code>Default­Type­Name​.to­Java­Type()</code></a></li>
<li><a href="Names.html#toClass(org.opengis.util.TypeName)"><code>Names​.to­Class(Type­Name)</code></a></li>
<li><a href="Names.html#createTypeName(java.lang.Class)"><code>Names​.create­Type­Name(Class)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>