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

  1 karl  1.7 //%2005////////////////////////////////////////////////////////////////////////
  2 humberto 1.1 //
  3 karl     1.7 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4              // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5              // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6 humberto 1.1 // IBM Corp.; EMC Corporation, The Open Group.
  7 karl     1.7 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8              // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9              // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10              // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 humberto 1.1 //
 12              // Permission is hereby granted, free of charge, to any person obtaining a copy
 13              // of this software and associated documentation files (the "Software"), to
 14              // deal in the Software without restriction, including without limitation the
 15              // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 16              // sell copies of the Software, and to permit persons to whom the Software is
 17              // furnished to do so, subject to the following conditions:
 18 david.dillard 1.8 //
 19 humberto      1.1 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 20                   // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 21                   // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 22                   // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 23                   // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 24                   // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 25                   // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 26                   // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 27                   //
 28                   //==============================================================================
 29                   //
 30                   // Author: Dave Rosckes (rosckes@us.ibm.com)
 31                   //
 32 david.dillard 1.8 // Modified By: David Dillard, VERITAS Software Corp.
 33                   //                  (david.dillard@veritas.com)
 34 vijay.eli     1.9 //              Vijay Eli, IBM (vijayeli@in.ibm.com) bug#3590
 35 humberto      1.1 //
 36                   //%/////////////////////////////////////////////////////////////////////////////
 37                   
 38 chuck         1.4 #ifndef Pegasus_CQLFactorRep_h
 39                   #define Pegasus_CQLFactorRep_h
 40                   
 41 humberto      1.1 #include <Pegasus/CQL/Linkage.h>
 42                   #include <Pegasus/Common/CIMInstance.h>
 43                   #include <Pegasus/CQL/CQLExpression.h>
 44                   #include <Pegasus/CQL/CQLFunction.h>
 45                   
 46                   PEGASUS_NAMESPACE_BEGIN
 47                   class PEGASUS_CQL_LINKAGE CQLFactory;
 48                   class PEGASUS_CQL_LINKAGE CQLValue;
 49 chuck         1.4 class PEGASUS_QUERYCOMMON_LINKAGE QueryContext;
 50 humberto      1.1 
 51                   class PEGASUS_CQL_LINKAGE CQLFactorRep
 52                   {
 53 chuck         1.4  public:
 54 humberto      1.1 
 55 humberto      1.6   CQLFactorRep();
 56 david.dillard 1.8 
 57 chuck         1.4   CQLFactorRep(const CQLValue& inCQLVal);
 58 david.dillard 1.8 
 59 chuck         1.4   CQLFactorRep(const CQLExpression& inCQLExp);
 60 david.dillard 1.8 
 61 chuck         1.4   CQLFactorRep(const CQLFunction& inCQLFunc);
 62                   
 63                     CQLFactorRep(const CQLFactorRep* rep);
 64 david.dillard 1.8 
 65 chuck         1.4   ~CQLFactorRep(){}
 66 david.dillard 1.8 
 67 chuck         1.4   CQLValue resolveValue(const CIMInstance& CI, const QueryContext& QueryCtx);
 68 david.dillard 1.8 
 69 chuck         1.4   Boolean isSimple()const;
 70 david.dillard 1.8 
 71 chuck         1.4   Boolean isSimpleValue()const;
 72 david.dillard 1.8 
 73 chuck         1.4   CQLValue getValue()const;
 74 david.dillard 1.8 
 75 chuck         1.4   CQLFunction getCQLFunction()const;
 76 david.dillard 1.8 
 77 chuck         1.4   CQLExpression getCQLExpression()const;
 78 david.dillard 1.8 
 79 chuck         1.4   String toString()const;
 80 david.dillard 1.8 
 81 vijay.eli     1.9   void applyContext(const QueryContext& inContext,
 82                               const CQLChainedIdentifier& inCid);
 83 david.dillard 1.8 /*
 84 chuck         1.4   Boolean operator==(const CQLFactorRep& rep)const;
 85 david.dillard 1.8 
 86 chuck         1.4   Boolean operator!=(const CQLFactorRep& rep)const;
 87 humberto      1.5   */
 88 chuck         1.4   friend class CQLFactory;
 89 david.dillard 1.8 
 90 chuck         1.4  private:
 91 david.dillard 1.8 
 92 chuck         1.4   enum ContainedObjectType {EXPRESSION, FUNCTION, VALUE};
 93 david.dillard 1.8 
 94 chuck         1.4   CQLExpression _CQLExp;
 95 david.dillard 1.8 
 96 chuck         1.4   CQLValue _CQLVal;
 97 david.dillard 1.8 
 98 chuck         1.4   CQLFunction _CQLFunct;
 99 david.dillard 1.8 
100 chuck         1.4   Boolean _invert;
101 david.dillard 1.8 
102 chuck         1.4   Boolean _simpleValue;
103 david.dillard 1.8 
104 chuck         1.4   ContainedObjectType _containedType;
105                   };
106 humberto      1.1 
107                   PEGASUS_NAMESPACE_END
108                   
109 chuck         1.4 #endif /* CQLFACTORREP_H_HEADER */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2