Class SqlServerRecordHandler
- java.lang.Object
-
- com.amazonaws.athena.connector.lambda.handlers.RecordHandler
-
- com.amazonaws.athena.connectors.jdbc.manager.JdbcRecordHandler
-
- com.amazonaws.athena.connectors.sqlserver.SqlServerRecordHandler
-
- All Implemented Interfaces:
FederationRequestHandler,com.amazonaws.services.lambda.runtime.RequestStreamHandler
public class SqlServerRecordHandler extends JdbcRecordHandler
-
-
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 SqlServerRecordHandler(DatabaseConnectionConfig databaseConnectionConfig, JdbcConnectionFactory jdbcConnectionFactory, Map<String,String> configOptions)SqlServerRecordHandler(DatabaseConnectionConfig databaseConnectionConfig, Map<String,String> configOptions)SqlServerRecordHandler(Map<String,String> configOptions)
-
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, 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, getCredentialProvider, getRequestOverrideConfig, getRequestOverrideConfig, getRequestOverrideConfig, getS3Client, getSecret, getSecret, getSessionCredentials, isRequestFederated, resolveSecrets, resolveWithDefaultCredentials
-
-
-
-
Constructor Detail
-
SqlServerRecordHandler
public SqlServerRecordHandler(DatabaseConnectionConfig databaseConnectionConfig, Map<String,String> configOptions)
-
SqlServerRecordHandler
public SqlServerRecordHandler(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
-
-