org.apache.mina.transport.socket.nio
Class NioProcessor

java.lang.Object
  extended by org.apache.mina.common.AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
      extended by org.apache.mina.transport.socket.nio.NioProcessor
All Implemented Interfaces:
IoProcessor<org.apache.mina.transport.socket.nio.NioSession>

public final class NioProcessor
extends AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>

Version:
$Rev: 618575 $, $Date: 2008-02-05 09:35:28 +0100 (Tue, 05 Feb 2008) $
Author:
Apache MINA Project (dev@mina.apache.org)

Nested Class Summary
protected static class NioProcessor.IoSessionIterator
           
 
Nested classes/interfaces inherited from class org.apache.mina.common.AbstractPollingIoProcessor
AbstractPollingIoProcessor.SessionState
 
Constructor Summary
NioProcessor(Executor executor)
           
 
Method Summary
protected  Iterator<org.apache.mina.transport.socket.nio.NioSession> allSessions()
           
protected  void destroy(org.apache.mina.transport.socket.nio.NioSession session)
           
protected  void dispose0()
           
protected  void init(org.apache.mina.transport.socket.nio.NioSession session)
           
protected  boolean isInterestedInRead(org.apache.mina.transport.socket.nio.NioSession session)
          is this session registered for reading
protected  boolean isInterestedInWrite(org.apache.mina.transport.socket.nio.NioSession session)
          is this session registered for writing
protected  boolean isReadable(org.apache.mina.transport.socket.nio.NioSession session)
          Is the session ready for reading
protected  boolean isWritable(org.apache.mina.transport.socket.nio.NioSession session)
          Is the session ready for writing
protected  int read(org.apache.mina.transport.socket.nio.NioSession session, IoBuffer buf)
           
protected  boolean select(int timeout)
          poll those sessions for the given timeout
protected  Iterator<org.apache.mina.transport.socket.nio.NioSession> selectedSessions()
           
protected  void setInterestedInRead(org.apache.mina.transport.socket.nio.NioSession session, boolean value)
          register a session for reading
protected  void setInterestedInWrite(org.apache.mina.transport.socket.nio.NioSession session, boolean value)
          register a session for writing
protected  AbstractPollingIoProcessor.SessionState state(org.apache.mina.transport.socket.nio.NioSession session)
           
protected  int transferFile(org.apache.mina.transport.socket.nio.NioSession session, FileRegion region, int length)
           
protected  void wakeup()
           
protected  int write(org.apache.mina.transport.socket.nio.NioSession session, IoBuffer buf, int length)
           
 
Methods inherited from class org.apache.mina.common.AbstractPollingIoProcessor
add, dispose, flush, isDisposed, isDisposing, remove, updateTrafficMask
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NioProcessor

public NioProcessor(Executor executor)
Method Detail

dispose0

protected void dispose0()
                 throws Exception
Specified by:
dispose0 in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Throws:
Exception

select

protected boolean select(int timeout)
                  throws Exception
Description copied from class: AbstractPollingIoProcessor
poll those sessions for the given timeout

Specified by:
select in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Parameters:
timeout - milliseconds before the call timeout if no event appear
Returns:
true if at least a session is ready for read or for write
Throws:
Exception - if some low level IO error occurs

wakeup

protected void wakeup()
Specified by:
wakeup in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>

allSessions

protected Iterator<org.apache.mina.transport.socket.nio.NioSession> allSessions()
Specified by:
allSessions in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>

selectedSessions

protected Iterator<org.apache.mina.transport.socket.nio.NioSession> selectedSessions()
Specified by:
selectedSessions in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>

init

protected void init(org.apache.mina.transport.socket.nio.NioSession session)
             throws Exception
Specified by:
init in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Throws:
Exception

destroy

protected void destroy(org.apache.mina.transport.socket.nio.NioSession session)
                throws Exception
Specified by:
destroy in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Throws:
Exception

state

protected AbstractPollingIoProcessor.SessionState state(org.apache.mina.transport.socket.nio.NioSession session)
Specified by:
state in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>

isReadable

protected boolean isReadable(org.apache.mina.transport.socket.nio.NioSession session)
Description copied from class: AbstractPollingIoProcessor
Is the session ready for reading

Specified by:
isReadable in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Parameters:
session - the session queried
Returns:
true is ready, false if not ready

isWritable

protected boolean isWritable(org.apache.mina.transport.socket.nio.NioSession session)
Description copied from class: AbstractPollingIoProcessor
Is the session ready for writing

Specified by:
isWritable in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Parameters:
session - the session queried
Returns:
true is ready, false if not ready

isInterestedInRead

protected boolean isInterestedInRead(org.apache.mina.transport.socket.nio.NioSession session)
Description copied from class: AbstractPollingIoProcessor
is this session registered for reading

Specified by:
isInterestedInRead in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Parameters:
session - the session queried
Returns:
true is registered for reading

isInterestedInWrite

protected boolean isInterestedInWrite(org.apache.mina.transport.socket.nio.NioSession session)
Description copied from class: AbstractPollingIoProcessor
is this session registered for writing

Specified by:
isInterestedInWrite in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Parameters:
session - the session queried
Returns:
true is registered for writing

setInterestedInRead

protected void setInterestedInRead(org.apache.mina.transport.socket.nio.NioSession session,
                                   boolean value)
                            throws Exception
Description copied from class: AbstractPollingIoProcessor
register a session for reading

Specified by:
setInterestedInRead in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Parameters:
session - the session registered
value - true for registering, false for removing
Throws:
Exception

setInterestedInWrite

protected void setInterestedInWrite(org.apache.mina.transport.socket.nio.NioSession session,
                                    boolean value)
                             throws Exception
Description copied from class: AbstractPollingIoProcessor
register a session for writing

Specified by:
setInterestedInWrite in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Parameters:
session - the session registered
value - true for registering, false for removing
Throws:
Exception

read

protected int read(org.apache.mina.transport.socket.nio.NioSession session,
                   IoBuffer buf)
            throws Exception
Specified by:
read in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Throws:
Exception

write

protected int write(org.apache.mina.transport.socket.nio.NioSession session,
                    IoBuffer buf,
                    int length)
             throws Exception
Specified by:
write in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Throws:
Exception

transferFile

protected int transferFile(org.apache.mina.transport.socket.nio.NioSession session,
                           FileRegion region,
                           int length)
                    throws Exception
Specified by:
transferFile in class AbstractPollingIoProcessor<org.apache.mina.transport.socket.nio.NioSession>
Throws:
Exception


Copyright © 2004-2009 Apache MINA Project. All Rights Reserved.