summaryrefslogtreecommitdiffstats
path: root/EssentialsUpdate/src/f00f/net/irc/martyr/InputHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsUpdate/src/f00f/net/irc/martyr/InputHandler.java')
-rw-r--r--EssentialsUpdate/src/f00f/net/irc/martyr/InputHandler.java130
1 files changed, 0 insertions, 130 deletions
diff --git a/EssentialsUpdate/src/f00f/net/irc/martyr/InputHandler.java b/EssentialsUpdate/src/f00f/net/irc/martyr/InputHandler.java
deleted file mode 100644
index a3830afa9..000000000
--- a/EssentialsUpdate/src/f00f/net/irc/martyr/InputHandler.java
+++ /dev/null
@@ -1,130 +0,0 @@
-package f00f.net.irc.martyr;
-
-import java.util.LinkedList;
-import java.io.BufferedReader;
-import java.io.IOException;
-
-/**
- * A simple class to help manage input from the stream.
- */
-public class InputHandler extends Thread
-{
- //static Logger log = Logger.getLogger(InputHandler.class);
-
- private BufferedReader reader;
- private IRCConnection connection;
- private final LinkedList<String> messages;
-
- private final Object eventMonitor;
-
- private static int serialGen = 0;
- private int serialNumber = serialGen++;
- private boolean doShutdown = false;
-
- public InputHandler( BufferedReader reader,
- IRCConnection connection,
- Object eventMonitor )
- {
-
- super("InputHandler");
- this.reader = reader;
- this.connection = connection;
- messages = new LinkedList<String>();
- this.eventMonitor = eventMonitor;
-
- //log.debug("IRCConnection: New");
- }
-
- /**
- * Set the shutdown flag, so that after next read, or on any error, the thread will just exit.
- */
- public void signalShutdown()
- {
- synchronized(this)
- {
- doShutdown = true;
- }
- }
-
- /**
- * @return true if there are messages waiting to be processed.
- */
- public boolean pendingMessages()
- {
- synchronized( messages )
- {
- return ! messages.isEmpty();
- }
- }
-
- /**
- * Gets the message at the top of the message queue and removes it from the
- * message queue.
- *
- * @return Message from top of list.
- */
- public String getMessage()
- {
- synchronized( messages )
- {
- return messages.removeFirst();
- }
- }
-
- /**
- * Waits for input from the server. When input arrives, it is added to a
- * queue and eventMonitor.notifyAll() is called.
- */
- public void run()
- {
- //log.debug("IRCConnection: Running");
- try{
-
- String str;
- while( true )
- {
- synchronized(this)
- {
- if( doShutdown )
- {
- return;
- }
- }
- str = reader.readLine();
- if( str == null )
- {
- connection.socketError( new IOException( "Socket disconnected" ) );
- return;
- }
- synchronized( messages )
- {
- messages.addLast( str );
- }
- synchronized( eventMonitor )
- {
- eventMonitor.notifyAll();
- }
- }
- }
- catch( IOException ioe )
- {
- if( doShutdown )
- {
- return;
- }
- connection.socketError( ioe );
- }
- finally
- {
- //log.debug("IRCConnection: Input handler has DIED!");
- }
- }
-
- public String toString()
- {
- return "InputHandler[" + serialNumber + "]";
- }
-
- // ----- END InputHandler --------------------------------------------
-}
-