public class JDBCStoreProvider extends AbstractFeatureStoreProvider implements JDBCHelperUser
AbstractFeatureStoreProvider.FeatureProviderNotFoundExceptionFeatureStoreProvider.FeatureTypeChanged| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DESCRIPTION |
protected boolean |
directSQLMode |
protected JDBCHelper |
helper |
static java.lang.String |
METADATA_DEFINITION_NAME |
static java.lang.String |
NAME |
| Modifier | Constructor and Description |
|---|---|
|
JDBCStoreProvider(JDBCStoreParameters params,
DataStoreProviderServices storeServices) |
protected |
JDBCStoreProvider(JDBCStoreParameters params,
DataStoreProviderServices storeServices,
DynObject metadata) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
allowAutomaticValues()
unsupported by default, override this otherwise
|
protected void |
appendWhere(java.lang.StringBuilder sql,
java.lang.String filter) |
void |
checksResulsets() |
void |
close()
do nothing by default, override this otherwise
|
void |
closeDone()
Called when the resource was close
|
protected boolean |
closeResource(ResourceProvider resource) |
boolean |
closeResourceRequested(ResourceProvider resource) |
void |
closeResulset(int resultsetID) |
protected void |
closeResulset(java.sql.ResultSet rs) |
protected java.lang.String |
compoundCountSelect(java.lang.String filter) |
java.lang.String |
compoundSelect(FeatureType type,
java.lang.String filter,
java.lang.String order,
long limit,
long offset) |
protected JDBCHelper |
createHelper() |
java.lang.Object |
createNewOID()
Return a new OID valid for a new feature.
|
protected java.sql.ResultSet |
createNewResultSet(java.lang.String sql,
java.lang.Object[] values,
int fetchSize) |
int |
createResultSet(java.lang.String sql,
int fetchSize) |
int |
createResultSet(java.lang.String sql,
java.lang.Object[] values,
int fetchSize) |
FeatureSetProvider |
createSet(FeatureQuery query,
FeatureType featureType)
Factory of
FeatureSetProvider. |
protected void |
doDispose()
Internal implementation for the
AbstractDisposable.dispose() method, to be
implemented by child classes. |
protected java.lang.String |
fixFilter(java.lang.String filter) |
protected void |
forceCloseAllResultSet() |
protected void |
forceCloseResultSet(int rsID) |
protected long |
getCount(java.lang.String filter)
Get feature count for a
filter. |
java.lang.Object |
getDynValue(java.lang.String name) |
Envelope |
getEnvelope()
unsupported geometry by default (return
null), override this
otherwise |
DataServerExplorer |
getExplorer()
unsupported by default (return null), override this otherwise
|
long |
getFeatureCount()
Returns total feature count of this store.
|
java.lang.String |
getFullName() |
protected JDBCHelper |
getHelper() |
protected java.lang.String |
getIsNullExpression()
Return "is null" expression for current provider
|
protected JDBCStoreParameters |
getJDBCParameters() |
java.lang.String |
getName() |
int |
getOIDType()
Return OID data type (from
DataTypes) of this store. |
java.lang.String |
getProviderName()
Get the user name
|
ResourceProvider |
getResource() |
protected java.sql.ResultSet |
getResultSet(int resultsetID) |
java.lang.Object |
getSourceId() |
long |
getTimeToResulSetZombie() |
boolean |
hasGeometrySupport() |
protected void |
initFeatureType() |
protected FeatureProvider |
internalGetFeatureProviderByReference(FeatureReferenceProviderServices reference)
Returns a
FeatureProvider by reference, using the default
FeatureType. |
protected FeatureProvider |
internalGetFeatureProviderByReference(FeatureReferenceProviderServices reference,
FeatureType featureType)
Returns a
FeatureProvider by reference, using the provided
FeatureType. |
protected boolean |
isDirectSQLMode() |
void |
loadFeatureProvider(FeatureProvider data,
int resultsetID)
Load data form a resulset.
|
protected void |
loadFeatureProviderValue(FeatureProvider data,
java.sql.ResultSet rs,
FeatureAttributeDescriptor attr) |
void |
open() |
void |
opendDone()
Called when the resource was open
|
protected int |
openResulsetCount() |
protected void |
resetCount() |
void |
resourceChanged(ResourceProvider resource) |
boolean |
resulsetNext(int resultsetID) |
void |
setTimeToResulSetZombie(long mlSeconds) |
abortAppend, allowWrite, append, beginAppend, canWriteGeometry, clear, createFeatureLocks, createFeatureProvider, createFeatureSelection, createResource, delegate, endAppend, getChilds, getDynClass, getFeatureProviderByReference, getFeatureProviderByReference, getFeatureStore, getInterval, getParameters, getRetrievedFeaturesLimit, getStoreServices, getTimes, getTimes, hasDynValue, hasRetrievedFeaturesLimit, implement, invokeDynMethod, invokeDynMethod, isKnownEnvelope, isLocksSupported, performChanges, refresh, savePrjFile, setDynValue, setMetadata, supportsAppendModedispose, disposeclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdisposepublic static java.lang.String NAME
public static java.lang.String DESCRIPTION
public static final java.lang.String METADATA_DEFINITION_NAME
protected JDBCHelper helper
protected boolean directSQLMode
public JDBCStoreProvider(JDBCStoreParameters params, DataStoreProviderServices storeServices) throws InitializeException
InitializeExceptionprotected JDBCStoreProvider(JDBCStoreParameters params, DataStoreProviderServices storeServices, DynObject metadata) throws InitializeException
InitializeExceptionpublic java.lang.Object getDynValue(java.lang.String name)
throws DynFieldNotFoundException
getDynValue in interface DynObjectgetDynValue in class AbstractFeatureStoreProviderDynFieldNotFoundExceptionprotected JDBCStoreParameters getJDBCParameters()
public void loadFeatureProvider(FeatureProvider data, int resultsetID) throws DataException
resouceBegin at the begining and
resourceEnd at the end of execution.data - resulsetID - DataExceptionprotected void loadFeatureProviderValue(FeatureProvider data, java.sql.ResultSet rs, FeatureAttributeDescriptor attr) throws DataException
DataExceptionpublic long getTimeToResulSetZombie()
public void setTimeToResulSetZombie(long mlSeconds)
public final int createResultSet(java.lang.String sql,
int fetchSize)
throws DataException
DataExceptionpublic final int createResultSet(java.lang.String sql,
java.lang.Object[] values,
int fetchSize)
throws DataException
DataExceptionprotected final void forceCloseAllResultSet()
throws ResourceExecuteException,
JDBCException
protected final void forceCloseResultSet(int rsID)
throws ResourceExecuteException,
JDBCException,
InvalidResultSetIdException
protected final java.sql.ResultSet getResultSet(int resultsetID)
throws InvalidResultSetIdException
InvalidResultSetIdExceptionpublic final boolean resulsetNext(int resultsetID)
throws JDBCException,
InvalidResultSetIdException,
ResourceExecuteException
public final void closeResulset(int resultsetID)
throws JDBCException,
InvalidResultSetIdException,
ResourceExecuteException
public final void checksResulsets()
throws JDBCException,
InvalidResultSetIdException,
ResourceExecuteException
protected void closeResulset(java.sql.ResultSet rs)
throws JDBCException,
ResourceExecuteException
protected final int openResulsetCount()
public boolean closeResourceRequested(ResourceProvider resource)
closeResourceRequested in interface ResourceConsumerprotected java.lang.String fixFilter(java.lang.String filter)
protected JDBCHelper createHelper() throws InitializeException
InitializeExceptionprotected JDBCHelper getHelper()
protected void resetCount()
protected long getCount(java.lang.String filter)
throws DataException
filter.filter can be null.resouceBegin at the begining and
resourceEnd at the end of execution.filter - DataExceptionpublic void close()
throws CloseException
AbstractFeatureStoreProviderclose in class AbstractFeatureStoreProviderCloseExceptionDataStoreProvider.close()public void open()
throws OpenException
OpenExceptionprotected FeatureProvider internalGetFeatureProviderByReference(FeatureReferenceProviderServices reference) throws DataException
AbstractFeatureStoreProviderFeatureProvider by reference, using the default
FeatureType. This method may be rewritten by the child classes as
an implementation of the
AbstractFeatureStoreProvider.getFeatureProviderByReference(FeatureReferenceProviderServices)
method.internalGetFeatureProviderByReference in class AbstractFeatureStoreProviderreference - the reference to the FeatureProviderFeatureProvider being referencedDataException - if there is an error loading the FeatureProviderprotected java.lang.String getIsNullExpression()
protected FeatureProvider internalGetFeatureProviderByReference(FeatureReferenceProviderServices reference, FeatureType featureType) throws DataException
AbstractFeatureStoreProviderFeatureProvider by reference, using the provided
FeatureType. This is the child classes implementation of the
AbstractFeatureStoreProvider.getFeatureProviderByReference(FeatureReferenceProviderServices)
method.internalGetFeatureProviderByReference in class AbstractFeatureStoreProviderreference - the reference to the FeatureProviderfeatureType - the type of feature to loadFeatureProvider being referencedDataException - if there is an error loading the FeatureProviderpublic int getOIDType()
FeatureStoreProviderDataTypes) of this store.getOIDType in interface FeatureStoreProviderFeatureStoreProvider#createNewOID()} {@link DataTypes}protected void initFeatureType()
throws InitializeException
InitializeExceptionprotected java.sql.ResultSet createNewResultSet(java.lang.String sql,
java.lang.Object[] values,
int fetchSize)
throws DataException
DataExceptionprotected boolean closeResource(ResourceProvider resource)
protected java.lang.String compoundCountSelect(java.lang.String filter)
protected void appendWhere(java.lang.StringBuilder sql,
java.lang.String filter)
public void closeDone()
throws DataException
JDBCHelperUsercloseDone in interface JDBCHelperUserDataExceptionpublic void opendDone()
throws DataException
JDBCHelperUseropendDone in interface JDBCHelperUserDataExceptionpublic Envelope getEnvelope() throws DataException
AbstractFeatureStoreProvidernull), override this
otherwisegetEnvelope in interface FeatureStoreProvidergetEnvelope in class AbstractFeatureStoreProvidernull if
store not have geometry informationDataExceptionFeatureStoreProvider.getEnvelope()public void resourceChanged(ResourceProvider resource)
resourceChanged in interface ResourceConsumerpublic boolean allowAutomaticValues()
AbstractFeatureStoreProviderallowAutomaticValues in interface FeatureStoreProviderallowAutomaticValues in class AbstractFeatureStoreProvidertrue if supportedFeatureStoreProvider.allowAutomaticValues()public DataServerExplorer getExplorer() throws ReadException
AbstractFeatureStoreProvidergetExplorer in class AbstractFeatureStoreProviderReadExceptionDataStoreProvider.getExplorer()protected void doDispose()
throws BaseException
AbstractDisposableAbstractDisposable.dispose() method, to be
implemented by child classes.doDispose in class AbstractFeatureStoreProviderBaseExceptionAbstractDisposable.dispose()public java.lang.Object createNewOID()
FeatureStoreProvidercreateNewOID in interface FeatureStoreProviderFeatureStoreProvider#getOIDType()}public java.lang.String compoundSelect(FeatureType type, java.lang.String filter, java.lang.String order, long limit, long offset) throws DataException
DataExceptionpublic long getFeatureCount()
throws DataException
FeatureStoreProvidergetFeatureCount in interface FeatureStoreProviderDataExceptionpublic java.lang.String getProviderName()
JDBCHelperUsergetProviderName in interface JDBCHelperUserpublic boolean hasGeometrySupport()
public FeatureSetProvider createSet(FeatureQuery query, FeatureType featureType) throws DataException
FeatureStoreProviderFeatureSetProvider. Create a new
FeatureSetProvider that represents result of FeatureQuery
.createSet in interface FeatureStoreProviderquery - (never will be null)featureType - (never will be null)DataExceptionpublic java.lang.Object getSourceId()
public java.lang.String getName()
public java.lang.String getFullName()
public ResourceProvider getResource()
protected boolean isDirectSQLMode()