Class RestWorkersPlugin
java.lang.Object
io.vertigo.stella.plugins.work.rest.workers.RestWorkersPlugin
- All Implemented Interfaces:
io.vertigo.core.node.component.CoreComponent,io.vertigo.core.node.component.Plugin,WorkersPlugin
Implémentation de DistributedWorkManager, pour l'execution de travaux par des Workers distant.
Cette implémentation représente la partie client qui se déploie en ferme.
1- contacte la partie serveur pour récupérer les travaux qu'elle sait gérer,
2- execute la tache en synchrone exclusivement
3- retourne le résultat au serveur
- Author:
- npiedeloup, pchretien
-
Constructor Summary
ConstructorsConstructorDescriptionRestWorkersPlugin(String serverUrl, int timeoutSeconds, io.vertigo.commons.codec.CodecManager codecManager) Constructeur. -
Method Summary
-
Constructor Details
-
RestWorkersPlugin
@Inject public RestWorkersPlugin(String serverUrl, int timeoutSeconds, io.vertigo.commons.codec.CodecManager codecManager) Constructeur.- Parameters:
serverUrl- Url du serveurtimeoutSeconds- Timeout en seconde des connections vers le serveur (doit être > au timeoutSeconds du serveur)codecManager- Manager d'encodage/decodage
-
-
Method Details
-
pollWorkItem
Polling workitem.- Specified by:
pollWorkItemin interfaceWorkersPlugin- Type Parameters:
WR- resultW- work- Parameters:
workType- Type de tache- Returns:
- Workitem or null (if timeout)
-
putResult
public <R> void putResult(String callerNodeId, String nodeId, String workType, String workId, R result, Throwable error) Send result or error if execution failed- Specified by:
putResultin interfaceWorkersPlugin- Type Parameters:
R- result- Parameters:
workId- WorkIdresult- Result (not null if execution succeeded)error- Error ( not null if execution failed)
-
putStart
- Specified by:
putStartin interfaceWorkersPlugin
-
heartBeat
- Specified by:
heartBeatin interfaceWorkersPlugin
-