Package io.trino.plugin.kinesis.s3config
Class S3TableConfigClient
java.lang.Object
io.trino.plugin.kinesis.s3config.S3TableConfigClient
- All Implemented Interfaces:
Runnable
Utility class to retrieve table definitions from a common place on Amazon S3.
This is so that we can add new tables in a central "metastore" location without having to update every single node with the files.
This makes calls to Amazon AWS using the S3 client.
-
Constructor Summary
ConstructorsConstructorDescriptionS3TableConfigClient(KinesisConfig connectorConfig, KinesisClientProvider clientManager, io.airlift.json.JsonCodec<KinesisStreamDescription> jsonCodec) -
Method Summary
Modifier and TypeMethodDescriptionMain entry point to get table definitions from S3 using bucket and object directory given in the configuration.booleanIndicates this class is being used and actively reading table definitions from S3.voidrun()protected void
-
Constructor Details
-
S3TableConfigClient
@Inject public S3TableConfigClient(KinesisConfig connectorConfig, KinesisClientProvider clientManager, io.airlift.json.JsonCodec<KinesisStreamDescription> jsonCodec)
-
-
Method Details
-
startS3Updates
@PostConstruct protected void startS3Updates() -
isUsingS3
public boolean isUsingS3()Indicates this class is being used and actively reading table definitions from S3. -
getTablesFromS3
Main entry point to get table definitions from S3 using bucket and object directory given in the configuration.For safety, an immutable copy built from the internal map is returned.
-
run
public void run()
-