EGEE
Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals

transferstats-simple.h

Go to the documentation of this file.
00001 /*
00002  *  Copyright (c) Members of the EGEE Collaboration. 2005.
00003  *  See http://eu-egee.org/partners/ for details on the copyright holders.
00004  *  For license conditions see the license file or http://eu-egee.org/license.html
00005  *
00006  *  GLite Data Management - Simple file transfer stats API
00007  *
00008  *  Authors: Zoltan Farkas <Zoltan.Farkas@cern.ch>
00009  *
00010  */
00011 
00012 #ifndef GLITE_DATA_TRANSFER_TRANSFERSTATS_SIMPLE_H
00013 #define GLITE_DATA_TRANSFER_TRANSFERSTATS_SIMPLE_H
00014 
00015 #ifdef __cplusplus
00016 extern "C" {
00017 #endif
00018 
00019 #include <glite/data/transfer/c/transfer-simple.h>
00020 
00021 /**********************************************************************
00022  * Constants
00023  */
00024 
00025 /* Service type for Service Discovery */
00026 #define GLITE_TRANSFERSTATS_SD_TYPE "org.glite.FileTransferStats"
00027 
00028 /* Environment variable to override default service type */
00029 #define GLITE_TRANSFERSTATS_SD_ENV  "GLITE_SD_STATS_TYPE"
00030 
00031 
00032 /**********************************************************************
00033  * General guidelines:
00034  * - Functions that return a pointer return NULL when there is an error.
00035  * - Functions that return 'int' return 0 when successful and -1 in case
00036  *   of an error.
00037  * - Any objects returned by a function is owned by the caller and has to
00038  *   be deallocated by the caller.
00039  */
00040 
00041 /**********************************************************************
00042  * Function prototypes - library management functions
00043  */
00044 
00045 /* Return the current FileTransferStats endpoint used by the transfer context */
00046 const char *glite_transferstats_get_endpoint(glite_transfer_ctx *ctx);
00047 
00048 /**********************************************************************
00049  * Function prototypes - org.glite.data.transfer.ServiceBase
00050  */
00051 
00064 char *glite_transferstats_getVersion(glite_transfer_ctx *ctx);
00065 
00073 char *glite_transferstats_getSchemaVersion(glite_transfer_ctx *ctx);
00074 
00082 char *glite_transferstats_getInterfaceVersion(glite_transfer_ctx *ctx);
00083 
00092 char *glite_transferstats_getServiceMetadata(glite_transfer_ctx *ctx, const char *key);
00093 
00098 /***********************************************************************
00099  * Function prototypes - org.glite.data.transfer.stats.FileTransferStats
00100  */
00101 
00120 int glite_transferstats_getChannelSummary(glite_transfer_ctx *ctx,
00121     const time_t startTime, const time_t endTime, const char *channelName,
00122     const int numVONames, const char **VONames, glite_transfer_TransferSummary ***Summary);
00123 
00137 int glite_transferstats_getChannelActivity(glite_transfer_ctx *ctx,
00138     const time_t startTime, const time_t endTime, const char *channelName,
00139     const int numVONames, const char **VONames, glite_transfer_TransferActivity ***Activity);
00140 
00154 int glite_transferstats_getVOSummary(glite_transfer_ctx *ctx,
00155     const time_t startTime, const time_t endTime, const char *voName,
00156     const int numchannelNames, const char **channelNames, glite_transfer_TransferSummary ***Summary);
00157 
00171 int glite_transferstats_getVOActivity(glite_transfer_ctx *ctx,
00172     const time_t startTime, const time_t endTime, const char *voName,
00173     const int numchannelNames, const char **channelNames, glite_transfer_TransferActivity ***Activity);
00174 
00183 int glite_transferstats_getTransferAgents(glite_transfer_ctx *ctx,
00184     glite_transfer_TransferAgent ***Agents);
00185 
00190 #ifdef __cplusplus
00191 }
00192 #endif
00193 
00194 #endif /* GLITE_DATA_TRANSFER_TRANSFERSTATS_SIMPLE_H */
The GLite Project. All rights reserved.