(file) Return to CQLQueryExpressionRep.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / CQL

 1 karl  1.1.4.2 //%LICENSE////////////////////////////////////////////////////////////////
 2               //
 3               // Licensed to The Open Group (TOG) under one or more contributor license
 4               // agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
 5               // this work for additional information regarding copyright ownership.
 6               // Each contributor licenses this file to you under the OpenPegasus Open
 7               // Source License; you may not use this file except in compliance with the
 8               // License.
 9               //
10               // Permission is hereby granted, free of charge, to any person obtaining a
11               // copy of this software and associated documentation files (the "Software"),
12               // to deal in the Software without restriction, including without limitation
13               // the rights to use, copy, modify, merge, publish, distribute, sublicense,
14               // and/or sell copies of the Software, and to permit persons to whom the
15               // Software is furnished to do so, subject to the following conditions:
16               //
17               // The above copyright notice and this permission notice shall be included
18               // in all copies or substantial portions of the Software.
19               //
20               // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21               // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 karl  1.1.4.2 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23               // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24               // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25               // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26               // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27               //%////////////////////////////////////////////////////////////////////////////
28               
29               #ifndef CQLQUERYEXPRESSIONREP_H_
30               #define CQLQUERYEXPRESSIONREP_H_
31               
32               #include <Pegasus/Common/Config.h>
33               #include <Pegasus/Common/String.h>
34               #include <Pegasus/Common/CIMName.h>
35               #include <Pegasus/Common/CIMInstance.h>
36               #include <Pegasus/Common/CIMPropertyList.h>
37               
38               #include <Pegasus/Common/QueryExpressionRep.h>
39               #include "CQLSelectStatement.h"
40               
41               PEGASUS_NAMESPACE_BEGIN
42               
43 karl  1.1.4.2 class CQLSelectStatement;
44               
45               class PEGASUS_CQL_LINKAGE CQLQueryExpressionRep : public QueryExpressionRep
46               {
47                   friend class QueryExpression;
48               public:
49                   CQLQueryExpressionRep(const String & queryLanguage)
50                     : QueryExpressionRep(queryLanguage), _stmt(NULL) {}
51                   CQLQueryExpressionRep(const String & queryLanguage, CQLSelectStatement *s)
52                     : QueryExpressionRep(queryLanguage), _stmt(s){}
53                   CQLQueryExpressionRep(const String & queryLanguage, String & query)
54                     : QueryExpressionRep(queryLanguage,query), _stmt(NULL) {}
55               
56                   PEGASUS_HIDDEN_LINKAGE
57                   virtual ~CQLQueryExpressionRep();
58               
59                   PEGASUS_HIDDEN_LINKAGE
60                   virtual const CIMPropertyList getPropertyList() const;
61               
62                   PEGASUS_HIDDEN_LINKAGE
63                   virtual Boolean evaluate(const CIMInstance &) const;
64 karl  1.1.4.2 
65                   PEGASUS_HIDDEN_LINKAGE
66                   virtual void applyProjection(CIMInstance &, Boolean allowMissing);
67               
68                   PEGASUS_HIDDEN_LINKAGE
69                   void _parse();
70               
71                   CQLSelectStatement *_stmt;
72               };
73               
74               PEGASUS_NAMESPACE_END
75               
76               
77               
78               #endif /* CQLQUERYEXPRESSIONREP_H_ */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2