public class RestoreOrchestrator extends Object implements AsyncServiceSchedulerResultsReceiver, MessageEmitter
Constructor and Description |
---|
RestoreOrchestrator(int restoreParallelism,
RestoreMetricsManager restoreMetricsManager) |
RestoreOrchestrator(RestoreMetricsManager restoreMetricsManager) |
Modifier and Type | Method and Description |
---|---|
void |
forceShutdown()
Force shutdown Restore Orchestrator
|
OrchestratorStatus |
getStatus() |
boolean |
pause()
Pauses the RestoreOrchestrator.
|
void |
reportServiceSchedulerResponse(MessageResponse response)
Passes along response from a previous request to an AsyncServiceScheduler.
|
boolean |
resume()
Resumes the RestoreOrchestrator.
|
void |
runRestoreJob(Job job) |
void |
setAsyncTaskScheduler(AsyncTaskScheduler asyncTaskScheduler) |
void |
setKafkaManager(KafkaManager kafkaManager) |
void |
setObjectStoreManager(ObjectStoreManager objectStoreManager) |
boolean |
shutdown()
Shuts down Restore Orchestrator, cleaning up resources.
|
boolean |
startUp()
Start up Async Service Schedulers and the dedicated thread to listen to response queue.
|
StateMachineController |
stateMachineController() |
void |
submitRequest(MessageRequest request)
Submit the request to corresponding Async Service Scheduler
If the request queue of the Scheduler is full, the request will be put into RestoreOrchestrator's
response queue, which is essentially be treated as a retry.
|
public RestoreOrchestrator(RestoreMetricsManager restoreMetricsManager)
public RestoreOrchestrator(int restoreParallelism, RestoreMetricsManager restoreMetricsManager)
public void reportServiceSchedulerResponse(MessageResponse response)
AsyncServiceSchedulerResultsReceiver
reportServiceSchedulerResponse
in interface AsyncServiceSchedulerResultsReceiver
response
- the response to a previous asynchronous requestpublic boolean startUp() throws Exception
Exception
public boolean shutdown()
public void forceShutdown()
public boolean pause() throws InterruptedException
InterruptedException
public boolean resume()
public OrchestratorStatus getStatus()
public void submitRequest(MessageRequest request)
submitRequest
in interface MessageEmitter
request
- public StateMachineController stateMachineController()
public void setKafkaManager(KafkaManager kafkaManager)
public void setAsyncTaskScheduler(AsyncTaskScheduler asyncTaskScheduler)
public void setObjectStoreManager(ObjectStoreManager objectStoreManager)
public void runRestoreJob(Job job)