org.globus.transfer.reliable.service
Class URLExpander

java.lang.Object
  extended byjava.lang.Thread
      extended byorg.globus.transfer.reliable.service.URLExpander
All Implemented Interfaces:
Runnable

public class URLExpander
extends Thread

This class should take the sourceUrl and destination Url from RftImpl of the Class and return a Vector of corresponding Fully Qualified gsiftp urls


Field Summary
private  org.globus.util.GlobusURL destinationGlobusUrl
           
private  org.globus.ftp.GridFTPClient destinationHost
           
private  String destinationPath
           
private  Vector dirVector
           
private  boolean done
           
private static org.globus.util.I18n i18n
           
private  boolean isDelete
           
private static org.apache.commons.logging.Log logger
           
private  int numberOfTransfers
           
private  int requestId
           
private  RFTOptionsType rftOptions
           
private  org.globus.util.GlobusURL sourceGlobusUrl
           
private  org.globus.ftp.GridFTPClient sourceHost
           
private  String sourcePath
           
private  Vector sourceUrlsEx
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
URLExpander(org.globus.ftp.GridFTPClient sourceHost, org.globus.util.GlobusURL sourceGlobusUrl, RFTOptionsType rftOptions)
          This is to be used from the DeleteClient
URLExpander(org.globus.ftp.GridFTPClient sourceHost, org.globus.ftp.GridFTPClient destinationHost, org.globus.util.GlobusURL sourceGlobusUrl, org.globus.util.GlobusURL destinationGlobusUrl, RFTOptionsType rftOptions)
          Constructor for the URLExpander object
 
Method Summary
private  void changeDir(String dirString)
           
 void close()
           
 Vector doMlsd(String localSourcePath)
          do MLSD
 int getNumberOfTransfers()
           
 Vector getSourceUrlList()
           
 boolean getStatus()
          Gets the status attribute of the URLExpander object
private  void makeDirectory(String dir)
           
 void run()
          this invokes the MLST command from GridFTPClient on the source hands it over to parser utility which gives set of directories that need to be made at the destination.Recursive directory traversal or Iterative?
 void setRequestId(int requestId)
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

sourceHost

private org.globus.ftp.GridFTPClient sourceHost

destinationHost

private org.globus.ftp.GridFTPClient destinationHost

sourcePath

private String sourcePath

destinationPath

private String destinationPath

sourceUrlsEx

private Vector sourceUrlsEx

sourceGlobusUrl

private org.globus.util.GlobusURL sourceGlobusUrl

destinationGlobusUrl

private org.globus.util.GlobusURL destinationGlobusUrl

done

private boolean done

rftOptions

private RFTOptionsType rftOptions

isDelete

private boolean isDelete

dirVector

private Vector dirVector

requestId

private int requestId

numberOfTransfers

private int numberOfTransfers

logger

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

i18n

private static org.globus.util.I18n i18n
Constructor Detail

URLExpander

public URLExpander(org.globus.ftp.GridFTPClient sourceHost,
                   org.globus.ftp.GridFTPClient destinationHost,
                   org.globus.util.GlobusURL sourceGlobusUrl,
                   org.globus.util.GlobusURL destinationGlobusUrl,
                   RFTOptionsType rftOptions)
            throws RftException
Constructor for the URLExpander object

Parameters:
sourceHost - source gridftp server
destinationHost - destination gridftp server
sourceGlobusUrl - sourceGlobusUrl
destinationGlobusUrl - destination globus url.
rftOptions - RFTOptionsType
Throws:
RftException

URLExpander

public URLExpander(org.globus.ftp.GridFTPClient sourceHost,
                   org.globus.util.GlobusURL sourceGlobusUrl,
                   RFTOptionsType rftOptions)
This is to be used from the DeleteClient

Parameters:
sourceHost -
sourceGlobusUrl -
rftOptions -
Method Detail

setRequestId

public void setRequestId(int requestId)

getSourceUrlList

public Vector getSourceUrlList()

getNumberOfTransfers

public int getNumberOfTransfers()

doMlsd

public Vector doMlsd(String localSourcePath)
do MLSD

Parameters:
localSourcePath -
Returns:
MLSD results

getStatus

public boolean getStatus()
Gets the status attribute of the URLExpander object

Returns:
The status value

run

public void run()
this invokes the MLST command from GridFTPClient on the source hands it over to parser utility which gives set of directories that need to be made at the destination.Recursive directory traversal or Iterative?


makeDirectory

private void makeDirectory(String dir)
                    throws IOException
Throws:
IOException

close

public void close()

changeDir

private void changeDir(String dirString)