Package xyz.block.ftl.runtime
Class FTLController
-
- All Implemented Interfaces:
-
xyz.block.ftl.LeaseClient,xyz.block.ftl.hotreload.RunnerNotification.RunnerCallback
public class FTLController implements LeaseClient, RunnerNotification.RunnerCallback
-
-
Method Summary
Modifier and Type Method Description static FTLControllerinstance()voidregisterDatabase(String name, GetDeploymentContextResponse.DbType type)Array<byte>getSecret(String secretName)Array<byte>getConfig(String config)DatasourceDetailsgetDatasource(String name)Array<byte>callVerb(String name, String module, Array<byte> payload)voidpublishEvent(String topic, String callingVerbName, Array<byte> event, String key)StringbeginTransaction(String databaseName)voidcommitTransaction(String databaseName, String transactionId)voidrollbackTransaction(String databaseName, String transactionId)StringexecuteQueryOne(String dbName, String sql, String paramsJson, Array<String> colToFieldName, @Nullable() String transactionId)List<String>executeQueryMany(String dbName, String sql, String paramsJson, Array<String> colToFieldName, @Nullable() String transactionId)voidexecuteQueryExec(String dbName, String sql, String paramsJson, @Nullable() String transactionId)LeaseHandleacquireLease(Duration duration, Array<String> keys)Acquire a lease for the given keys. voidloadDeploymentContext()synchronized booleanrunnerDetails(RunnerInfo info)synchronized voidreloadStarted()synchronized voidnewSchemaNumber(long seq)StringgetEgress(String name)-
-
Method Detail
-
instance
static FTLController instance()
-
registerDatabase
void registerDatabase(String name, GetDeploymentContextResponse.DbType type)
-
getDatasource
DatasourceDetails getDatasource(String name)
-
publishEvent
void publishEvent(String topic, String callingVerbName, Array<byte> event, String key)
-
beginTransaction
String beginTransaction(String databaseName)
-
commitTransaction
void commitTransaction(String databaseName, String transactionId)
-
rollbackTransaction
void rollbackTransaction(String databaseName, String transactionId)
-
executeQueryOne
String executeQueryOne(String dbName, String sql, String paramsJson, Array<String> colToFieldName, @Nullable() String transactionId)
-
executeQueryMany
List<String> executeQueryMany(String dbName, String sql, String paramsJson, Array<String> colToFieldName, @Nullable() String transactionId)
-
executeQueryExec
void executeQueryExec(String dbName, String sql, String paramsJson, @Nullable() String transactionId)
-
acquireLease
LeaseHandle acquireLease(Duration duration, Array<String> keys)
Acquire a lease for the given keys. The lease will be held for the given duration.
- Parameters:
duration- The time to acquire the lease forkeys- The lease keys- Returns:
A handle that can be used to release the lease
-
loadDeploymentContext
void loadDeploymentContext()
-
runnerDetails
synchronized boolean runnerDetails(RunnerInfo info)
-
reloadStarted
synchronized void reloadStarted()
-
newSchemaNumber
synchronized void newSchemaNumber(long seq)
-
-
-
-