Back to index

nordugrid-arc-nox  1.1.0~rc6
Public Member Functions | Public Attributes
Arc::Destinations Class Reference

Class to handle a set of reporting destinations. More...

#include <Destinations.h>

Inheritance diagram for Arc::Destinations:
Inheritance graph
[legend]
Collaboration diagram for Arc::Destinations:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void report (Arc::JobLogFile &joblog)
 Reports the given job log file to a destination.
 ~Destinations ()

Public Attributes

keys
 STL member.
T elements
 STL member.

Detailed Description

Class to handle a set of reporting destinations.

Definition at line 11 of file Destinations.h.


Constructor & Destructor Documentation

Definition at line 30 of file Destinations.cpp.

  {
    for (Destinations::iterator it=begin();
        it!=end();
        ++it)
      {
       delete (*it).second;
      }
  }

Member Function Documentation

Reports the given job log file to a destination.

If an adapter object for the specific destination already exists in the set, it uses that, otherwise creates a new one.

Definition at line 7 of file Destinations.cpp.

  {
    std::string dest_id=joblog["loggerurl"]; 
    //TODO same service URL with different reporting parameters?

    if (find(dest_id)==end()) //New destination
      {
        // Create the appropriate adapter
        Destination *dest = Destination::createDestination(joblog);
        if (dest)
          (*this)[dest_id] = dest;
        else
          {
            Arc::Logger logger(Arc::Logger::rootLogger, "JURA.Destinations");
            logger.msg(Arc::ERROR, 
                       "Unable to create adapter for the specific reporting destination type");
            return;
          }
      }
    
    (*this)[dest_id]->report(joblog);
  }

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

template<typename K, typename T>
T std::map< K, T >::elements [inherited]

STL member.

template<typename K, typename T>
K std::map< K, T >::keys [inherited]

STL member.


The documentation for this class was generated from the following files: