org.globus.ftp.dc
Class SimpleDataChannel

java.lang.Object
  extended by org.globus.ftp.dc.AbstractDataChannel
      extended by org.globus.ftp.dc.SimpleDataChannel
All Implemented Interfaces:
DataChannel
Direct Known Subclasses:
GridFTPDataChannel

public class SimpleDataChannel
extends AbstractDataChannel

Data channel receives in the constructor a socket that should be ready for communication, and starts a new thread that will perform the transfer.
In previous version, the data channel would perform socket initialization (server.accept() etc.). This is now done by the facade's manager thread, so it can start several data channels.


Field Summary
protected static org.apache.commons.logging.Log logger
           
protected  SocketBox socketBox
           
protected  TransferThread transferThread
           
protected  TransferThreadFactory transferThreadFactory
           
 
Fields inherited from class org.globus.ftp.dc.AbstractDataChannel
dataHandlers, session
 
Constructor Summary
SimpleDataChannel(Session session, SocketBox socketBox)
           
 
Method Summary
 void close()
           
 void startTransfer(DataSink sink, BasicServerControlChannel localControlChannel, TransferContext context)
           
 void startTransfer(DataSource source, BasicServerControlChannel localControlChannel, TransferContext context)
           
 
Methods inherited from class org.globus.ftp.dc.AbstractDataChannel
getDataChannelSink, getDataChannelSource, isDataSinkModeSupported, isDataSourceModeSupported, registerHandler
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static org.apache.commons.logging.Log logger

socketBox

protected SocketBox socketBox

transferThread

protected TransferThread transferThread

transferThreadFactory

protected TransferThreadFactory transferThreadFactory
Constructor Detail

SimpleDataChannel

public SimpleDataChannel(Session session,
                         SocketBox socketBox)
Parameters:
socketBox - should be opened and ready for comunication
Method Detail

close

public void close()
           throws java.io.IOException
Throws:
java.io.IOException

startTransfer

public void startTransfer(DataSink sink,
                          BasicServerControlChannel localControlChannel,
                          TransferContext context)
                   throws java.lang.Exception
Throws:
java.lang.Exception

startTransfer

public void startTransfer(DataSource source,
                          BasicServerControlChannel localControlChannel,
                          TransferContext context)
                   throws java.lang.Exception
Throws:
java.lang.Exception


Copyright © 2013. All Rights Reserved.