Oracle Content Management SDK

oracle.ifs.search
Class AttributeSearchSpecification

java.lang.Object
  |
  +--oracle.ifs.search.SearchSpecification
        |
        +--oracle.ifs.search.AttributeSearchSpecification
All Implemented Interfaces:
java.lang.Cloneable, java.io.Serializable
Direct Known Subclasses:
ContextSearchSpecification

public class AttributeSearchSpecification
extends SearchSpecification

An AttributeSpecification represents a non Context Search. The Specification contains the ClassSpecification, SortSpecification and SearchQualification. This class should be used when your searches contain only Attribute based conditions and no context based conditions.


 // Usage Examples

 // How to build a Attribute Search specification

 // Construct the AttributeSearchSpecification.
 AttributeSearchSpecification asp = new AttributeSearchSpecification();
              
 // Let's assume we have the 3 parts needed.
 // They are SearchClassSpecification - SELECT list and FROM list
 // SearchQualification - WHERE condition
 // SearchSortSpecification - ORDER BY clause
 SearchClassSpecification someSearchSpec = ...;
 SearchSortSpecification someSortSpec = ... ;
 SearchQualification someSearchQual = ...;
 LibrarySession sess = ...;

 // Set the search class spec 
 asp.setSearchClassSpecification(someSearchSpec);

 // Set the search qualification 
 asp.setSearchQualification(someSearchQual);

 // Set the sort specification 
 asp.setSearchSortSpecification(someSortSpec);

 // Now we are ready to build a Search  or create a View. 
 
 // Building a search
 Search someSearch = new Search(sess, asp); 

 // Or creating a view
 ViewSpecification viewSpec = new ViewSpecification("TestView", asp);


 // ---------------------------------------------------------------
 // Complete example of a Search using AttributeSearchSpecification
 // ---------------------------------------------------------------

 // Let's build a search that looks for all DOCUMENTS with a given
 // ACL and are named FOO.

 // Let's build the WHERE condition first.
 // It will be - DOC.ACL = GIVEN-ACL and DOC.NAME='FOO'

 // DOC.ACL = GIVEN-ACL
 AttributeQualification aq1 = new AttributeQualification();
 aq1.setAttribute(PublicObject.ACL_ATTRIBUTE);
 aq1.setOperatorType(AttributeQualification.EQUAL);
 aq1.setValue(AttributeValue.newAttributeValue(acl));					

 // DOC.NAME= 'FOO'
 AttributeQualification aq2 = new AttributeQualification();
 aq2.setAttribute(PublicObject.NAME_ATTRIBUTE);
 aq2.setOperatorType(AttributeQualification.EQUAL);
 aq2.setValue("FOO");

 // Put them together with an AND. With that our
 // SearchQualification is ready.
 SearchClause sc = new SearchClause(aq1, aq2, SearchClause.AND);

 // Let's build the SearchClassSpecification
 SearchClassSpecification classSpec = new SearchClassSpecification();
 classSpec.addSearchClass(Document.CLASS_NAME);

 // Let's build the SearchSortSpecification
 
 // Let' sort by create date
 SearchSortSpecification sortSpec = new SearchSortSpecification();
 sortSpec.add(PublicObject.CREATEDATE_ATTRIBUTE, true);

 // Now that all 3 components are built, it is time to build
 // AttributeSearchSpecification,nd attache the 3 components.

 AttributeSearchSpecification sp = new AttributeSearchSpecification();
 sp.setSearchClassSpecification(classSpec);
 sp.setSearchQualification(sc);
 sp.setSearchSortSpecification(sortSpec)

 // Now we are ready to construct the search object.
 // You can even build a view at this point using ViewSpecification.
 Search s = new Search(m_Session, sp);
 
 // Open the search. This runs the query.
 s.open();

 // At this point you can do next() on the Search and get the SearchResultObject
 // for each row in searcn result. After processing the results, remember to close
 // the search.

 // close
 s.close();
 
 

See Also:
SearchClassSpecification, SearchSortSpecification, SearchQualification, Serialized Form

Constructor Summary
AttributeSearchSpecification()
           
 
Method Summary
 java.lang.Object clone()
          Returns a clone of this AttributeSearchSpecification.
 SearchClassSpecification getSearchClassSpecification()
          Gets SearchClassSpecification of this search.
 SearchQualification getSearchQualification()
          Returns the SearchQualification of this search.
 SearchSortSpecification getSearchSortSpecification()
          Gets the SearchSortSpecification for this object.
 void setSearchClassSpecification(SearchClassSpecification scp)
          Sets the SearchClassSpecification for this Search.
 void setSearchQualification(SearchQualification s)
          Sets the SearchQualification.
 void setSearchSortSpecification(SearchSortSpecification sortSpec)
          Sets the SearchSortSpecification.
 

Constructor Detail


AttributeSearchSpecification

public AttributeSearchSpecification()
Method Detail

setSearchClassSpecification

public void setSearchClassSpecification(SearchClassSpecification scp)
                                 throws IfsException
Sets the SearchClassSpecification for this Search. SearchClassSpecification is used to generate the SELECT list and FROM list of the search.
Parameters:
scp - SearchClassSpecification
Throws:
IfsException - if the operation fails

setSearchQualification

public void setSearchQualification(SearchQualification s)
                            throws IfsException
Sets the SearchQualification. SearchQualification is used to generate the WHERE condition of the search.
Parameters:
s - SearchQualification representing SearchTree
Throws:
IfsException - if the operation fails

getSearchQualification

public SearchQualification getSearchQualification()
Returns the SearchQualification of this search. SearchQualification encapsulates the WHERE condition of this search.
Returns:
the SearchTree

setSearchSortSpecification

public void setSearchSortSpecification(SearchSortSpecification sortSpec)
                                throws IfsException
Sets the SearchSortSpecification. SerachSortSpecification is used to generate the ORDER BY clause of this search.
Parameters:
SearchSortSpecification - SearchSortSpecification describing Sort behavior.
Throws:
IfsException - if the operation fails

getSearchSortSpecification

public SearchSortSpecification getSearchSortSpecification()
                                                   throws IfsException
Gets the SearchSortSpecification for this object. SearchSortSpecification encapsulates the ORDER BY clause of this search.
Returns:
SearchSortSpecification for this object.

getSearchClassSpecification

public SearchClassSpecification getSearchClassSpecification()
                                                     throws IfsException
Gets SearchClassSpecification of this search. SearchClassSpecification encapsulates the SELECT list and FROM list of this search.
Overrides:
getSearchClassSpecification in class SearchSpecification
Returns:
SearchClassSpecification of this object
Throws:
IfsException - if the operation fails

clone

public java.lang.Object clone()
Returns a clone of this AttributeSearchSpecification. Does a deep copy, by cloning the individual elements.
Overrides:
clone in class SearchSpecification
Returns:
Return a clone of this AttributeSearchSpecification.

Oracle Content Management SDK

(c) 2002 Copyright Oracle Corporation. All rights reserved.