Class OracleRecordHandler
- java.lang.Object
-
- com.amazonaws.athena.connector.lambda.handlers.RecordHandler
-
- com.amazonaws.athena.connectors.jdbc.manager.JdbcRecordHandler
-
- com.amazonaws.athena.connectors.oracle.OracleRecordHandler
-
- All Implemented Interfaces:
FederationRequestHandler,com.amazonaws.services.lambda.runtime.RequestStreamHandler
public class OracleRecordHandler extends JdbcRecordHandler
Data handler, user must have necessary permissions to read from necessary tables.
-
-
Field Summary
-
Fields inherited from class com.amazonaws.athena.connectors.jdbc.manager.JdbcRecordHandler
queryPassthrough
-
Fields inherited from class com.amazonaws.athena.connector.lambda.handlers.RecordHandler
configOptions
-
-
Constructor Summary
Constructors Constructor Description OracleRecordHandler(DatabaseConnectionConfig databaseConnectionConfig, JdbcConnectionFactory jdbcConnectionFactory, Map<String,String> configOptions)OracleRecordHandler(DatabaseConnectionConfig databaseConnectionConfig, Map<String,String> configOptions)OracleRecordHandler(Map<String,String> configOptions)Instantiates handler to be used by Lambda function directly.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PreparedStatementbuildSplitSql(Connection jdbcConnection, String catalogName, TableName tableName, org.apache.arrow.vector.types.pojo.Schema schema, Constraints constraints, Split split)Builds split SQL string and returns prepared statement.CredentialsProvidercreateCredentialsProvider(String secretName, software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration requestOverrideConfiguration)Factory method to create CredentialsProvider.-
Methods inherited from class com.amazonaws.athena.connectors.jdbc.manager.JdbcRecordHandler
buildQueryPassthroughSql, disableCaseSensitivelyLookUpSession, enableCaseSensitivelyLookUpSession, getColumnNameRemapping, getCredentialProvider, getDatabaseConnectionConfig, getDatabaseConnectionSecret, getJdbcConnectionFactory, getSqlDialect, makeExtractor, makeFactory, readWithConstraint
-
Methods inherited from class com.amazonaws.athena.connector.lambda.handlers.RecordHandler
doHandleRequest, doReadRecords, getCachableSecretsManager, getKmsEncryptionProvider, getSpillConfig, handleRequest, onPing
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.amazonaws.athena.connector.lambda.handlers.FederationRequestHandler
getAthenaClient, getCredentialProvider, getRequestOverrideConfig, getRequestOverrideConfig, getRequestOverrideConfig, getS3Client, getSecret, getSecret, getSessionCredentials, isRequestFederated, resolveSecrets, resolveWithDefaultCredentials
-
-
-
-
Constructor Detail
-
OracleRecordHandler
public OracleRecordHandler(Map<String,String> configOptions)
Instantiates handler to be used by Lambda function directly. Recommend usingOracleMuxCompositeHandlerinstead.
-
OracleRecordHandler
public OracleRecordHandler(DatabaseConnectionConfig databaseConnectionConfig, Map<String,String> configOptions)
-
OracleRecordHandler
public OracleRecordHandler(DatabaseConnectionConfig databaseConnectionConfig, JdbcConnectionFactory jdbcConnectionFactory, Map<String,String> configOptions)
-
-
Method Detail
-
buildSplitSql
public PreparedStatement buildSplitSql(Connection jdbcConnection, String catalogName, TableName tableName, org.apache.arrow.vector.types.pojo.Schema schema, Constraints constraints, Split split) throws SQLException
Description copied from class:JdbcRecordHandlerBuilds split SQL string and returns prepared statement.- Specified by:
buildSplitSqlin classJdbcRecordHandler- Parameters:
jdbcConnection- jdbc connection. SeeConnectioncatalogName- Athena provided catalog name.tableName- database table name.schema- table schema.constraints- constraints to push down to the database.split- table split.- Returns:
- prepared statement with sql. See
PreparedStatement - Throws:
SQLException- JDBC database exception.
-
createCredentialsProvider
public CredentialsProvider createCredentialsProvider(String secretName, software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration requestOverrideConfiguration)
Description copied from interface:FederationRequestHandlerFactory method to create CredentialsProvider. Subclasses can override this to provide custom credential provider implementations (e.g., SnowflakeCredentialsProvider).- Parameters:
secretName- The secret name to retrieve credentials fromrequestOverrideConfiguration- Optional AWS request override configuration- Returns:
- CredentialsProvider instance
-
-