Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.ifs.search
Class FolderRestrictQualification

    java.lang.Object
      oracle.ifs.search.SearchQualification
          oracle.ifs.search.FolderRestrictQualification

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable

    public class FolderRestrictQualification

extends SearchQualification

The FolderRestrictQualification(FRQ) represents a condition to restrict the Search to a particular area of the folder Hierarchy. FRQs apply only to classes that can be foldered.

A FRQ is represented by the Search Class and a Folder. The Folder represents the root of the hierarchy under consideration. Users can also specify the depth of the Search. For e.g. a depth of 2 implies only objects that are upto 2 levels below the Start Folder should be considered. The default is to consider objects to an unlimited depth. Search class is used to specify the class that is being looked for in the folder.

Note that late binding is not supported for the specification of the starting folder. FRQs are converted into a SubSelect containing a 'connect-by' clause in SQL. Such queries are expensive, and should be used judiciously.

>      //
>      // Usage Examples
>      //
>      // Simple Folder restriction condition
>      // Get all documents that are under a particular folder
>      FolderRestrictQualification frq1 = new FoldereRestrictQualification();
>      Folder startFolder;
>      frq1.setStartFolder(startFolder);
>      frq1.setSearchClassname(Document.CLASS_NAME);

>      //
>      // If you prefer to use the AttributeValue, then use this.
>      //
>      AttributeValue av = AttributeValue.newAttributeValue(startFolder);
>      frq1.setStartFolder(av);
>      //
>      // To search for all Public objects that are foldered,
>      //
>      frq1.setSearchClassName(PublicObject.CLASS_NAME);

See Also:
  Serialized Form
(Published)

Field Summary
`protected static java.lang.String` | `BASE_INCLUSION_CLASS` Base Relationship Class.
`protected static java.lang.String` | `INCLUSION_CLASS` Folder Relationship class.
`protected java.lang.String` | `m_Class` Search Class.
`protected java.lang.Integer` | `m_MaxLevels` Specifies how deep should the hierarchy be traversed.
`protected AttributeValue` | `m_StartFolderAttributeValue` For backward compatibility, the Startng folder can be specified as an AttributeValue, which gets validated later.
`protected java.lang.Long` | `m_StartFolderId` Id of Specified Root of Search Hierarchy.

Fields inherited from class oracle.ifs.search.SearchQualification
`LATE_BIND_OPER`

Constructor Summary
`FolderRestrictQualification()` Constructs a FolderRestrictQualification.

Method Summary
`protected void` | `accept(oracle.ifs.search.SearchQualificationVisitor v)` Accepts a SearchQualificationVisitor.
`java.lang.String` | `getSearchClassname()` Returns the name of the search class.
`java.lang.Long` | `getStartFolderId()` Returns the startFolder ID.
`Folder` | `getStartingFolder(LibrarySession session)` Returns the start folder
`protected boolean` | `isLateBound()` Checks if Qualification is Late Bound.
`boolean` | `isMultiLevel()` Return whether the search is for items directly in the starting folder, or at any level below the starting folder.
`protected void` | `resolveStartFolder(LibrarySession session)` Resolve the startFolder.
`void` | `setMultiLevel(boolean multiLevel)` Sets whether the search is for items directly in the starting folder, or at any level below the starting folder.
`void` | `setSearchClassname(java.lang.String className)` Sets the SearchClass.
`void` | `setStartFolder(AttributeValue av)` Sets the startFolder.
`void` | `setStartFolder(Folder folder)` Sets the startFolder.

Methods inherited from class oracle.ifs.search.SearchQualification
`clone`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### INCLUSION_CLASS

    protected static java.lang.String INCLUSION_CLASS

  Description copied from class: `FolderRestrictQualification`
  Folder Relationship class.

  (Unpublished)

### BASE_INCLUSION_CLASS

    protected static java.lang.String BASE_INCLUSION_CLASS

  Description copied from class: `FolderRestrictQualification`
  Base Relationship Class.

  (Unpublished)

### m_Class

    protected java.lang.String m_Class

  Description copied from class: `FolderRestrictQualification`
  Search Class. Objects of this class need to be under the Start Folder, within the specified depth.

  (Unpublished)

### m_StartFolderId

    protected java.lang.Long m_StartFolderId

  Description copied from class: `FolderRestrictQualification`
  Id of Specified Root of Search Hierarchy.

  (Unpublished)

### m_StartFolderAttributeValue

    protected AttributeValue m_StartFolderAttributeValue

  Description copied from class: `FolderRestrictQualification`
  For backward compatibility, the Startng folder can be specified as an AttributeValue, which gets validated later.

  (Unpublished)

### m_MaxLevels

    protected java.lang.Integer m_MaxLevels

  Description copied from class: `FolderRestrictQualification`
  Specifies how deep should the hierarchy be traversed. The default is to traverse the entire hierarchy. A null implies searching the full Hierarchy.

  (Unpublished)

Constructor Detail

### FolderRestrictQualification

    public FolderRestrictQualification()

  Constructs a FolderRestrictQualification. The search depth is set to null, implying searching the entire hierarchy. There are no defaults for Class & StartFolder.

  (Published)

Method Detail

### setSearchClassname

    public void setSearchClassname(java.lang.String className)

  Description copied from class: `FolderRestrictQualification`
  Sets the SearchClass. ClassName should be a valid iFS class. A null Class is taken to mean, use the first Result Class of the SearchSpecification. If the class is a FOLDER, then current folder will also be returned in the result.

  Parameters:
    `className` - The class of the attribute
  See Also:
    `SearchSpecification`, `SearchClassSpecification`
  (Published)

### getSearchClassname

    public java.lang.String getSearchClassname()

  Description copied from class: `FolderRestrictQualification`
  Returns the name of the search class.

  Returns:
    search class.
  (Published)

### setStartFolder

    public void setStartFolder(AttributeValue av)
                        throws IfsException

  Description copied from class: `FolderRestrictQualification`
  Sets the startFolder. AttributeValue should encapsulate a folder object.

  Parameters:
    `av` - the start Folder.
  Throws:
    `IfsException` - 22002 if value is null.
  (Published)

### setStartFolder

    public void setStartFolder(Folder folder)
                        throws IfsException

  Description copied from class: `FolderRestrictQualification`
  Sets the startFolder.

  Parameters:
    `folder` - the start Folder.
  Throws:
    `IfsException` - 22002 if value is null.
  (Published)

### getStartingFolder

    public Folder getStartingFolder(LibrarySession session)
                             throws IfsException

  Description copied from class: `FolderRestrictQualification`
  Returns the start folder

  Parameters:
    `session` - LibrarySession
  Returns:
    start folder
  Throws:
    `IfsException` - if the operation fails
  (Published)

### getStartFolderId

    public java.lang.Long getStartFolderId()
                                    throws IfsException

  Description copied from class: `FolderRestrictQualification`
  Returns the startFolder ID. This is the ID of the folder in which the search will start traversing the folder hierarchy.

  Returns:
    Start Folder ID.
  Throws:
    `IfsException`
  (Unpublished)

### resolveStartFolder

    protected void resolveStartFolder(LibrarySession session)
                               throws IfsException

  Description copied from class: `FolderRestrictQualification`
  Resolve the startFolder. This is invoked as part of validating the search specification. It will transform an AttributeValue specification of the starting folder to a Folder.

  Parameters:
    `session` - the session
  Throws:
    `IfsException`
  (Unpublished)

### setMultiLevel

    public void setMultiLevel(boolean multiLevel)
                       throws IfsException

  Description copied from class: `FolderRestrictQualification`
  Sets whether the search is for items directly in the starting folder, or at any level below the starting folder.

  Parameters:
    `multiLevel` - if true, the search is for any level; if false, the search is only for items directly in the starting folder.
  Throws:
    `IfsException`
  (Published)

### isMultiLevel

    public boolean isMultiLevel()

  Description copied from class: `FolderRestrictQualification`
  Return whether the search is for items directly in the starting folder, or at any level below the starting folder.

  Returns:
    true if search is for any level, and false if the search is only for items directly in the starting folder.
  (Published)

### isLateBound

    protected boolean isLateBound()

  Description copied from class: `FolderRestrictQualification`
  Checks if Qualification is Late Bound. An FRQ is LateBound if the startFolder is equal to the LATE_BIND_OPER.

  Overrides:
    `isLateBound` in class `SearchQualification`
  Returns:
    true if FRQ is lateBound, false otherwise.
  (Unpublished)

### accept

    protected void accept(oracle.ifs.search.SearchQualificationVisitor v)
                   throws IfsException

  Description copied from class: `FolderRestrictQualification`
  Accepts a SearchQualificationVisitor. Calls visitFRQQualifier on the visitor. The code in visitFRQQualifier is specific to the Visitor.

  Specified by:
    `accept` in class `SearchQualification`
  Parameters:
    `v` - SearchQualificationVisitor
  Throws:
    `IfsException` - thrown if Visitor code throws.
  (Unpublished)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD