Class AgentRoutingServiceSingleNodeImpl
java.lang.Object
com.netflix.genie.web.agent.services.impl.AgentRoutingServiceSingleNodeImpl
- All Implemented Interfaces:
AgentRoutingService
@Validated
public class AgentRoutingServiceSingleNodeImpl
extends Object
implements AgentRoutingService
Implementation of
AgentRoutingService
that assumes a single Genie node and tracks connections in-memory.- Since:
- 4.0.0
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetHostnameForAgentConnection
(@NotBlank String jobId) Look up the hostname of the Genie node currently handling the agent connection for a given job.void
handleClientConnected
(@NotBlank String jobId) Handle a new agent connection.void
handleClientDisconnected
(@NotBlank String jobId) Handle connected agent disconnection.boolean
isAgentConnected
(String jobId) Whether the agent executing a given job is currently connected.boolean
isAgentConnectionLocal
(@NotBlank String jobId) Tells whether the agent running a given job is connected to the local node.
-
Constructor Details
-
AgentRoutingServiceSingleNodeImpl
Constructor.- Parameters:
genieHostInfo
- local genie node host information
-
-
Method Details
-
getHostnameForAgentConnection
Look up the hostname of the Genie node currently handling the agent connection for a given job.- Specified by:
getHostnameForAgentConnection
in interfaceAgentRoutingService
- Parameters:
jobId
- the job id- Returns:
- a boxed hostname string, empty if the connection for the given job id is not found
-
isAgentConnectionLocal
Tells whether the agent running a given job is connected to the local node.- Specified by:
isAgentConnectionLocal
in interfaceAgentRoutingService
- Parameters:
jobId
- the job id- Returns:
- true if the agent has an active connection to this node
-
handleClientConnected
Handle a new agent connection.- Specified by:
handleClientConnected
in interfaceAgentRoutingService
- Parameters:
jobId
- the job id the connected agent is running
-
handleClientDisconnected
Handle connected agent disconnection.- Specified by:
handleClientDisconnected
in interfaceAgentRoutingService
- Parameters:
jobId
- the job id the disconnected agent is running
-
isAgentConnected
Whether the agent executing a given job is currently connected.- Specified by:
isAgentConnected
in interfaceAgentRoutingService
- Parameters:
jobId
- the job id- Returns:
- true if an agent running the job is connected
-