public abstract class TelnetOptionHandler
extends java.lang.Object
TelnetOptionHandler implements basic option handling functionality and defines abstract methods that must be implemented to define subnegotiation behaviour.
Modifier and Type | Field and Description |
---|---|
private boolean |
acceptLocal
true if the option should be accepted on the local side
|
private boolean |
acceptRemote
true if the option should be accepted on the remote side
|
private boolean |
doFlag
true if the option is active on the local side
|
private boolean |
initialLocal
true if the option should be activated on the local side
|
private boolean |
initialRemote
true if the option should be activated on the remote side
|
private int |
optionCode
Option code
|
private boolean |
willFlag
true if the option is active on the remote side
|
Constructor and Description |
---|
TelnetOptionHandler(int optcode,
boolean initlocal,
boolean initremote,
boolean acceptlocal,
boolean acceptremote)
Constructor for the TelnetOptionHandler.
|
Modifier and Type | Method and Description |
---|---|
int[] |
answerSubnegotiation(int[] suboptionData,
int suboptionLength)
Method called upon reception of a subnegotiation for this option
coming from the other end.
|
boolean |
getAcceptLocal()
Returns a boolean indicating whether to accept a DO
request coming from the other end.
|
boolean |
getAcceptRemote()
Returns a boolean indicating whether to accept a WILL
request coming from the other end.
|
(package private) boolean |
getDo()
Returns a boolean indicating whether a DO request sent to the other
side has been acknowledged.
|
boolean |
getInitLocal()
Returns a boolean indicating whether to send a WILL request
to the other end upon connection.
|
boolean |
getInitRemote()
Returns a boolean indicating whether to send a DO request
to the other end upon connection.
|
int |
getOptionCode()
Returns the option code for this option.
|
(package private) boolean |
getWill()
Returns a boolean indicating whether a WILL request sent to the other
side has been acknowledged.
|
void |
setAcceptLocal(boolean accept)
Set behaviour of the option for DO requests coming from
the other end.
|
void |
setAcceptRemote(boolean accept)
Set behaviour of the option for WILL requests coming from
the other end.
|
(package private) void |
setDo(boolean state)
Tells this option whether a DO request sent to the other
side has been acknowledged (invoked by TelnetClient).
|
void |
setInitLocal(boolean init)
Tells this option whether to send a WILL request upon connection.
|
void |
setInitRemote(boolean init)
Tells this option whether to send a DO request upon connection.
|
(package private) void |
setWill(boolean state)
Tells this option whether a WILL request sent to the other
side has been acknowledged (invoked by TelnetClient).
|
int[] |
startSubnegotiationLocal()
This method is invoked whenever this option is acknowledged active on
the local end (TelnetClient sent a WILL, remote side sent a DO).
|
int[] |
startSubnegotiationRemote()
This method is invoked whenever this option is acknowledged active on
the remote end (TelnetClient sent a DO, remote side sent a WILL).
|
private int optionCode
private boolean initialLocal
private boolean initialRemote
private boolean acceptLocal
private boolean acceptRemote
private boolean doFlag
private boolean willFlag
public TelnetOptionHandler(int optcode, boolean initlocal, boolean initremote, boolean acceptlocal, boolean acceptremote)
optcode
- - Option code.initlocal
- - if set to true, a WILL is sent upon connection.initremote
- - if set to true, a DO is sent upon connection.acceptlocal
- - if set to true, any DO request is accepted.acceptremote
- - if set to true, any WILL request is accepted.public int getOptionCode()
public boolean getAcceptLocal()
public boolean getAcceptRemote()
public void setAcceptLocal(boolean accept)
accept
- - if true, subsequent DO requests will be accepted.public void setAcceptRemote(boolean accept)
accept
- - if true, subsequent WILL requests will be accepted.public boolean getInitLocal()
public boolean getInitRemote()
public void setInitLocal(boolean init)
init
- - if true, a WILL request will be sent upon subsequent
connections.public void setInitRemote(boolean init)
init
- - if true, a DO request will be sent upon subsequent
connections.public int[] answerSubnegotiation(int[] suboptionData, int suboptionLength)
This implementation returns null, and must be overridden by the actual TelnetOptionHandler to specify which response must be sent for the subnegotiation request.
suboptionData
- - the sequence received, without IAC SB & IAC SEsuboptionLength
- - the length of data in suboption_data
public int[] startSubnegotiationLocal()
This implementation returns null, and must be overriden by the actual TelnetOptionHandler to specify which response must be sent for the subnegotiation request.
public int[] startSubnegotiationRemote()
This implementation returns null, and must be overriden by the actual TelnetOptionHandler to specify which response must be sent for the subnegotiation request.
boolean getWill()
void setWill(boolean state)
state
- - if true, a WILL request has been acknowledged.boolean getDo()
void setDo(boolean state)
state
- - if true, a DO request has been acknowledged.