java.lang.Objectcom.realtime.crossfire.jxclient.queue.CommandQueue
public class CommandQueue
Maintains the pending (ncom) commands sent to the server.
| Field Summary | |
|---|---|
private  CrossfireComcListener | 
crossfireComcListener
The listener to track comc commands.  | 
private  CrossfireServerConnection | 
crossfireServerConnection
The server connection for sending ncom commands.  | 
private  GuiStateListener | 
guiStateListener
The GuiStateListener for detecting established or dropped
 connections. | 
private  boolean | 
isRunning
Whether a "run" command has been sent without a following "run_stop" command.  | 
private static int | 
MAX_PENDING_COMMANDS
Maximum number of pending commands sent to the server.  | 
private  java.util.List<java.lang.Integer> | 
pendingCommands
Records command ids of commands sent to the server for which no comc commands has been received.  | 
private  int | 
repeatCount
The default repeat counter for ncom commands.  | 
| Constructor Summary | |
|---|---|
CommandQueue(CrossfireServerConnection crossfireServerConnection,
             GuiStateManager guiStateManager)
Create a new instance.  | 
|
| Method Summary | |
|---|---|
 void | 
addToRepeatCount(int digit)
Add a digit to the current repeat count.  | 
 boolean | 
checkFire()
Returns whether the character is firing.  | 
 boolean | 
checkRun()
Returns whether the character is running.  | 
private  void | 
clear()
Forget about sent commands.  | 
private  int | 
getRepeatCount()
Return the current repeat count and reset it to zero.  | 
 void | 
resetRepeatCount()
Reset the current repeat count to zero.  | 
 void | 
sendMove(int to,
         int tag)
Sends a "move" command to the server.  | 
 void | 
sendNcom(boolean mustSend,
         int repeat,
         java.lang.String command)
Send a "ncom" command to the server.  | 
 void | 
sendNcom(boolean mustSend,
         java.lang.String command)
Send a "ncom" command to the server.  | 
 boolean | 
stopRunning()
Tell the server to stop running.  | 
| Methods inherited from class java.lang.Object | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
@NotNull private final CrossfireComcListener crossfireComcListener
@NotNull private final CrossfireServerConnection crossfireServerConnection
@NotNull private final GuiStateListener guiStateListener
GuiStateListener for detecting established or dropped
 connections.
private boolean isRunning
private static final int MAX_PENDING_COMMANDS
@NotNull private final java.util.List<java.lang.Integer> pendingCommands
MAX_PENDING_COMMANDS due to "must send" commands.
private int repeatCount
| Constructor Detail | 
|---|
public CommandQueue(@NotNull
                    CrossfireServerConnection crossfireServerConnection,
                    @NotNull
                    GuiStateManager guiStateManager)
crossfireServerConnection - The server connection for sending ncom
 commands.guiStateManager - the gui state manager to watch| Method Detail | 
|---|
public void addToRepeatCount(int digit)
digit - The digit (0-9) to add.public boolean checkFire()
public boolean checkRun()
private void clear()
private int getRepeatCount()
public void resetRepeatCount()
public void sendMove(int to,
                     int tag)
to - the destination locationtag - the item to move
public void sendNcom(boolean mustSend,
                     int repeat,
                     @NotNull
                     java.lang.String command)
mustSend - If set, always send the command; if unset, drop the
 command if the command queue is full.repeat - The repeat count.command - The command to send.sendNcom(boolean, String)
public void sendNcom(boolean mustSend,
                     @NotNull
                     java.lang.String command)
mustSend - If set, always send the command; if unset, drop the
 command if the command queue is full.command - The command to send.sendNcom(boolean, int, String)public boolean stopRunning()