Main Page | Class Hierarchy | Class List | File List | Class Members | Related Pages

PrimaryProducer.h

00001 /*
00002  *  Copyright (c) 2004 on behalf of the EU EGEE Project:
00003  *  The European Organization for Nuclear Research (CERN),
00004  *  Istituto Nazionale di Fisica Nucleare (INFN), Italy
00005  *  Datamat Spa, Italy
00006  *  Centre National de la Recherche Scientifique (CNRS), France
00007  *  CS Systeme d'Information (CSSI), France
00008  *  Royal Institute of Technology, Center for Parallel Computers (KTH-PDC), Sweden
00009  *  Universiteit van Amsterdam (UvA), Netherlands
00010  *  University of Helsinki (UH.HIP), Finland
00011  *  University of Bergen (UiB), Norway
00012  *  Council for the Central Laboratory of the Research Councils (CCLRC), United Kingdom
00013  */
00014 #ifndef PRIMARYPRODUCER_H
00015 #define PRIMARYPRODUCER_H
00016 #include "rgma/ResourceEndpoint.h"
00017 #include "rgma/TimeInterval.h"
00018 #include "rgma/RemoteException.h"
00019 #include "rgma/UnknownResourceException.h"
00020 #include "rgma/RGMAException.h"
00021 #include "rgma/ResourceImpl.h"
00022 #include "rgma/StringList.h"
00023 #include "rgma/TupleStoreList.h"
00024 
00025 #include <string>
00026 namespace glite
00027 {
00028     namespace rgma
00029     {
00033         class PrimaryProducer: public ResourceImpl
00034         {
00035             private:
00036 
00037             public:
00038 
00039                 virtual ~PrimaryProducer(){}
00040 
00053                 virtual TimeInterval getHistoryRetentionPeriod(std::string tableName)
00054                     = 0;
00067                 virtual TimeInterval getLatestRetentionPeriod(std::string tableName)
00068                     throw(RemoteException, UnknownResourceException, RGMAException) = 0;
00088                 virtual void declareTable(std::string tableName, std::string predicate,
00089                     TimeInterval historyRetentionPeriod,
00090                     TimeInterval latestRetentionPeriod)
00091                     throw(RemoteException, UnknownResourceException, RGMAException) = 0;
00108                 virtual void insert(std::string insertStatement)
00109                     throw(RemoteException, UnknownResourceException, RGMAException) = 0;
00129                 virtual void insert(std::string insertStatement, TimeInterval latestRetentionPeriod)
00130                     throw(RemoteException, UnknownResourceException, RGMAException) = 0;
00131 
00146                 virtual void insertList(StringList insertStatements)
00147                     throw(RemoteException, UnknownResourceException, RGMAException) = 0;
00148 
00163                 virtual void insertList(StringList insertStatements, TimeInterval latestRetentionPeriod)
00164                     throw(RemoteException, UnknownResourceException, RGMAException) = 0;
00165 
00173                 static std::string getVersion()throw(RemoteException);
00174 
00186                 static std::string getProperty(std::string name, std::string parameter)
00187                     throw(RemoteException, RGMAException);
00198                 static std::string getProperty(std::string name)
00199                     throw(RemoteException, RGMAException);
00209                 static void setProperty(std::string name, std::string value)
00210                     throw(RemoteException, RGMAException);
00211 
00222                 static void setProperty(std::string name, std::string value, std::string parameter)
00223                     throw(RemoteException, RGMAException);
00224 
00234                 static TupleStoreList listTupleStores() throw( RemoteException, RGMAException);
00235 
00245                 static void dropTupleStore(std::string logicalName) throw (RGMAException, RemoteException);
00246 
00247         };
00248     }
00249 }
00250 #endif                                            // PRIMARYPRODUCER_H

Generated on Wed May 17 17:48:18 2006 for glite-rgma-api-cpp by doxygen 1.3.5