Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members  

LcgInfo::Querier Class Reference

This class (actually, extending ones, since this is not instantiable) is used to pose a query expressed in terms of the canonical schema, to the desired implementation specific information system. More...

#include <Querier.h>

Inheritance diagram for LcgInfo::Querier:

LcgInfo::SQLtoLDAPQuerier LcgInfo::SQLtoSQLQuerier List of all members.

Public Methods

 Querier ()
 Constructor using "./mappingGlueRMA" as the default name for the mapfile. More...

virtual ~Querier ()
 Destructor of the class.

virtual void setConfig (LcgConfigBuffer::ConfigBuffer &pConf)=0
 Sets the config buffer object, so that all necessary information for queries is available. More...

virtual std::vector< std::vector<
std::string > > 
query (std::string const &pQueryCanonical)=0
 Translates the specified query (intended to be posed to the canonical schema) and poses it to the implementation specific schema, in order to retrieve the same information. More...


Detailed Description

This class (actually, extending ones, since this is not instantiable) is used to pose a query expressed in terms of the canonical schema, to the desired implementation specific information system.

This is an pure abstract class; extending classes should define the input language used in the original query, and the language expected by the implementated information service. For example, SQLtoLDAPQuerier will accept SQL queries and query an underlying LDAP system. All the necessary configuration information will be provided using a ConfigBuffer object. Extending objects can be dinamically loaded by the libfactory::LibFactory class. To be able to do so, their .cpp implementation will have to define two "extern C" methods that construct and destruct an object of that class.

See also:
libfactory::LibFactory
Author:
LCG's EIS Group. CERN.
Version:
1.0
Date:
2004

Definition at line 37 of file Querier.h.


Constructor & Destructor Documentation

Querier::Querier  
 

Constructor using "./mappingGlueRMA" as the default name for the mapfile.

Please do not use this constructor. It may throw a QueryTranslationException if the specified mapping file cannot be loaded.

Definition at line 13 of file Querier.cpp.


Member Function Documentation

virtual std::vector<std::vector<std::string> > LcgInfo::Querier::query std::string const &    pQueryCanonical [pure virtual]
 

Translates the specified query (intended to be posed to the canonical schema) and poses it to the implementation specific schema, in order to retrieve the same information.

Several queries may be needed for cases where the output language does not support joins. It may throw a LcgInfoException if the configuration file was not properly set or if there is some error in the translation or the interaction with the information service.

Parameters:
pQueryCanonical  the query to be translated
Returns:
the result values of the query (in a table format)

Implemented in LcgInfo::SQLtoLDAPQuerier.

virtual void LcgInfo::Querier::setConfig LcgConfigBuffer::ConfigBuffer   pConf [pure virtual]
 

Sets the config buffer object, so that all necessary information for queries is available.

The query method will fail if this method has not been called first.

Parameters:
pConf  the object with the configuration information

Implemented in LcgInfo::SQLtoLDAPQuerier.


The documentation for this class was generated from the following files:
Generated on Tue Oct 5 14:42:45 2004 for LCG Information System Interface by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002