Re: CQL/WQL Question
Kirk Augustin <[email protected]>
| Newsgroups | gmane.network.open-pegasus.general |
|---|---|
| Message-ID | <[email protected]> |
The reason why your query will not reach your provider is because you only created an instance provider and not a method provider. If you create a method provider, you can pass any sort of parameters to it you want, including your query strings. The advantages of your provider handling queries instead of the CIMOM are that you can use any syntax you want, you can cache information you know will be accessed again soon, and you can minimize the amount of data that has to be sent back and forth to the client. Kirk Augustin 11821 NW McNamee Rd Portland, OR 97231 HM: 503-289-4356 WK: 503-744-8841 >________________________________ > From: "STROBL, Robert" <[email protected]> >To: Kirk Augustin <[email protected]> >Cc: "[email protected]" <[email protected]> >Sent: Monday, November 21, 2011 2:27 AM >Subject: RE: CQL/WQL Question > > >Hi Kirk, >Actually I need to filter instances by a kind of regex pattern. So I actually don’t need those SQL like query languages. >They would just have been a work around. As far as I understood, I should use CIM over HTTP’s ExecQuery to send this >Pattern to the CIMOM. For handling the request I implement a provider that is derived from CIMInstanceQueryProvider. However, >my query language wouldn’t reach the provider because query language indicators (WQL, DMTF:CQL, CIM:CQL) appear to be >hardcoded in OpenPegasus and as my language wouldn’t match to one of those an exception is raised. >Is this interpretion correct or did I miss something? > >Thank you and best regards, >Robert > > >From:Kirk Augustin [mailto:[email protected]] >Sent: vendredi 18 novembre 2011 17:19 >To: STROBL, Robert; [email protected] >Subject: Re: CQL/WQL Question > >What I usually do is to think of CIM as just a go-between and not something that should try to expand a query to multiple providers. >I simply want CIM to pass the query on to my own provider, that then does the query interpretation itself. >Ultimately any query requires lots of individual object access operations, but if you manage the query yourself, you can optimize it far better than the CIMOM could possibly do. >I don't think the CIMOM should be the database, but simply the connection methodology to the real back end database. >I think the providers should supply the database and all of its functionality. > >Kirk Augustin >11821 NW McNamee Rd >Portland, OR 97231 >HM: 503-289-4356 >WK: 503-744-8841 > >________________________________ > >From:"STROBL, Robert" <[email protected]> >To: "STROBL, Robert" <[email protected]>; "[email protected]" <[email protected]> >Sent: Friday, November 18, 2011 6:45 AM >Subject: RE: CQL/WQL Question > >Okay, it appears that a part of my questions >Has been already answered in: http://comments.gmane.org/gmane.network.open-pegasus.general/6507 :) > >-----Original Message----- >From: STROBL, Robert [mailto:[email protected]] >Sent: vendredi 18 novembre 2011 11:51 >To: [email protected] >Subject: CQL/WQL Question > >Hi, > >I am using OpenPegasus for a project and want to use advanced database requests >Rather than the limited ones using CIM XML. For that I found out that you have WQL/CQL >support in which _W_QL is confusing me as I cannot find a specification to it. >What is it? WBEM Query Language? I can just find a CQL specification from WBEM. >What is the link between both of them? > >I am using the SBLIM Java API to perform CIM-XML requests on the Pegasus server. > >Enumeration persons = cimClient.execQuery(resourceClass, "SELECT OBJECTPATH(Person) AS Path FROM Person WHERE Name LIKE \"Foo%\"", "CQL"); > >That gives a remote exception on the Pegasus server in which I am told that CQL >Is not a supported query language. However, I compiled Pegasus with: > >PEGASUS_DISABLE_PROV_USERCTCT=true >PEGASUS_ENABLE_EXECQUERY=true >PEGASUS_ENABLE_CQL=true >PEGASUS_ENABLE_CMPI_PROVIDER=true > >If I use WQL, it works, but it does not appear to support LIKE statements in WHERE >Clauses. If my issue cannot be resolved by using Pegasus' supported query languages I >Would be very pleased about an alternative suggestion to solve it. > >Cheers, >Robert > > > > > >