Package org.geotools.data.vpf.file
Class VPFFileFeatureSource
- Object
-
- ContentFeatureSource
-
- VPFFeatureSource
-
- VPFFileFeatureSource
-
- All Implemented Interfaces:
FeatureSource<SimpleFeatureType,SimpleFeature>
,SimpleFeatureSource
public class VPFFileFeatureSource extends VPFFeatureSource
VPFFile Feature Source- Author:
- James Gambale (Alysida AI)
-
-
Field Summary
-
Fields inherited from class ContentFeatureSource
entry, hints, lock, query, queryCapabilities, schema, transaction
-
-
Constructor Summary
Constructors Constructor Description VPFFileFeatureSource(ContentEntry entry, Query query)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected SimpleFeatureType
buildFeatureType()
Creates the feature type or schema for the feature source.protected ReferencedEnvelope
getBoundsInternal(Query query)
Implementation that generates the total bounds (many file formats record this information in the header)protected int
getCountInternal(Query query)
Calculates the number of features of a specified query.protected FeatureReader<SimpleFeatureType,SimpleFeature>
getReaderInternal(Query query)
Subclass method for returning a native reader from the datastore.-
Methods inherited from class VPFFeatureSource
getDataStore, getFeatureSource, getName, setFeatureSource
-
Methods inherited from class ContentFeatureSource
accepts, addFeatureListener, addHints, buildQueryCapabilities, canEvent, canFilter, canFilter, canLimit, canLimit, canLock, canOffset, canOffset, canReproject, canRetype, canRetype, canSort, canSort, canTransact, doLockInternal, doUnlockInternal, getAbsoluteSchema, getBounds, getBounds, getCount, getEntry, getFeatures, getFeatures, getFeatures, getInfo, getQueryCapabilities, getReader, getReader, getReader, getSchema, getState, getSupportedHints, getTransaction, getView, getView, handleVisitor, isView, joinQuery, lockFeatures, lockFeatures, lockFeatures, processLock, removeFeatureListener, resolvePropertyNames, resolvePropertyNames, setFeatureLock, setTransaction, unLockFeatures, unLockFeatures, unLockFeatures
-
-
-
-
Constructor Detail
-
VPFFileFeatureSource
public VPFFileFeatureSource(ContentEntry entry, Query query)
-
-
Method Detail
-
getReaderInternal
protected FeatureReader<SimpleFeatureType,SimpleFeature> getReaderInternal(Query query) throws IOException
Description copied from class:ContentFeatureSource
Subclass method for returning a native reader from the datastore.It is important to note that if the native reader intends to handle any of the following natively:
- reprojection
- filtering
- max feature limiting
- sorting
- locking
- transactions
true
:ContentFeatureSource.canReproject()
- handlesQuery.getCoordinateSystemReproject()
internally. Example would be PostGIS using Proj to handle reproejction internallyContentFeatureSource.canFilter(Query)
- handlesinternally.
- {@link #canLimit(Query)} - handles {@link Query#getMaxFeatures()} and {@link Query#getStartIndex()} internally.
- {@link #canSort(Query)} - handles {@link Query#getSortBy()} natively.
- {@link #canRetype(Query)} - handles {@link Query#getProperties()} natively. Example would be only parsing the properties the user asks for from an XML file
- {@link #canLock()} - handles read-locks natively
- {@link #canTransact()} - handles transactions natively
- Specified by:
getReaderInternal
in classContentFeatureSource
- Throws:
IOException
-
getCountInternal
protected int getCountInternal(Query query) throws IOException
Description copied from class:ContentFeatureSource
Calculates the number of features of a specified query. Subclasses must implement this method. If the computation is not fast, it's possible to return -1.- Specified by:
getCountInternal
in classContentFeatureSource
- Throws:
IOException
-
getBoundsInternal
protected ReferencedEnvelope getBoundsInternal(Query query) throws IOException
Implementation that generates the total bounds (many file formats record this information in the header)- Specified by:
getBoundsInternal
in classContentFeatureSource
- Throws:
IOException
-
buildFeatureType
protected SimpleFeatureType buildFeatureType() throws IOException
Description copied from class:ContentFeatureSource
Creates the feature type or schema for the feature source.Implementations should use
SimpleFeatureTypeBuilder
to build the feature type. Also, the builder should be injected with the feature factory which has been set on the DataStore (seeContentDataStore.getFeatureFactory()
. Example:SimpleFeatureTypeBuilder b = new SimpleFeatureTypeBuilder(); b.setFeatureTypeFactory( getDataStore().getFeatureTypeFactory() ); //build the feature type ...
- Specified by:
buildFeatureType
in classContentFeatureSource
- Throws:
IOException
-
-