primaryKey
The columns that constitute the primary key, or
null
if there is no primary key.DataSet
, FeatureSet
, Resource
FeatureType
inferred from the table structure.
The FeatureType
contains an
AttributeType
FeatureAssociationRole
s.
private FeatureAdapter
ResultSet
rows to Feature
instances.(package private) final Column[]
(package private) final Database<?>
(package private) final Relation[]
(package private) final DefaultFeatureType
(package private) final boolean
true
if this table contains at least one geometry column.(package private) final boolean
true
if this table contains at least one raster column.(package private) final Relation[]
private WeakValueHashMap<?,Object>
private boolean
true
if getEnvelope()
has been invoked at least once on this table.(package private) final TableReference
Table
object, together with its schema and catalog.(package private) final PrimaryKey
null
if there is no primary key.private final String
null
for querying the table identified by name
.listeners
(package private) final FeatureAdapter
adapter(Connection connection)
ResultSet
rows to Feature
instances.private static void
appendAll(TreeTable.Node parent,
Relation[] children,
String arrow)
(package private) final void
"FROM"
keyword.(package private) final void
appendTo(TreeTable.Node parent)
(package private) final long
countRows(DatabaseMetaData metadata,
boolean distinct,
boolean approximate)
features(boolean parallel)
(package private) final Column
Optional<org.opengis.geometry.Envelope>
final Optional<org.opengis.util.GenericName>
(package private) final Relation
getInverseOf(Relation exported,
TableReference exportedOwner)
final DefaultFeatureType
getType()
(package private) final WeakValueHashMap<?,Object>
(package private) final void
setDeferredSearchTables(Analyzer analyzer,
Map<org.opengis.util.GenericName,Table> tables)
Relation
instances for which this operation has been deferred.toString()
createMetadata, getFeatureCount
addListener, clearCache, getMetadata, getSynchronizationLock, removeListener
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
subset
addListener, getMetadata, removeListener
null
for querying the table identified by name
.
This is non-null only if the user explicitly specified a SQL query to execute.Table
object, together with its schema and catalog.
The catalog and schema parts are optional and can be null, but the table name is mandatory.SELECT <columns>
statement.
This array shall not be modified after construction.
Columns may have alias if it was necessary to avoid name collisions.
The alias is given by Column.propertyName
and will be the name used in FeatureType
.
null
if there is no primary key.true
if this table contains at least one geometry column.true
if this table contains at least one raster column.#columns
ResultSet
rows to Feature
instances.
Created when first needed.Relation.Direction.IMPORT
and Relation.Direction.EXPORT
cases; not for arbitrary
cross-reference cases. Values are usually Feature
instances, but may also be Collection<Feature>
.true
if getEnvelope()
has been invoked at least once on this table.
This is used for performing only once operations such as PosthreSQL ANALYZE
.Relation
instances for which this operation has been deferred.
This happen when a table could not be obtained because of circular dependency.
This method is invoked after all tables have been created in order to fill such holes.tables
- all tables created.DataStoreException
parent
- the node where to add children.children
- the children to add, or an empty array if none.arrow
- the symbol to use for relating the columns of two tables in a foreigner key.parent
- the parent node where to add the tree representation.getIdentifier
in interface Resource
getIdentifier
in class AbstractFeatureSet
null
).DataSet.getEnvelope()
contract allows estimated envelope to be larger than
actual envelope (similar to Java2D Shape.getBounds()
contract), but smaller envelope are
discouraged. Despite that, this method may return smaller envelopes because the computation is done using
a subset of all data.
getEnvelope
in interface DataSet
getEnvelope
in class AbstractResource
DataStoreException
- if an error occurred while reading or computing the envelope.xpath
value only as the attribute name,
but a future implementation may parse something like a "table/column"
syntax.
It may be necessary with Table
that are actually views generated by queries.xpath
- the XPath (currently only attribute name).null
if the specified attribute is not found.null
. This method is used for preventing infinite recursivity.exported
- the relation exported by another table.exportedOwner
- exported.owner.name
: table that contains the exported
relation.null
if none.String
or Integer
instances
or arrays of those if the keys use more than one column. Values are usually Feature
instances,
but may also be Collection<Feature>
."FROM"
keyword.FeatureIterator.estimatedSize
).
We do not cache this count because it may change at any time.metadata
- information about the database.distinct
- whether to count distinct values instead of all values.approximate
- whether approximate or outdated values are acceptable.SQLException
ResultSet
rows to Feature
instances.
The converter is created the first time that this method is invoked, then cached.connection
- source of database metadata to use if the adapter needs to be created.SQLException
InternalDataStoreException
parallel
- true
for a parallel stream (if supported), or false
for a sequential stream.DataStoreException
- if an error occurred while creating the stream.