public class ConfigurationDBRef extends Object implements Serializable
Modifier and Type | Class and Description |
---|---|
static class |
ConfigurationDBRef.ColumnChangeCaseEnum
Controls how output column names get reflected in the event type.
|
static interface |
ConfigurationDBRef.ConnectionFactoryDesc
Marker for different connection factory settings.
|
static class |
ConfigurationDBRef.ConnectionLifecycleEnum
Enum controlling connection lifecycle.
|
static class |
ConfigurationDBRef.ConnectionSettings
Supplies connectioon-level settings for a given database name.
|
static class |
ConfigurationDBRef.DataSourceConnection
Connection factory settings for using a DataSource.
|
static class |
ConfigurationDBRef.DataSourceFactory
Connection factory settings for using a Apache DBCP or other provider DataSource factory.
|
static class |
ConfigurationDBRef.DriverManagerConnection
Connection factory settings for using a DriverManager.
|
static class |
ConfigurationDBRef.MetadataOriginEnum
Indicates how the engine retrieves metadata about a statement's output columns.
|
Constructor and Description |
---|
ConfigurationDBRef()
Ctor.
|
Modifier and Type | Method and Description |
---|---|
void |
addSqlTypesBinding(int sqlType,
Class javaTypeName)
Adds a mapping of a java.sql.Types type to a Java type.
|
void |
addSqlTypesBinding(int sqlType,
String javaTypeName)
Adds a mapping of a java.sql.Types type to a Java type.
|
ConfigurationDBRef.ColumnChangeCaseEnum |
getColumnChangeCase()
Returns enum value determining how the engine changes case on output column names
returned from statement or statement result set metadata.
|
ConfigurationDBRef.ConnectionFactoryDesc |
getConnectionFactoryDesc()
Returns the descriptor controlling connection creation settings.
|
ConfigurationDBRef.ConnectionLifecycleEnum |
getConnectionLifecycleEnum()
Returns the setting to control whether a new connection is obtained for each lookup,
or connections are retained between lookups.
|
ConfigurationDBRef.ConnectionSettings |
getConnectionSettings()
Returns the connection settings for this database.
|
ConfigurationDataCache |
getDataCacheDesc()
Return a query result data cache descriptor.
|
ConfigurationDBRef.MetadataOriginEnum |
getMetadataRetrievalEnum()
Returns an enumeration indicating how the engine retrieves metadata about the columns
that a given SQL query returns.
|
Map<Integer,String> |
getSqlTypesMapping()
Returns the mapping of types that the engine must perform
when receiving output columns of that sql types.
|
void |
setColumnChangeCase(ConfigurationDBRef.ColumnChangeCaseEnum columnChangeCaseEnum)
Sets enum value determining how the engine should change case on output column names
returned from statement or statement result set metadata.
|
void |
setConnectionAutoCommit(boolean value)
Sets the auto-commit connection settings for new connections to this database.
|
void |
setConnectionCatalog(String catalog)
Sets the catalog name for new connections created for this database.
|
void |
setConnectionLifecycleEnum(ConfigurationDBRef.ConnectionLifecycleEnum connectionLifecycleEnum)
Controls whether a new connection is obtained for each lookup,
or connections are retained between lookups.
|
void |
setConnectionReadOnly(boolean isReadOnly)
Sets the read-only flag on new connections created for this database.
|
void |
setConnectionTransactionIsolation(int value)
Sets the transaction isolation level on new connections created for this database.
|
void |
setDataSourceConnection(String contextLookupName,
Properties environmentProps)
Sets the connection factory to use
DataSource to obtain a
connection. |
void |
setDataSourceFactory(Properties properties,
String dataSourceFactoryClassName)
Set the connection factory to use a factory class that provides an instance of
DataSource . |
void |
setDriverManagerConnection(String className,
String url,
Properties connectionArgs)
Sets the connection factory to use
DriverManager to obtain a
connection. |
void |
setDriverManagerConnection(String className,
String url,
String username,
String password)
Sets the connection factory to use
DriverManager to obtain a
connection. |
void |
setDriverManagerConnection(String className,
String url,
String username,
String password,
Properties connectionArgs)
Sets the connection factory to use
DriverManager to obtain a
connection. |
void |
setExpiryTimeCache(double maxAgeSeconds,
double purgeIntervalSeconds)
Configures an expiry-time cache of the given maximum age in seconds and purge interval in seconds.
|
void |
setExpiryTimeCache(double maxAgeSeconds,
double purgeIntervalSeconds,
ConfigurationCacheReferenceType cacheReferenceType)
Configures an expiry-time cache of the given maximum age in seconds and purge interval in seconds.
|
void |
setLRUCache(int size)
Configures a LRU cache of the given size for the database.
|
void |
setMetadataOrigin(ConfigurationDBRef.MetadataOriginEnum metadataOrigin)
Sets and indicator how the engine should retrieve metadata about the columns
that a given SQL query returns.
|
public void setDataSourceFactory(Properties properties, String dataSourceFactoryClassName)
DataSource
.
This method is designed for use with Apache Commons DBCP and its BasicDataSourceFactory but can also work for any application-provided factory for DataSource instances.
When using Apache DBCP, specify BasicDataSourceFactory.class.getName() as the class name and populate all properties that Apache DBCP takes for connection pool configuration.
When using an application-provided data source factory, pass the class name of a class that provides a public static method createDataSource(Properties properties) returning DataSource.
dataSourceFactoryClassName
- the classname of the data source factoryproperties
- passed to the createDataSource method of the data source factory classpublic void setDataSourceConnection(String contextLookupName, Properties environmentProps)
DataSource
to obtain a
connection.contextLookupName
- is the object name to look up via InitialContext
environmentProps
- are the optional properties to pass to the contextpublic void setDriverManagerConnection(String className, String url, Properties connectionArgs)
DriverManager
to obtain a
connection.className
- is the driver class nameurl
- is the URLconnectionArgs
- are optional connection argumentspublic void setDriverManagerConnection(String className, String url, String username, String password)
DriverManager
to obtain a
connection.className
- is the driver class nameurl
- is the URLusername
- is the username to obtain a connectionpassword
- is the password to obtain a connectionpublic void setDriverManagerConnection(String className, String url, String username, String password, Properties connectionArgs)
DriverManager
to obtain a
connection.className
- is the driver class nameurl
- is the URLusername
- is the username to obtain a connectionpassword
- is the password to obtain a connectionconnectionArgs
- are optional connection argumentspublic void setConnectionAutoCommit(boolean value)
value
- is true to set auto-commit to true, or false to set auto-commit to false, or null to accepts the defaultpublic void setConnectionTransactionIsolation(int value)
value
- is the transaction isolation levelpublic void setConnectionReadOnly(boolean isReadOnly)
isReadOnly
- is the read-only flagpublic void setConnectionCatalog(String catalog)
catalog
- is the catalog namepublic ConfigurationDBRef.ConnectionSettings getConnectionSettings()
public ConfigurationDBRef.ConnectionLifecycleEnum getConnectionLifecycleEnum()
public void setConnectionLifecycleEnum(ConfigurationDBRef.ConnectionLifecycleEnum connectionLifecycleEnum)
connectionLifecycleEnum
- is an enum controlling connection allocationpublic ConfigurationDBRef.ConnectionFactoryDesc getConnectionFactoryDesc()
public void setLRUCache(int size)
size
- is the maximum number of entries before query results are evictedpublic void setExpiryTimeCache(double maxAgeSeconds, double purgeIntervalSeconds)
Specifies the cache reference type to be weak references. Weak reference cache entries become eligible for garbage collection and are removed from cache when the garbage collection requires so.
maxAgeSeconds
- is the maximum number of seconds before a query result is considered stale (also known as time-to-live)purgeIntervalSeconds
- is the interval at which the engine purges stale data from the cachepublic void setExpiryTimeCache(double maxAgeSeconds, double purgeIntervalSeconds, ConfigurationCacheReferenceType cacheReferenceType)
maxAgeSeconds
- is the maximum number of seconds before a query result is considered stale (also known as time-to-live)purgeIntervalSeconds
- is the interval at which the engine purges stale data from the cachecacheReferenceType
- specifies the reference type to usepublic ConfigurationDataCache getDataCacheDesc()
public ConfigurationDBRef.MetadataOriginEnum getMetadataRetrievalEnum()
The engine requires to retrieve result column names and types in order to build a resulting event type and perform expression type checking.
public void setMetadataOrigin(ConfigurationDBRef.MetadataOriginEnum metadataOrigin)
The engine requires to retrieve result column names and types in order to build a resulting event type and perform expression type checking.
metadataOrigin
- indication how to retrieve metadatapublic ConfigurationDBRef.ColumnChangeCaseEnum getColumnChangeCase()
public void setColumnChangeCase(ConfigurationDBRef.ColumnChangeCaseEnum columnChangeCaseEnum)
columnChangeCaseEnum
- change case enumspublic void addSqlTypesBinding(int sqlType, String javaTypeName)
The mapping dictates to the engine how the output column should be represented as a Java Object.
Accepts a Java classname (fully-qualified or simple) or primitive type name
for the Java type parameter. See DatabaseTypeEnum
for valid values for the java type name.
sqlType
- is a java.sql.Types constant, for which output columns are converted to java typejavaTypeName
- is a Java class namepublic void addSqlTypesBinding(int sqlType, Class javaTypeName)
The mapping dictates to the engine how the output column should be represented as a Java Object.
Accepts a Java class for the Java type parameter. See DatabaseTypeEnum
for valid values.
sqlType
- is a java.sql.Types constant, for which output columns are converted to java typejavaTypeName
- is a Java class