Package com.exasol.adapter.jdbc
Class JDBCAdapter
- java.lang.Object
-
- com.exasol.adapter.jdbc.JDBCAdapter
-
- All Implemented Interfaces:
com.exasol.adapter.VirtualSchemaAdapter,AutoCloseable
public class JDBCAdapter extends Object implements com.exasol.adapter.VirtualSchemaAdapter
This class implements main logic for different types of requests a virtual schema JDBC adapter can receive.
-
-
Field Summary
Fields Modifier and Type Field Description protected RemoteConnectionFactoryconnectionFactoryConnection factory used to get and cache jdbc connection.
-
Constructor Summary
Constructors Constructor Description JDBCAdapter(SqlDialectFactory sqlDialectFactory, com.exasol.adapter.AdapterContext adapterContext)Construct a new instance ofJDBCAdapter
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()com.exasol.adapter.response.CreateVirtualSchemaResponsecreateVirtualSchema(com.exasol.ExaMetadata exasolMetadata, com.exasol.adapter.request.CreateVirtualSchemaRequest request)com.exasol.adapter.response.DropVirtualSchemaResponsedropVirtualSchema(com.exasol.ExaMetadata metadata, com.exasol.adapter.request.DropVirtualSchemaRequest request)com.exasol.adapter.response.GetCapabilitiesResponsegetCapabilities(com.exasol.ExaMetadata exaMetadata, com.exasol.adapter.request.GetCapabilitiesRequest request)protected static com.exasol.adapter.AdapterPropertiesgetPropertiesFromRequest(com.exasol.adapter.request.AdapterRequest request)BuildAdapterPropertiesfromAdapterRequestinstance.protected voidlogCreateVirtualSchemaRequestReceived(com.exasol.adapter.request.CreateVirtualSchemaRequest request)Log a create virtual schema request.protected voidlogDropVirtualSchemaRequestReceived(com.exasol.adapter.request.DropVirtualSchemaRequest request)Log drop virtual schema request.com.exasol.adapter.response.PushDownResponsepushdown(com.exasol.ExaMetadata exaMetadata, com.exasol.adapter.request.PushDownRequest request)com.exasol.adapter.response.RefreshResponserefresh(com.exasol.ExaMetadata metadata, com.exasol.adapter.request.RefreshRequest request)com.exasol.adapter.response.SetPropertiesResponsesetProperties(com.exasol.ExaMetadata metadata, com.exasol.adapter.request.SetPropertiesRequest request)
-
-
-
Field Detail
-
connectionFactory
protected RemoteConnectionFactory connectionFactory
Connection factory used to get and cache jdbc connection.
-
-
Constructor Detail
-
JDBCAdapter
public JDBCAdapter(SqlDialectFactory sqlDialectFactory, com.exasol.adapter.AdapterContext adapterContext)
Construct a new instance ofJDBCAdapter- Parameters:
sqlDialectFactory-SqlDialectFactoryfor creatingSqlDialectadapterContext- context for the adapter
-
-
Method Detail
-
createVirtualSchema
public com.exasol.adapter.response.CreateVirtualSchemaResponse createVirtualSchema(com.exasol.ExaMetadata exasolMetadata, com.exasol.adapter.request.CreateVirtualSchemaRequest request) throws com.exasol.adapter.AdapterException- Specified by:
createVirtualSchemain interfacecom.exasol.adapter.VirtualSchemaAdapter- Throws:
com.exasol.adapter.AdapterException
-
logCreateVirtualSchemaRequestReceived
protected void logCreateVirtualSchemaRequestReceived(com.exasol.adapter.request.CreateVirtualSchemaRequest request)
Log a create virtual schema request.- Parameters:
request- create request
-
getPropertiesFromRequest
protected static com.exasol.adapter.AdapterProperties getPropertiesFromRequest(com.exasol.adapter.request.AdapterRequest request)
BuildAdapterPropertiesfromAdapterRequestinstance.- Parameters:
request- request to use- Returns:
- adapter properties
-
dropVirtualSchema
public com.exasol.adapter.response.DropVirtualSchemaResponse dropVirtualSchema(com.exasol.ExaMetadata metadata, com.exasol.adapter.request.DropVirtualSchemaRequest request)- Specified by:
dropVirtualSchemain interfacecom.exasol.adapter.VirtualSchemaAdapter
-
logDropVirtualSchemaRequestReceived
protected void logDropVirtualSchemaRequestReceived(com.exasol.adapter.request.DropVirtualSchemaRequest request)
Log drop virtual schema request.- Parameters:
request- drop request
-
refresh
public com.exasol.adapter.response.RefreshResponse refresh(com.exasol.ExaMetadata metadata, com.exasol.adapter.request.RefreshRequest request) throws com.exasol.adapter.AdapterException- Specified by:
refreshin interfacecom.exasol.adapter.VirtualSchemaAdapter- Throws:
com.exasol.adapter.AdapterException
-
setProperties
public com.exasol.adapter.response.SetPropertiesResponse setProperties(com.exasol.ExaMetadata metadata, com.exasol.adapter.request.SetPropertiesRequest request) throws com.exasol.adapter.AdapterException- Specified by:
setPropertiesin interfacecom.exasol.adapter.VirtualSchemaAdapter- Throws:
com.exasol.adapter.AdapterException
-
getCapabilities
public com.exasol.adapter.response.GetCapabilitiesResponse getCapabilities(com.exasol.ExaMetadata exaMetadata, com.exasol.adapter.request.GetCapabilitiesRequest request) throws com.exasol.adapter.AdapterException- Specified by:
getCapabilitiesin interfacecom.exasol.adapter.VirtualSchemaAdapter- Throws:
com.exasol.adapter.AdapterException
-
pushdown
public com.exasol.adapter.response.PushDownResponse pushdown(com.exasol.ExaMetadata exaMetadata, com.exasol.adapter.request.PushDownRequest request) throws com.exasol.adapter.AdapterException- Specified by:
pushdownin interfacecom.exasol.adapter.VirtualSchemaAdapter- Throws:
com.exasol.adapter.AdapterException
-
close
public void close()
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfacecom.exasol.adapter.VirtualSchemaAdapter
-
-