public class SqlJoinCache extends Object implements AutoCloseable
| Modifier and Type | Field and Description |
|---|---|
private com.github.benmanes.caffeine.cache.Cache<Tuple<String,RecordSchema>,BlockingQueue<SqlJoinCalciteParameters>> |
calciteParameterQueues |
private ComponentLog |
logger |
| Constructor and Description |
|---|
SqlJoinCache(ComponentLog logger) |
| Modifier and Type | Method and Description |
|---|---|
private void |
clearQueue(BlockingQueue<SqlJoinCalciteParameters> parameterQueue) |
void |
close() |
private org.apache.calcite.jdbc.CalciteConnection |
createCalciteConnection() |
private SqlJoinCalciteParameters |
createCalciteParameters(String sql,
ProcessSession session,
RecordJoinInput originalInput,
RecordJoinInput enrichmentInput,
BlockingQueue<SqlJoinCalciteParameters> parameterQueue) |
SqlJoinCalciteParameters |
getCalciteParameters(String sql,
ProcessSession session,
RecordSchema schema,
RecordJoinInput originalInput,
RecordJoinInput enrichmentInput) |
private void |
onCacheEviction(Tuple<String,RecordSchema> key,
BlockingQueue<SqlJoinCalciteParameters> queue,
com.github.benmanes.caffeine.cache.RemovalCause cause) |
void |
returnCalciteParameters(String sql,
RecordSchema schema,
SqlJoinCalciteParameters parameters) |
private final ComponentLog logger
private final com.github.benmanes.caffeine.cache.Cache<Tuple<String,RecordSchema>,BlockingQueue<SqlJoinCalciteParameters>> calciteParameterQueues
public SqlJoinCache(ComponentLog logger)
public SqlJoinCalciteParameters getCalciteParameters(String sql, ProcessSession session, RecordSchema schema, RecordJoinInput originalInput, RecordJoinInput enrichmentInput) throws SQLException
SQLExceptionpublic void returnCalciteParameters(String sql, RecordSchema schema, SqlJoinCalciteParameters parameters)
private SqlJoinCalciteParameters createCalciteParameters(String sql, ProcessSession session, RecordJoinInput originalInput, RecordJoinInput enrichmentInput, BlockingQueue<SqlJoinCalciteParameters> parameterQueue) throws SQLException
SQLExceptionprivate org.apache.calcite.jdbc.CalciteConnection createCalciteConnection()
private void onCacheEviction(Tuple<String,RecordSchema> key, BlockingQueue<SqlJoinCalciteParameters> queue, com.github.benmanes.caffeine.cache.RemovalCause cause)
private void clearQueue(BlockingQueue<SqlJoinCalciteParameters> parameterQueue)
public void close()
throws Exception
close in interface AutoCloseableExceptionCopyright © 2023 Apache NiFi Project. All rights reserved.