DataStaging::DTRList Class Reference

Global list of all active DTRs in the system. More...

#include <DTRList.h>

Public Member Functions

bool add_dtr (DTR_ptr DTRToAdd)
bool delete_dtr (DTR_ptr DTRToDelete)
bool filter_dtrs_by_owner (StagingProcesses OwnerToFilter, std::list< DTR_ptr > &FilteredList)
int number_of_dtrs_by_owner (StagingProcesses OwnerToFilter)
bool filter_dtrs_by_status (DTRStatus::DTRStatusType StatusToFilter, std::list< DTR_ptr > &FilteredList)
bool filter_dtrs_by_statuses (const std::vector< DTRStatus::DTRStatusType > &StatusesToFilter, std::list< DTR_ptr > &FilteredList)
bool filter_dtrs_by_statuses (const std::vector< DTRStatus::DTRStatusType > &StatusesToFilter, std::map< DTRStatus::DTRStatusType, std::list< DTR_ptr > > &FilteredList)
bool filter_dtrs_by_next_receiver (StagingProcesses NextReceiver, std::list< DTR_ptr > &FilteredList)
bool filter_pending_dtrs (std::list< DTR_ptr > &FilteredList)
bool filter_dtrs_by_job (const std::string &jobid, std::list< DTR_ptr > &FilteredList)
void caching_started (DTR_ptr request)
void caching_finished (DTR_ptr request)
bool is_being_cached (DTR_ptr DTRToCheck)
bool empty ()
std::list< std::string > all_jobs ()
void dumpState (const std::string &path)

Detailed Description

Global list of all active DTRs in the system.

This class contains several methods for filtering the list by owner, state etc


Member Function Documentation

void DataStaging::DTRList::dumpState ( const std::string &  path  ) 

Dump state of all current DTRs to a destination, eg file, database, url...

Currently only file is supported.

Parameters:
path Path to the file in which to dump state.
bool DataStaging::DTRList::filter_dtrs_by_job ( const std::string &  jobid,
std::list< DTR_ptr > &  FilteredList 
)

Get the list of DTRs corresponding to the given job ID.

Parameters:
FilteredList This list is filled with filtered DTRs
bool DataStaging::DTRList::filter_dtrs_by_next_receiver ( StagingProcesses  NextReceiver,
std::list< DTR_ptr > &  FilteredList 
)

Select DTRs that are about to go to the specified process.

This selection is actually a virtual queue for pre-, post-processor and delivery.

Parameters:
FilteredList This list is filled with filtered DTRs
bool DataStaging::DTRList::filter_dtrs_by_owner ( StagingProcesses  OwnerToFilter,
std::list< DTR_ptr > &  FilteredList 
)

Filter the queue to select DTRs owned by a specified process.

Parameters:
FilteredList This list is filled with filtered DTRs
bool DataStaging::DTRList::filter_dtrs_by_status ( DTRStatus::DTRStatusType  StatusToFilter,
std::list< DTR_ptr > &  FilteredList 
)

Filter the queue to select DTRs with particular status.

If we have only one common queue for all DTRs, this method is necessary to make virtual queues for the DTRs about to go into the pre-, post-processor or delivery stages.

Parameters:
FilteredList This list is filled with filtered DTRs
bool DataStaging::DTRList::filter_dtrs_by_statuses ( const std::vector< DTRStatus::DTRStatusType > &  StatusesToFilter,
std::map< DTRStatus::DTRStatusType, std::list< DTR_ptr > > &  FilteredList 
)

Filter the queue to select DTRs with particular statuses.

Parameters:
FilteredList This map is filled with filtered DTRs, one list per state.
bool DataStaging::DTRList::filter_dtrs_by_statuses ( const std::vector< DTRStatus::DTRStatusType > &  StatusesToFilter,
std::list< DTR_ptr > &  FilteredList 
)

Filter the queue to select DTRs with particular statuses.

Parameters:
FilteredList This list is filled with filtered DTRs
bool DataStaging::DTRList::filter_pending_dtrs ( std::list< DTR_ptr > &  FilteredList  ) 

Select DTRs that have just arrived from pre-, post-processor, delivery or generator.

These DTRs need some reaction from the scheduler. This selection is actually a virtual queue of DTRs that need to be processed.

Parameters:
FilteredList This list is filled with filtered DTRs

The documentation for this class was generated from the following file:
Generated on Wed Jun 27 11:54:36 2012 for Hosting Environment (Daemon) by  doxygen 1.6.3