Class ResourceDefinition
Object
ResourceDefinition
Definition of a resource (table, view or query) to include in a
SQLStore.
Each ResourceDefinition instance can specify a table or a group of tables
(based on name pattern) to view as FeatureSet instances.
A ResourceDefinition instance can also specify a query instead of a table.
ResourceDefinitions are given to the SimpleFeatureStore constructor,
which implies that the tables to use are known in advance (e.g., hard-coded).
If this is not the case, then the ResourceDefinitions can be provided
later by overriding SQLStore.readResourceDefinitions(DataAccess) instead.
- Since:
- 1.1
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedResourceDefinition(GenericName name, String query) Creates a new description of a resource in a SQL database. -
Method Summary
Modifier and TypeMethodDescriptionbooleanReturnstrueif this definition is equal to the given object.getName()Returns the name pattern of the table, view or query to access as a resource.Returns the SQL query to execute for the resource, or empty if the resource is a table or a view.intReturns a hash code value for this resource definition.static ResourceDefinitionCreates a resource definition for a SQL query.static ResourceDefinitionCreates a resource definition for a table or a view in any catalog and schema of the database.static ResourceDefinitionCreates a resource definition for a table or a view in the database.Returns a string representation of this resource definition.
-
Constructor Details
-
ResourceDefinition
Creates a new description of a resource in a SQL database. If thequeryargument is null, then thenameargument shall be the name pattern of a table or a view.- Parameters:
name- table, view or query name pattern. May containLIKEwildcard characters.- Since:
- 1.5
- See Also:
-
-
Method Details
-
table
Creates a resource definition for a table or a view in any catalog and schema of the database. The table name can contain SQL wildcard characters:'_'matches any single character and'%'matches any sequence of characters.- Parameters:
tablePattern- pattern (with'_'and'%'wildcards) of a table.- Returns:
- resource definition for the named table.
-
table
Creates a resource definition for a table or a view in the database. The table name can be any of the followings:catalog.schemaPattern.tablePatternschemaPattern.tablePatterntablePattern
'_'matches any single character and'%'matches any sequence of characters.- Parameters:
catalog- name of a catalog as it is stored in the database, ornullfor any catalog.schemaPattern- pattern (with'_'and'%'wildcards) of a schema, ornullfor any schema.tablePattern- pattern (with'_'and'%'wildcards) of a table.- Returns:
- resource definition for the named table.
-
query
Creates a resource definition for a SQL query. Each column in the query should have a distinct name, using SQLASkeyword if needed. It is caller's responsibility to ensure that the given query is not subject to SQL injection vulnerability.- Parameters:
name- name of the resource.query- the SQL query to execute.- Returns:
- resource definition for the given SQL query.
-
getName
Returns the name pattern of the table, view or query to access as a resource. There is small differences in the way it is used depending on whether the resource is a table or a query:- If the resource is a table or a view, then this is the fully qualified name (including catalog and schema)
of the table or view to include in the store. It may contain
LIKEwildcard characters, in which case all tables matching the pattern will be included. - If the resource is a query, then this is an arbitrary name to assign to the resource which will contain the query result.
- Returns:
- the table or view name pattern, or an arbitrary query name.
- If the resource is a table or a view, then this is the fully qualified name (including catalog and schema)
of the table or view to include in the store. It may contain
-
getQuery
-
equals
-
hashCode
-
toString
-