Package pyGlobus :: Module ftpClientPlugin :: Class ThroughputPerfPlugin
[show private | hide private]
[frames | no frames]

Class ThroughputPerfPlugin

Plugin --+
         |
        ThroughputPerfPlugin


A wrapper class around the ftp client throughput performance plugin. This plugin is built on top of the Performance Marker Plugin, it is not possible to associate both plugins with a handle

This plugin provides throughput performance information via callbacks on all types of transfers except third_party_transfers w/o extended block mode transfer. During a transfer, every marker received will result in the user's 'marker' callback being called with new performance markers that can be stored.
Method Summary
  __init__(self, beginCB, stripeCB, totalCB, completeCB, arg)
Initialize an instance of the GridFTP Throughput plugin.
  __del__(self)
Destroy an instance of the GridFTP throughput plugin.
    Inherited from Plugin
  get_handle(self)
Return the underlying ftp client plugin handle.

Method Details

__init__(self, beginCB, stripeCB, totalCB, completeCB, arg)
(Constructor)

Initialize an instance of the GridFTP Throughput plugin.

This function will initialize the Throughput plugin-specific instance data for this plugin, and will make the plugin usable for ftp client handle attribute and handle creation.
Parameters:
beginCB -

The callback to be called upon the start of the transfer. It has the following signature

'function(arg, handle, srcUrl, destUrl)' where arg is the argument passed into this call, handle is a SWIG'ized pointer to a ftp client handle object, srcUrl is the a string representing the source url, destUrl is the a string representing the destination url.
stripeCB -

The callback to be called with every performance callback that is received by the perf plugin. The first callback for each stripe_ndx will have an instantaneous_throughput based from the time the command was sent. It has the following signature

'function(arg, handle, stripe_ndx, bytes, instantaneous_throughput, avg_throughput)' where arg is the argument passed into this call, handle is a SWIG'ized pointer to a ftp client handle object, stripe_ndx an int representing which stripe the data was received on, bytes the total number of bytes received on this stripe, instantaneous_throughput is a float representing instanteous throughput on this stripe (bytes / sec), avg_throughput is a float representing average throughput on this stripe (bytes / sec)
totalCB -

The callback will be called with every performance callback that is received by the perf plugin. The first callback for will have an instantaneous_throughput based from the time the command was sent. This callback will be called after the per_stripe_cb. It has the following signature

'function(arg, handle, bytes, instantaneous_throughput, avg_throughput)' where arg is the argument passed into this call, handle is a SWIG'ized pointer to a ftp client handle object, bytes the total number of bytes received on this stripe, instantaneous_throughput is a float representing instanteous throughput on this stripe (bytes / sec), avg_throughput is a float representing average throughput on this stripe (bytes / sec)
completeCB -

The callback to be called to indicate transfer completion. It has the following signature

'function(arg, handle, success)' where arg is the argument passed into this call, handle is a SWIG'ized pointer to a ftp client handle object, success is an int representing whether the transfer completed successfully
arg - An arbitary argument to be passed to all the callbacks.
Raises:
PluginException - A PluginException is thrown if unable to init the plugin.
Overrides:
pyGlobus.ftpClientPlugin.Plugin.__init__

__del__(self)
(Destructor)

Destroy an instance of the GridFTP throughput plugin.

This function will free all debugging plugin-specific instance data from this plugin, and will make the plugin unusable for further ftp handle creation.

Existing FTP client handles and handle attributes will not be affected by destroying a plugin associated with them, as a local copy of the plugin is made upon handle initialization.
Raises:
PluginException - A PluginException is thrown if unable to destroy the plugin.

Generated by Epydoc 2.1 on Tue Apr 4 14:32:56 2006 http://epydoc.sf.net