Interface QueryPassthroughSignature
-
- All Known Implementing Classes:
BigQueryQueryPassthrough,CloudwatchQueryPassthrough,DDBQueryPassthrough,DocDBQueryPassthrough,ElasticsearchQueryPassthrough,HbaseQueryPassthrough,JdbcQueryPassthrough,NeptuneGremlinQueryPassthrough,NeptuneSparqlQueryPassthrough,RedisQueryPassthrough,TimestreamQueryPassthrough,TPCDSQueryPassthrough
public interface QueryPassthroughSignature
-
-
Field Summary
Fields Modifier and Type Field Description static StringDEFAULT_ENABLE_QUERY_PASSTHROUGH_STATEstatic StringENABLE_QUERY_PASSTHROUGHstatic StringSCHEMA_FUNCTION_NAME
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default voidaddQueryPassthroughCapabilityIfEnabled(com.google.common.collect.ImmutableMap.Builder<String,List<OptimizationSubType>> capabilities, Map<String,String> configOptions)Adds the query passthrough implementation, if user has not disabled it, to the connector's capabilitiesdefault booleanallowQueryPassthrough(Map<String,String> configOptions)A method that checks the Lambda's environment variables to see if QPT is disabled/enableddefault voidcustomConnectorVerifications(Map<String,String> engineQptArguments)Provides a mechanism to perform custom connector verification logic.List<String>getFunctionArguments()StringgetFunctionName()StringgetFunctionSchema()default StringgetFunctionSignature()Returns the full function schema and nameorg.slf4j.LoggergetLogger()note: due to needing to stay compatible with JDK8; we can't use JDK9 private methoddefault List<OptimizationSubType>getQueryPassthroughCapabilities()Creates a list of Optimization that includes the query passthrough definitiondefault voidverify(Map<String,String> engineQptArguments)verify that the arguments returned by the engine are the same that the connector defined And call on any connector-custom verificationdefault booleanverifyFunctionSignature(Map<String,String> argumentValues)Verifying that the query passthrough function signature is the one expected by the connector
-
-
-
Field Detail
-
SCHEMA_FUNCTION_NAME
static final String SCHEMA_FUNCTION_NAME
- See Also:
- Constant Field Values
-
ENABLE_QUERY_PASSTHROUGH
static final String ENABLE_QUERY_PASSTHROUGH
- See Also:
- Constant Field Values
-
DEFAULT_ENABLE_QUERY_PASSTHROUGH_STATE
static final String DEFAULT_ENABLE_QUERY_PASSTHROUGH_STATE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getFunctionSchema
String getFunctionSchema()
- Returns:
- QPT Function's Schema (also known as a domain or namepsace)
-
getFunctionName
String getFunctionName()
- Returns:
- QPT Function's name
-
getFunctionSignature
default String getFunctionSignature()
Returns the full function schema and name- Returns:
-
getFunctionArguments
List<String> getFunctionArguments()
- Returns:
- Query Passthrough Function's Arguments
-
getLogger
org.slf4j.Logger getLogger()
note: due to needing to stay compatible with JDK8; we can't use JDK9 private method- Returns:
- a logger
-
verify
default void verify(Map<String,String> engineQptArguments) throws IllegalArgumentException
verify that the arguments returned by the engine are the same that the connector defined And call on any connector-custom verification- Parameters:
engineQptArguments-- Throws:
IllegalArgumentException
-
customConnectorVerifications
default void customConnectorVerifications(Map<String,String> engineQptArguments)
Provides a mechanism to perform custom connector verification logic.
-
verifyFunctionSignature
default boolean verifyFunctionSignature(Map<String,String> argumentValues)
Verifying that the query passthrough function signature is the one expected by the connector- Parameters:
argumentValues-- Returns:
- true if the signature matches, otherwise false
-
getQueryPassthroughCapabilities
default List<OptimizationSubType> getQueryPassthroughCapabilities()
Creates a list of Optimization that includes the query passthrough definition- Returns:
- list of capability describes of the signature of the current implementation
-
addQueryPassthroughCapabilityIfEnabled
default void addQueryPassthroughCapabilityIfEnabled(com.google.common.collect.ImmutableMap.Builder<String,List<OptimizationSubType>> capabilities, Map<String,String> configOptions)
Adds the query passthrough implementation, if user has not disabled it, to the connector's capabilities- Parameters:
capabilities-configOptions-
-
-