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 RESULTSETMETADATA_H 00015 #define RESULTSETMETADATA_H 00016 00017 #include <vector> 00018 #include <string> 00019 00020 namespace glite 00021 { 00022 namespace rgma 00023 { 00029 class ResultSetMetaData 00030 { 00031 00032 public: 00039 class MetaData 00040 { 00041 private: 00042 std::string m_tableName; 00043 std::string m_columnName; 00044 int m_columnType; 00045 00046 public: 00053 MetaData(std::string tableName, std::string columnName, int columnType); 00054 00059 std::string getTableName(); 00065 std::string getColumnName(); 00071 int getColumnType(); 00072 virtual ~MetaData(); 00073 }; 00074 virtual ~ResultSetMetaData(){} 00075 00076 ResultSetMetaData( const ResultSetMetaData& metaData ); 00077 00078 ResultSetMetaData& operator=( const ResultSetMetaData& metaData ); 00079 00084 typedef std::vector<MetaData>::iterator iterator; 00090 iterator begin(); 00096 iterator end(); 00097 00101 ResultSetMetaData(); 00102 00108 void addMetaData(MetaData metaData); 00109 private: 00110 std::vector<MetaData> m_metaData; 00111 00112 }; 00113 } 00114 } 00115 #endif // RESULTSETMETADATA_H