Package jenkins.slaves
Class JnlpSlaveAgentProtocol4
- java.lang.Object
-
- jenkins.AgentProtocol
-
- jenkins.slaves.JnlpSlaveAgentProtocol4
-
- All Implemented Interfaces:
ExtensionPoint
@Extension @Symbol("jnlp4") public class JnlpSlaveAgentProtocol4 extends AgentProtocol
Master-side implementation for JNLP4-connect protocol.@see
JnlpProtocol4Handler
for more details.- Since:
- 2.27 available as experimental protocol, 2.41 enabled by default
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
-
Constructor Summary
Constructors Constructor Description JnlpSlaveAgentProtocol4()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getDisplayName()
Returns the human readable protocol display name.String
getName()
Protocol name.void
handle(Socket socket)
Called by the connection handling thread to execute the protocol.boolean
isOptIn()
Allow experimentalAgentProtocol
implementations to declare being opt-in.-
Methods inherited from class jenkins.AgentProtocol
all, isDeprecated, isRequired, of
-
-
-
-
Method Detail
-
isOptIn
public boolean isOptIn()
Description copied from class:AgentProtocol
Allow experimentalAgentProtocol
implementations to declare being opt-in. Note thatJenkins.setAgentProtocols(Set)
only records the protocols where the admin has made a conscious decision thus:- if a protocol is opt-in, it records the admin enabling it
- if a protocol is opt-out, it records the admin disabling it
opt-in -> opt-out -> opt-in
. Implementations should never flip-flop:opt-in -> opt-out -> opt-in -> opt-out
as that will basically clear any preference that an admin has set. This latter restriction should be ok as we only ever will be adding new protocols and retiring old ones.- Overrides:
isOptIn
in classAgentProtocol
- Returns:
true
if the protocol requires explicit opt-in.- See Also:
Jenkins.setAgentProtocols(Set)
-
getDisplayName
public String getDisplayName()
Description copied from class:AgentProtocol
Returns the human readable protocol display name.- Overrides:
getDisplayName
in classAgentProtocol
- Returns:
- the human readable protocol display name.
-
getName
public String getName()
Description copied from class:AgentProtocol
Protocol name. This is a short string that consists of printable ASCII chars. Sent by the client to select the protocol.- Specified by:
getName
in classAgentProtocol
- Returns:
- null to be disabled. This is useful for avoiding getting used until the protocol is properly configured.
-
handle
public void handle(Socket socket) throws IOException, InterruptedException
Description copied from class:AgentProtocol
Called by the connection handling thread to execute the protocol.- Specified by:
handle
in classAgentProtocol
- Throws:
IOException
InterruptedException
-
-