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)StringexecuteQueryOne(String dbName, String sql, String paramsJson, Array<String> colToFieldName)List<String>executeQueryMany(String dbName, String sql, String paramsJson, Array<String> colToFieldName)voidexecuteQueryExec(String dbName, String sql, String paramsJson)LeaseHandleacquireLease(Duration duration, Array<String> keys)Acquire a lease for the given keys. voidloadDeploymentContext()synchronized voidrunnerDetails(RunnerInfo info)synchronized voidreloadStarted()synchronized voidnewRunnerDeployment(String version)-
-
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)
-
executeQueryOne
String executeQueryOne(String dbName, String sql, String paramsJson, Array<String> colToFieldName)
-
executeQueryMany
List<String> executeQueryMany(String dbName, String sql, String paramsJson, Array<String> colToFieldName)
-
executeQueryExec
void executeQueryExec(String dbName, String sql, String paramsJson)
-
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 void runnerDetails(RunnerInfo info)
-
reloadStarted
synchronized void reloadStarted()
-
newRunnerDeployment
synchronized void newRunnerDeployment(String version)
-
-
-
-