GNDMS 0.6.0
RESTful verison of GNDMS
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes

de.zib.gndms.taskflows.filetransfer.server.network.PersistentMarkerListener Class Reference

A persistent marker listener for grid ftp file transfers. More...

Inheritance diagram for de.zib.gndms.taskflows.filetransfer.server.network.PersistentMarkerListener:
de.zib.gndms.taskflows.filetransfer.server.logic.TaskPersistentMarkerListener

List of all members.

Public Member Functions

void markerArrived (Marker marker)
FTPTransferState getTransferState ()
void setTransferState (FTPTransferState transferState)
 Sets the transferStat object for this marker listener.
boolean hasCurrentFile ()
String getCurrentFile ()
void setCurrentFile (String currentFile)
 Sets file of the transfar state to currentFile.
Taskling getTaskling ()
void setTaskling (Taskling taskling)
Dao getDao ()
void setDao (Dao dao)

Private Member Functions

void gridFTPRestartMarkerArrived (GridFTPRestartMarker marker)

Private Attributes

ByteRangeList byteRanges
Dao dao
FTPTransferState transferState
Taskling taskling

Static Private Attributes

static Logger logger = LoggerFactory.getLogger( PersistentMarkerListener.class )

Detailed Description

A persistent marker listener for grid ftp file transfers.

It keeps track of the restart marks and stores them into a data base.

Note even after a successful transfer the data base entry isn't deleted you have to do this manually using derby's ij tool.

Author:
try ma ik jo rr a zib
Version:
$Id$

User: mjorra, Date: 01.10.2008, Time: 13:27:12


Member Function Documentation

void de.zib.gndms.taskflows.filetransfer.server.network.PersistentMarkerListener.setCurrentFile ( String  currentFile)

Sets file of the transfar state to currentFile.

Additionally the current ftp args of the state are resetted. The new state is written to the database immediately.

Reimplemented in de.zib.gndms.taskflows.filetransfer.server.logic.TaskPersistentMarkerListener.

                                                     {
        final Session session = dao.beginSession();
        try {
            transferState.setCurrentFile( currentFile );
            transferState.setFtpArgs("0-0");
            taskling.getTask(session).setPayload(transferState);
            session.success();
        }
        finally { session.finish(); }
    }
void de.zib.gndms.taskflows.filetransfer.server.network.PersistentMarkerListener.setTransferState ( FTPTransferState  transferState)

Sets the transferStat object for this marker listener.

If the object isn't persisted yet, this method persist it. For this reason the state object needs it transferId to be set.

                                                                   {

        this.transferState = transferState;
        byteRanges = new ByteRangeList();

        final Session session = dao.beginSession();
        try {
            taskling.getTask(session).setPayload(transferState);
            if (transferState.getFtpArgs() != null) {
                GridFTPRestartMarker rm = new GridFTPRestartMarker(( transferState.getFtpArgsString()) );
                byteRanges.merge(rm.toVector());
            }

            session.success();
        }
        finally { session.finish(); }
    }

The documentation for this class was generated from the following file:
 All Classes Namespaces Functions Variables