Class RedisMasterPlugin

java.lang.Object
io.vertigo.stella.plugins.work.redis.master.RedisMasterPlugin
All Implemented Interfaces:
io.vertigo.core.node.component.CoreComponent, io.vertigo.core.node.component.Plugin, MasterPlugin

public final class RedisMasterPlugin extends Object implements MasterPlugin
Ce plugin permet de distribuer des travaux. REDIS est utilisé comme plateforme d'échanges.
Author:
pchretien, npiedeloup
  • Constructor Details

    • RedisMasterPlugin

      @Inject public RedisMasterPlugin(Optional<String> connectorNameOpt, Optional<Integer> deadWorkTypeTimeoutSeconds, List<io.vertigo.connectors.redis.RedisConnector> redisConnectors, io.vertigo.commons.codec.CodecManager codecManager)
  • Method Details

    • pollResult

      public WorkResult pollResult(String callerNodeId, int waitTimeSeconds)
      Wait for next result.
      Specified by:
      pollResult in interface MasterPlugin
      Parameters:
      callerNodeId -
      waitTimeSeconds - wait result for x seconds
      Returns:
      Work result (null if none) : may be any result type
    • putWorkItem

      public <R, W> void putWorkItem(WorkItem<R,W> workItem)
      Add a WorkItem to do
      Specified by:
      putWorkItem in interface MasterPlugin
      Type Parameters:
      R - Result type
      W - Work type
      Parameters:
      workItem - Work item
    • checkDeadNodesAndWorkItems

      public io.vertigo.core.lang.Tuple<Set<String>,Set<String>> checkDeadNodesAndWorkItems(int maxRetry)
      Check for dead nodes and manage (retry) unfinished workItems.
      Specified by:
      checkDeadNodesAndWorkItems in interface MasterPlugin
      Parameters:
      maxRetry - max number of retry
      Returns: