org.globus.ogsa.utils
Class QueryHelper

java.lang.Object
  extended byorg.globus.ogsa.utils.QueryHelper

public class QueryHelper
extends java.lang.Object

Helper class used to create query expressions for the findServiceData and setServiceData operations.


Constructor Summary
QueryHelper()
           
 
Method Summary
static ExtensibilityType getDeleteNamesQuery(javax.xml.namespace.QName[] qnames)
          Creates a deleteByServiceDataNames query expression.
static ExtensibilityType getNamesQuery(javax.xml.namespace.QName qname)
          Creates a queryByServiceDataNames query expression.
static ExtensibilityType getNamesQuery(javax.xml.namespace.QName[] qnames)
          Creates a queryByServiceDataNames query expression.
static ExtensibilityType getNamesQuery(java.lang.String localName)
          Creates a queryByServiceDataNames query expression.
static ExtensibilityType getQNamesQuery(javax.xml.namespace.QName[] qnames, javax.xml.namespace.QName expression)
          Creates a query expression containing qnames.
static QueryEngine getQueryEngine(java.lang.String engineClass)
           
static ExtensibilityType getSetNamesQuery(ServiceData[] serviceData)
          creates a setByServiceDataNames expression based on the ServiceData elements being passed as input.
static ExtensibilityType getSetNamesQuery(java.lang.String file)
          creates a setServiceData expression based on the content of the input file.
static ExtensibilityType getXPathQuery(javax.xml.namespace.QName qname, java.lang.String XPathExpr, java.lang.String[] namespaces)
          Same as getXPathQuery but allows you to specify the fully qualified name of the service data name to serve as basis for the query.
static ExtensibilityType getXPathQuery(java.lang.String name, java.lang.String XPathExpr, java.lang.String[] namespaces)
          Creates a globus subscribeByXPath expression
static void registerEvaluators(QueryEngine queryEngine, java.lang.String evaluators)
           
static java.lang.String[] tokenizeNamespaces(java.lang.String namespacesString)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

QueryHelper

public QueryHelper()
Method Detail

getSetNamesQuery

public static ExtensibilityType getSetNamesQuery(java.lang.String file)
                                          throws GridServiceException
creates a setServiceData expression based on the content of the input file. The content must have an ogsi:setByServiceDataNames element wrapping the service data elements to set. It must further conform to the OGSI specified setByServiceDataNames expression. Note that all service data names must be available and modifiable in the service for this operation to succeed.

Throws:
GridServiceException
See Also:
GridService.setServiceData(org.gridforum.ogsi.ExtensibilityType)

getSetNamesQuery

public static ExtensibilityType getSetNamesQuery(ServiceData[] serviceData)
                                          throws GridServiceException
creates a setByServiceDataNames expression based on the ServiceData elements being passed as input. Note that all service data names must be available and modifiable in the service for this operation to succeed.

Throws:
GridServiceException
See Also:
GridService.setServiceData(org.gridforum.ogsi.ExtensibilityType)

getNamesQuery

public static ExtensibilityType getNamesQuery(java.lang.String localName)
                                       throws GridServiceException
Creates a queryByServiceDataNames query expression.

Parameters:
localName - local name of service data element to query.
Returns:
query expression
Throws:
GridServiceException
See Also:
GridService.findServiceData(org.gridforum.ogsi.ExtensibilityType)

getNamesQuery

public static ExtensibilityType getNamesQuery(javax.xml.namespace.QName qname)
                                       throws GridServiceException
Creates a queryByServiceDataNames query expression.

Parameters:
qname - name of service data element to query.
Returns:
query expression
Throws:
GridServiceException
See Also:
GridService.findServiceData(org.gridforum.ogsi.ExtensibilityType)

getNamesQuery

public static ExtensibilityType getNamesQuery(javax.xml.namespace.QName[] qnames)
                                       throws GridServiceException
Creates a queryByServiceDataNames query expression.

Parameters:
qnames - names of service data elements to query.
Returns:
query expression
Throws:
GridServiceException
See Also:
GridService.findServiceData(org.gridforum.ogsi.ExtensibilityType)

getDeleteNamesQuery

public static ExtensibilityType getDeleteNamesQuery(javax.xml.namespace.QName[] qnames)
                                             throws GridServiceException
Creates a deleteByServiceDataNames query expression.

Parameters:
qnames - names of service data elements to delete.
Returns:
query expression
Throws:
GridServiceException
See Also:
GridService.setServiceData(org.gridforum.ogsi.ExtensibilityType)

getQNamesQuery

public static ExtensibilityType getQNamesQuery(javax.xml.namespace.QName[] qnames,
                                               javax.xml.namespace.QName expression)
                                        throws GridServiceException
Creates a query expression containing qnames.

Parameters:
qnames - names of service data elements to query.
expression - expression qname to use for the query.
Returns:
query expression
Throws:
GridServiceException
See Also:
GridService.setServiceData(org.gridforum.ogsi.ExtensibilityType), GridService.findServiceData(org.gridforum.ogsi.ExtensibilityType)

getXPathQuery

public static ExtensibilityType getXPathQuery(java.lang.String name,
                                              java.lang.String XPathExpr,
                                              java.lang.String[] namespaces)
                                       throws GridServiceException
Creates a globus subscribeByXPath expression

Parameters:
name - name of service data to use as basis for search
XPathExpr - XPath expresstion to apply to service data
namespaces - XPath requires that the client provides a namespace mapping for every node in the query scope that has a corresponding namespace attribute. In the current implementation, this is provided via an array of Strings of the form "xmlns:=". For example: xmlns:gsdl=http://www.gridforum.org/namespaces/2003/03/OGSI
Returns:
query expression
Throws:
GridServiceException

getXPathQuery

public static ExtensibilityType getXPathQuery(javax.xml.namespace.QName qname,
                                              java.lang.String XPathExpr,
                                              java.lang.String[] namespaces)
                                       throws GridServiceException
Same as getXPathQuery but allows you to specify the fully qualified name of the service data name to serve as basis for the query.

Throws:
GridServiceException

tokenizeNamespaces

public static java.lang.String[] tokenizeNamespaces(java.lang.String namespacesString)

getQueryEngine

public static QueryEngine getQueryEngine(java.lang.String engineClass)
                                  throws GridServiceException
Throws:
GridServiceException

registerEvaluators

public static void registerEvaluators(QueryEngine queryEngine,
                                      java.lang.String evaluators)
                               throws GridServiceException
Throws:
GridServiceException


Copyright ? 1999 University of Chicago and The University of Southern California. All Rights Reserved.