|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.xml.sax.helpers.DefaultHandler | +--edu.ucsb.nceas.metacat.QuerySpecification
A Class that represents a structured query, and can be constructed from an XML serialization conforming to @see pathquery.dtd. The printSQL() method can be used to print a SQL serialization of the query.
Field Summary | |
static java.lang.String |
ATTRIBUTESYMBOL
|
Constructor Summary | |
QuerySpecification(java.io.Reader queryspec,
java.lang.String parserName,
java.lang.String accNumberSeparator)
construct an instance of the QuerySpecification class |
|
QuerySpecification(java.lang.String queryspec,
java.lang.String parserName,
java.lang.String accNumberSeparator)
construct an instance of the QuerySpecification class |
Method Summary | |
void |
characters(char[] ch,
int start,
int length)
callback method used by the SAX Parser when the text sequences of an xml stream are detected. |
boolean |
containAttributeReturnField()
A method to get if the query has an attribute return field |
boolean |
containsExtendedSQL()
Returns true if the parsed query contains and extended xml query (i.e. |
void |
endElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName)
callback method used by the SAX Parser when the end tag of an element is detected. |
java.lang.String |
getAccessQuery()
Method to append a access control query to SQL. |
static java.lang.String |
getAttributeName(java.lang.String path)
|
java.util.Vector |
getFilterDocList()
Accessor method to return a vector of the filter doc types as defined in the <filterdoctype> tag in the pathquery dtd. |
java.lang.String |
getIdentifier()
Accessor method to return the identifier of this Query |
java.util.Vector |
getOwnerList()
Accessor method to return a vector of the owner fields as defined in the <owner> tag in the pathquery dtd. |
edu.ucsb.nceas.metacat.QuerySpecification.QueryGroup |
getQueryGroup()
get the QueryGroup used to express query constraints |
java.lang.String |
getQueryTitle()
Accessor method to return the title of this Query |
java.util.Vector |
getReturnDocList()
Accessor method to return a vector of the return document types as defined in the <returndoctype> tag in the pathquery dtd. |
java.util.Vector |
getReturnFieldList()
Accessor method to return a vector of the extended return fields as defined in the <returnfield> tag in the pathquery dtd. |
java.util.Vector |
getSiteList()
Accessor method to return a vector of the site fields as defined in the <site> tag in the pathquery dtd. |
boolean |
isPercentageSearch()
Method to indicate this query is a percentage search |
static void |
main(java.lang.String[] args)
Main routine for testing |
static java.lang.String |
newPathExpressionWithOutAttribute(java.lang.String pathExpression)
|
java.lang.String |
printAccessControlSQLForReturnField(java.lang.String doclist)
This sql command will selecet startnodeid and endnodeid that user can NOT access |
java.lang.String |
printAttributeQuery(java.lang.String doclist)
This method prints sql based upon the returnfield tag in the pathquery document has an attribute. |
java.lang.String |
printExtendedSQL(java.lang.String doclist,
java.util.Hashtable unaccessableNodePair)
This method prints sql based upon the <returnfield> tag in the pathquery document. |
static java.lang.String |
printGetDocByDoctypeSQL(java.lang.String docid)
|
static java.lang.String |
printPackageSQL()
Prints sql that returns all relations in the database. |
static java.lang.String |
printPackageSQL(java.lang.String docid)
Prints sql that returns all relations in the database that were input under a specific docid |
static java.lang.String |
printPackageSQL(java.lang.String subDocidURL,
java.lang.String objDocidURL)
Returns all of the relations that has a certain docid in the subject or the object. |
static java.lang.String |
printRelationSQL(java.lang.String docid)
|
java.lang.String |
printSQL(boolean useXMLIndex)
create a SQL serialization of the query that this instance represents |
void |
setFilterDocList(java.util.Vector filterDocList)
method to set the list of filter docs of this query |
void |
setGroup(java.lang.String[] myGroup)
Method to set user group |
void |
setIdentifier(java.lang.String id)
method to set the identifier of this query |
void |
setOwnerList(java.util.Vector ownerList)
method to set the list of owners used to constrain this query |
void |
setQueryTitle(java.lang.String title)
method to set the title of this query |
void |
setReturnDocList(java.util.Vector returnDocList)
method to set the list of return docs of this query |
void |
setReturnFieldList(java.util.Vector returnFieldList)
method to set the list of fields to be returned by this query |
void |
setSiteList(java.util.Vector siteList)
method to set the list of sites used to constrain this query |
void |
setUserName(java.lang.String myName)
Method to set user name |
void |
startElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName,
org.xml.sax.Attributes atts)
callback method used by the SAX Parser when the start tag of an element is detected. |
java.lang.String |
toString()
create a String description of the query that this instance represents. |
Methods inherited from class org.xml.sax.helpers.DefaultHandler |
endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public static final java.lang.String ATTRIBUTESYMBOL
Constructor Detail |
public QuerySpecification(java.io.Reader queryspec, java.lang.String parserName, java.lang.String accNumberSeparator) throws java.io.IOException
queryspec
- the XML representation of the query (should conform
to pathquery.dtd) as a ReaderparserName
- the fully qualified name of a Java Class implementing
the org.xml.sax.XMLReader interfacepublic QuerySpecification(java.lang.String queryspec, java.lang.String parserName, java.lang.String accNumberSeparator) throws java.io.IOException
queryspec
- the XML representation of the query (should conform
to pathquery.dtd) as a StringparserName
- the fully qualified name of a Java Class implementing
the org.xml.sax.Parser interfaceMethod Detail |
public void setUserName(java.lang.String myName)
myName
- the user namepublic void setGroup(java.lang.String[] myGroup)
myGroup
- the user grouppublic boolean isPercentageSearch()
public java.lang.String getAccessQuery()
public static void main(java.lang.String[] args)
public boolean containsExtendedSQL()
public boolean containAttributeReturnField()
public java.lang.String getIdentifier()
public void setIdentifier(java.lang.String id)
public java.lang.String getQueryTitle()
public void setQueryTitle(java.lang.String title)
public java.util.Vector getReturnDocList()
public void setReturnDocList(java.util.Vector returnDocList)
public java.util.Vector getFilterDocList()
public void setFilterDocList(java.util.Vector filterDocList)
public java.util.Vector getReturnFieldList()
public void setReturnFieldList(java.util.Vector returnFieldList)
public java.util.Vector getOwnerList()
public void setOwnerList(java.util.Vector ownerList)
public java.util.Vector getSiteList()
public void setSiteList(java.util.Vector siteList)
public edu.ucsb.nceas.metacat.QuerySpecification.QueryGroup getQueryGroup()
public void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts) throws org.xml.sax.SAXException
startElement
in interface org.xml.sax.ContentHandler
startElement
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName) throws org.xml.sax.SAXException
endElement
in interface org.xml.sax.ContentHandler
endElement
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
public void characters(char[] ch, int start, int length)
characters
in interface org.xml.sax.ContentHandler
characters
in class org.xml.sax.helpers.DefaultHandler
public java.lang.String printSQL(boolean useXMLIndex)
public java.lang.String printAccessControlSQLForReturnField(java.lang.String doclist)
public java.lang.String printExtendedSQL(java.lang.String doclist, java.util.Hashtable unaccessableNodePair)
doclist
- the list of document ids to search byunaccessableNodePair
- the node pair(start id and end id) which this
user could not access itpublic java.lang.String printAttributeQuery(java.lang.String doclist)
doclist
- the list of document ids to search bypublic static java.lang.String printRelationSQL(java.lang.String docid)
public static java.lang.String printPackageSQL()
public static java.lang.String printPackageSQL(java.lang.String docid)
docid
- the docid to search for.public static java.lang.String printPackageSQL(java.lang.String subDocidURL, java.lang.String objDocidURL)
public static java.lang.String printGetDocByDoctypeSQL(java.lang.String docid)
public java.lang.String toString()
toString
in class java.lang.Object
public static java.lang.String newPathExpressionWithOutAttribute(java.lang.String pathExpression)
public static java.lang.String getAttributeName(java.lang.String path)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |