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

Schema.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 SCHEMA_H
00015 #define SCHEMA_H
00016 
00017 #include "rgma/RGMAException.h"
00018 #include "rgma/RemoteException.h"
00019 #include "rgma/StringList.h"
00020 #include "rgma/TableAuthorization.h"
00021 #include "rgma/TableDefinition.h"
00022 #include "rgma/IndexList.h"
00023 #include <string>
00024 namespace glite
00025 {
00026     namespace rgma
00027     {
00031         class Schema
00032         {
00033             public:
00034 
00045                 static void createSchema(std::string vdbName, std::string schemaService)
00046                     throw( RGMAException, RemoteException);
00047 
00059                 static void destroySchema(std::string vdbName, std::string schemaService)
00060                     throw( RGMAException, RemoteException);
00061 
00071                 static StringList getAllTables(std::string vdbName)
00072                     throw( RGMAException, RemoteException );
00084                 static TableDefinition getTableDefinition(std::string vdbName, std::string tableName)
00085                     throw( RGMAException, RemoteException);
00086 
00098                 static IndexList getTableIndexes(std::string vdbName, std::string tableName)
00099                     throw( RGMAException, RemoteException);
00100 
00112                 static void setAuthorizationRules(std::string vdbName, std::string tableName,
00113                     TableAuthorization tableAuthz) throw( RGMAException, RemoteException);
00114 
00126                 static TableAuthorization getAuthorizationRules(std::string vdbName, std::string tableName)
00127                     throw( RGMAException, RemoteException);
00128 
00142                 static void createTable(std::string vdbName, std::string createTableStatement,
00143                     TableAuthorization tableAuthz) throw( RGMAException, RemoteException);
00144 
00154                 static void dropTable(std::string vdbName, std::string tableName)
00155                     throw( RGMAException, RemoteException);
00156 
00167                 static void createIndex(std::string vdbName, std::string createIndexStatement)
00168                     throw( RGMAException, RemoteException);
00169 
00179                 static void dropIndex(std::string vdbName, std::string indexName)
00180                     throw( RGMAException, RemoteException);
00181 
00194                 static void createView(std::string vdbName, std::string createViewStatement,
00195                     TableAuthorization viewAuthz) throw( RGMAException, RemoteException);
00196 
00206                 static void dropView(std::string vdbName, std::string viewName)
00207                     throw( RGMAException, RemoteException);
00208 
00220                 static std::string getProperty(std::string name, std::string parameter)
00221                     throw(RemoteException, RGMAException);
00232                 static std::string getProperty(std::string name)
00233                     throw(RemoteException, RGMAException);
00244                 static void setProperty(std::string name, std::string value, std::string parameter)
00245                     throw(RemoteException, RGMAException);
00246 
00256                 static void setProperty(std::string name, std::string value)
00257                     throw(RemoteException, RGMAException);
00258 
00259                 static std::string getVersion()throw(RemoteException);
00260         };
00261     }
00262 }
00263 #endif

Generated on Wed Apr 25 19:11:32 2007 for glite-rgma-api-cpp by doxygen 1.3.5