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.server
Class FolderIndexService

    java.lang.Object
      oracle.ifs.server.FolderIndexService

All Implemented Interfaces:
  SubService

Direct Known Subclasses:
  TieFolderIndexService

    public class FolderIndexService

extends java.lang.Object
implements SubService

A FolderIndexService manages the iFS folder index, and updates it transactionally as the folder hierarchy changes.

(Unpublished)

Field Summary
`static java.lang.String` | `DEFERRED_UPDATE_SEQ_NAME` The name of the folder index deferred update sequence.
`static java.lang.String` | `DEFERRED_UPDATE_TABLE_NAME` The name of the folder index deferred update table.
`protected static java.lang.String` | `FOLDER_TABLE_NAME` The name of the folder table.
`static java.lang.String` | `FPR_TABLE_NAME` The name of the FolderPathRelationship view.
`protected boolean` | `m_CreationDeferred` Indicates whether or not the creation of the index has been deferred and has not yet completed.
`protected java.lang.Long` | `m_FolderIndexPropertyBundleClassId` The Class ID of the Folder Index Properties PropertyBundle
`protected java.lang.Long` | `m_FolderIndexPropertyBundleId` The ID of the Folder Index Properties PropertyBundle
`protected int` | `m_MaxLevel` The maximum level.
`protected S_LibraryService` | `m_Service` The parent library service
`protected int` | `m_UpdateMode` The update mode for this service
`protected boolean` | `m_UseExistsClause` Should FRQ's use an "exists" clause?
`static java.lang.String` | `MAP_INDEX_LEFT` The name of the index on the leftid.
`static java.lang.String` | `MAP_INDEX_RIGHT` The name of the index on the rightid.
`protected static int` | `MAP_LEVEL_MAIN`
`static java.lang.String` | `MAP_TABLE_NAME` The name of the folder index table.
`static java.lang.String` | `PARAM_TABLE_NAME` The name of the folder index parameter table.
`protected static int` | `PARAMETER_KEY_MAP_CREATION_DEFERRED` The parameter key used to indicate whether the creation of the map is not yet complete.
`protected static int` | `PARAMETER_KEY_MAP_UPDATE_MODE` The parameter key used to indicate whether the map is updated synchronously or asynchronously.
`protected static int` | `PARAMETER_KEY_MAXLEVEL` The parameter key used to hold the maximum number of levels.
`protected static int` | `PARAMETER_KEY_PARTIALLY_CREATED` The parameter key used to indicate that the index is only partially created.
`protected static int` | `PARAMETER_VALUE_MAP_UPDATE_MODE_ASYNC` The value of the PARAMETER_KEY_MAP_UPDATE_MODE parameter that indicates the map is updated asynchronously.
`protected static int` | `PARAMETER_VALUE_MAP_UPDATE_MODE_NONE` The value of the PARAMETER_KEY_MAP_UPDATE_MODE parameter that indicates the map does not exist.
`protected static int` | `PARAMETER_VALUE_MAP_UPDATE_MODE_SYNC` The value of the PARAMETER_KEY_MAP_UPDATE_MODE parameter that indicates the map is updated synchronously.
`static java.lang.String` | `REL_TABLE_NAME` The name of the Relationship table.
`protected static java.lang.String` | `STATEMENT_CHECK_AT_LEVEL`
`protected static java.lang.String` | `STATEMENT_COUNT_OF_DIRECT_CHILDREN`
`protected static java.lang.String` | `STATEMENT_CYCLE_CHECK`
`protected static java.lang.String` | `STATEMENT_DELETE_ALL_BY_LEFT`
`protected static java.lang.String` | `STATEMENT_DELETE_BY_ROWID`
`protected static java.lang.String` | `STATEMENT_DELETE_DEFERRED_UPDATE_ROW`
`protected static java.lang.String` | `STATEMENT_DELETE_SELF_ROW`
`protected static java.lang.String` | `STATEMENT_FOLDERS_WITH_MANY_PARENTS`
`protected static java.lang.String` | `STATEMENT_GET_DIRECT_PARENTS`
`protected static java.lang.String` | `STATEMENT_INSERT_DEFERRED_UPDATE_ROW`
`protected static java.lang.String` | `STATEMENT_INSERT_MAP_ROWS`
`protected static java.lang.String` | `STATEMENT_INSERT_SELF_ROW`
`protected static java.lang.String` | `STATEMENT_LOCK_PARAMETER`
`protected static java.lang.String` | `STATEMENT_PROMOTE_ADD_DESCENDANTS`
`protected static java.lang.String` | `STATEMENT_PROMOTE_ANCESTORS`
`protected static java.lang.String` | `STATEMENT_PROMOTE_DESCENDANTS`
`protected static java.lang.String` | `STATEMENT_SELECT_DEFERRED_UPDATE_ROWS`
`protected static java.lang.String` | `STATEMENT_SELECT_PARAMETER`
`protected static java.lang.String` | `STATEMENT_SELECT_ROWID`
`protected static java.lang.String` | `STATEMENT_SELECT_ROWS_FOR_DELETE`
`protected static java.lang.String` | `STATEMENT_SHOW_MAP`
`protected static java.lang.String` | `STATEMENT_UPDATE_SELF_ROW`

Constructor Summary
`protected` | `FolderIndexService(S_LibraryService service)` Construct a FolderIndexService.

Method Summary
`protected void` | `addToFolder(S_LibrarySession sess, long parentid, long childid)`
`protected void` | `addToFolderNow(S_LibrarySession sess, long parentid, long childid)`
`protected void` | `applyDeferredUpdate(S_LibrarySession sess, FolderIndexDeferredUpdate fidu)`
`protected void` | `breakCycle(S_LibrarySession sess, long leftId, long rightId)`
`protected void` | `changeUpdateMode(S_LibrarySession sess, int newMode)`
`protected void` | `completeIndexCreation(S_LibrarySession sess, boolean creationDeferred)`
`protected java.sql.PreparedStatement` | `constructPreparedStatement(LibraryConnection lc, java.sql.Connection conn, java.lang.String key, java.lang.String stmt)`
`protected void` | `createDeferredUpdate(S_LibrarySession sess, int operationType, long leftId, long rightId, int level)`
`protected void` | `createInitialDeferredEntries(S_LibrarySession sess)`
`protected void` | `createInitialSelfRows(S_LibrarySession sess)`
`protected void` | `createMapSelfRow(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, long id, long leftSource, int maplevel)`
`protected boolean` | `deferOperation(S_LibrarySession sess)`
`protected void` | `deleteDeferredUpdate(S_LibrarySession sess, long id)`
`protected void` | `deleteMapParameterRow(LibraryConnection lc, java.sql.Connection conn, long key)`
`protected void` | `deleteMapSelfRow(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, long id, int maplevel)`
`protected int` | `determineMapLevel(LibraryConnection lc, java.sql.Connection conn, int maxLevel, long folderId)`
`void` | `dispose()` Terminate this subservice.
`protected java.util.HashMap` | `getDirectParents(S_LibrarySession sess, int level, java.util.Vector folderVector)` Returns the direct parents of all the folders that are in the given vector.
`protected int` | `getFolderIndexLock(LibraryConnection lc, java.sql.Connection conn)`
`protected java.lang.Long` | `getFolderIndexPropertyBundleClassId(S_LibrarySession sess)`
`protected java.lang.Long` | `getFolderIndexPropertyBundleId(S_LibrarySession sess)`
`protected java.lang.Long[]` | `getFoldersNeedingPromotion(S_LibrarySession sess, int level, int maxParentsThreshold, int maxChildrenThreshold)` Returns array of Long objects that hold the id of the folders at the current level that need promotion, in order to avoid explosion of rows in the odmz_folderindex because of multiply linked folders.
`protected java.util.Vector` | `getFoldersWithParentCountAboveThreshold(S_LibrarySession sess, int level, int parentThreshhold)` Returns Vector of folders whose direct parent count is greater than the max parent threshold.
`protected java.lang.String` | `getFrqClause(S_LibrarySession sess, long topFolderId, java.lang.String poAlias, java.lang.String relView)`
`protected java.lang.String` | `getFrqExistsClause(long topFolderId, int topMapLevel, int bottomMapLevel, java.lang.String poAlias, java.lang.String relView)`
`protected java.lang.String` | `getFrqExistsClause(S_LibrarySession sess, long topFolderId, java.lang.String poAlias, java.lang.String relView)`
`protected java.lang.String` | `getFrqInClause(long topFolderId, int topMapLevel, int bottomMapLevel, java.lang.String relView)`
`protected java.lang.String` | `getFrqInClause(S_LibrarySession sess, long topFolderId, java.lang.String poAlias, java.lang.String relView)`
`protected int` | `getMapParameterRow(LibraryConnection lc, java.sql.Connection conn, int paramKey, boolean shouldLock)`
`protected int` | `getMaxLevel(LibraryConnection lc, java.sql.Connection conn)`
`protected int` | `getMaxLevel(LibraryConnection lc, java.sql.Connection conn, boolean shouldLock)`
`int` | `getMaxLevel(S_LibrarySession sess)`
`protected java.sql.PreparedStatement` | `getPreparedStatement(LibraryConnection lc, java.sql.Connection conn, java.lang.String key)`
`protected int` | `getUpdateMode(LibraryConnection lc, java.sql.Connection conn)`
`protected void` | `init()` Initialize this subservice.
`protected void` | `initializeTables(S_LibrarySession sess, int maxLevels)`
`protected void` | `insertMapParameterRow(LibraryConnection lc, java.sql.Connection conn, long key, long value)`
`protected void` | `insertReferences(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, long parentid, long childid, int maplevel)`
`protected boolean` | `isChildCountAboveThreshold(S_LibrarySession sess, java.lang.Long folderId, int childCountThreshold)` Returns true if the given folder has more children than the threshold.
`protected boolean` | `isCreationDeferred(LibraryConnection lc, java.sql.Connection conn)`
`protected boolean` | `isCreationDeferred(S_LibrarySession sess)`
`protected boolean` | `isCycleCheckViolation(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, long parentid, long childid, int parentMapLevel, int childMapLevel)`
`protected boolean` | `isFolderAtMaplevel(LibraryConnection lc, java.sql.Connection conn, long folderId, int maplevel)`
`protected boolean` | `isIndexPartiallyCreated(LibraryConnection lc, java.sql.Connection conn)`
`protected boolean` | `isValidLevel(int level, int maxLevel)`
`protected void` | `postEvent(S_LibrarySession sess)`
`protected void` | `promoteFolder(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, int maxLevel, long folderId, int newLevel)`
`protected void` | `promoteFolder(S_LibrarySession sess, long folderId, int newLevel)`
`protected void` | `promoteFolderNow(S_LibrarySession sess, long folderId, int newLevel)`
`protected void` | `promoteFolderOneLevel(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, java.util.HashMap promotedMap, long folderId, int currentLevel)`
`protected void` | `promoteSingleFolderOneLevel(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, long folderId, int currentLevel)`
`protected void` | `registerNewFolder(S_LibrarySession sess, long id)`
`protected void` | `registerNewFolder(S_LibrarySession sess, long id, int level)`
`protected void` | `registerNewFolderNow(S_LibrarySession sess, long id, int level)`
`protected void` | `removeFromFolder(S_LibrarySession sess, long parentid, long childid)`
`protected void` | `removeFromFolderNow(S_LibrarySession sess, long parentid, long childid)`
`protected void` | `removeReferences(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, long parentid, long childid, int maplevel)`
`protected int` | `resetFolderIndex(S_LibrarySession sess)`
`protected java.util.Vector` | `selectDeferredUpdates(S_LibrarySession sess, int maxItems)`
`protected void` | `setMaxLevel(LibraryConnection lc, java.sql.Connection conn, int maxLevel)`
`protected void` | `setUpdateMode(LibraryConnection lc, java.sql.Connection conn, int updateMode)`
`protected void` | `truncateTables(S_LibrarySession sess)`
`protected void` | `unregisterFreedFolder(S_LibrarySession sess, long id)`
`protected void` | `unregisterFreedFolderNow(S_LibrarySession sess, long id)`
`protected void` | `updateMapSelfRow(S_LibrarySession sess, LibraryConnection lc, java.sql.Connection conn, long id, long tempvalue, int maplevel)`
`protected void` | `verifyValidLevel(int level, int maxLevel)`

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

Field Detail

### FPR_TABLE_NAME

    public static final java.lang.String FPR_TABLE_NAME

  Description copied from class: `FolderIndexService`
  The name of the FolderPathRelationship view.

  See Also:
    Constant Field Values
  (Unpublished)

### REL_TABLE_NAME

    public static final java.lang.String REL_TABLE_NAME

  Description copied from class: `FolderIndexService`
  The name of the Relationship table.

  See Also:
    Constant Field Values
  (Unpublished)

### MAP_TABLE_NAME

    public static final java.lang.String MAP_TABLE_NAME

  Description copied from class: `FolderIndexService`
  The name of the folder index table.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAM_TABLE_NAME

    public static final java.lang.String PARAM_TABLE_NAME

  Description copied from class: `FolderIndexService`
  The name of the folder index parameter table.

  See Also:
    Constant Field Values
  (Unpublished)

### DEFERRED_UPDATE_TABLE_NAME

    public static final java.lang.String DEFERRED_UPDATE_TABLE_NAME

  Description copied from class: `FolderIndexService`
  The name of the folder index deferred update table.

  See Also:
    Constant Field Values
  (Unpublished)

### DEFERRED_UPDATE_SEQ_NAME

    public static final java.lang.String DEFERRED_UPDATE_SEQ_NAME

  Description copied from class: `FolderIndexService`
  The name of the folder index deferred update sequence.

  See Also:
    Constant Field Values
  (Unpublished)

### MAP_INDEX_LEFT

    public static final java.lang.String MAP_INDEX_LEFT

  Description copied from class: `FolderIndexService`
  The name of the index on the leftid.

  See Also:
    Constant Field Values
  (Unpublished)

### MAP_INDEX_RIGHT

    public static final java.lang.String MAP_INDEX_RIGHT

  Description copied from class: `FolderIndexService`
  The name of the index on the rightid.

  See Also:
    Constant Field Values
  (Unpublished)

### FOLDER_TABLE_NAME

    protected static final java.lang.String FOLDER_TABLE_NAME

  Description copied from class: `FolderIndexService`
  The name of the folder table.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAMETER_KEY_MAXLEVEL

    protected static final int PARAMETER_KEY_MAXLEVEL

  Description copied from class: `FolderIndexService`
  The parameter key used to hold the maximum number of levels. Currently has the value 1.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAMETER_KEY_PARTIALLY_CREATED

    protected static final int PARAMETER_KEY_PARTIALLY_CREATED

  Description copied from class: `FolderIndexService`
  The parameter key used to indicate that the index is only partially created. Currently has the value 2.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAMETER_KEY_MAP_UPDATE_MODE

    protected static final int PARAMETER_KEY_MAP_UPDATE_MODE

  Description copied from class: `FolderIndexService`
  The parameter key used to indicate whether the map is updated synchronously or asynchronously.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAMETER_KEY_MAP_CREATION_DEFERRED

    protected static final int PARAMETER_KEY_MAP_CREATION_DEFERRED

  Description copied from class: `FolderIndexService`
  The parameter key used to indicate whether the creation of the map is not yet complete.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAMETER_VALUE_MAP_UPDATE_MODE_NONE

    protected static final int PARAMETER_VALUE_MAP_UPDATE_MODE_NONE

  Description copied from class: `FolderIndexService`
  The value of the PARAMETER_KEY_MAP_UPDATE_MODE parameter that indicates the map does not exist. Currently has the value 0.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAMETER_VALUE_MAP_UPDATE_MODE_SYNC

    protected static final int PARAMETER_VALUE_MAP_UPDATE_MODE_SYNC

  Description copied from class: `FolderIndexService`
  The value of the PARAMETER_KEY_MAP_UPDATE_MODE parameter that indicates the map is updated synchronously. Currently has the value 1.

  See Also:
    Constant Field Values
  (Unpublished)

### PARAMETER_VALUE_MAP_UPDATE_MODE_ASYNC

    protected static final int PARAMETER_VALUE_MAP_UPDATE_MODE_ASYNC

  Description copied from class: `FolderIndexService`
  The value of the PARAMETER_KEY_MAP_UPDATE_MODE parameter that indicates the map is updated asynchronously. Currently has the value 2.

  See Also:
    Constant Field Values
  (Unpublished)

### STATEMENT_SELECT_ROWS_FOR_DELETE

    protected static final java.lang.String STATEMENT_SELECT_ROWS_FOR_DELETE

See Also:
  Constant Field Values

### STATEMENT_SELECT_ROWID

    protected static final java.lang.String STATEMENT_SELECT_ROWID

See Also:
  Constant Field Values

### STATEMENT_SELECT_PARAMETER

    protected static final java.lang.String STATEMENT_SELECT_PARAMETER

See Also:
  Constant Field Values

### STATEMENT_SELECT_DEFERRED_UPDATE_ROWS

    protected static final java.lang.String STATEMENT_SELECT_DEFERRED_UPDATE_ROWS

See Also:
  Constant Field Values

### STATEMENT_INSERT_SELF_ROW

    protected static final java.lang.String STATEMENT_INSERT_SELF_ROW

See Also:
  Constant Field Values

### STATEMENT_INSERT_MAP_ROWS

    protected static final java.lang.String STATEMENT_INSERT_MAP_ROWS

See Also:
  Constant Field Values

### STATEMENT_INSERT_DEFERRED_UPDATE_ROW

    protected static final java.lang.String STATEMENT_INSERT_DEFERRED_UPDATE_ROW

See Also:
  Constant Field Values

### STATEMENT_UPDATE_SELF_ROW

    protected static final java.lang.String STATEMENT_UPDATE_SELF_ROW

See Also:
  Constant Field Values

### STATEMENT_DELETE_SELF_ROW

    protected static final java.lang.String STATEMENT_DELETE_SELF_ROW

See Also:
  Constant Field Values

### STATEMENT_DELETE_ALL_BY_LEFT

    protected static final java.lang.String STATEMENT_DELETE_ALL_BY_LEFT

See Also:
  Constant Field Values

### STATEMENT_DELETE_BY_ROWID

    protected static final java.lang.String STATEMENT_DELETE_BY_ROWID

See Also:
  Constant Field Values

### STATEMENT_DELETE_DEFERRED_UPDATE_ROW

    protected static final java.lang.String STATEMENT_DELETE_DEFERRED_UPDATE_ROW

See Also:
  Constant Field Values

### STATEMENT_PROMOTE_DESCENDANTS

    protected static final java.lang.String STATEMENT_PROMOTE_DESCENDANTS

See Also:
  Constant Field Values

### STATEMENT_PROMOTE_ANCESTORS

    protected static final java.lang.String STATEMENT_PROMOTE_ANCESTORS

See Also:
  Constant Field Values

### STATEMENT_PROMOTE_ADD_DESCENDANTS

    protected static final java.lang.String STATEMENT_PROMOTE_ADD_DESCENDANTS

See Also:
  Constant Field Values

### STATEMENT_CHECK_AT_LEVEL

    protected static final java.lang.String STATEMENT_CHECK_AT_LEVEL

See Also:
  Constant Field Values

### STATEMENT_CYCLE_CHECK

    protected static final java.lang.String STATEMENT_CYCLE_CHECK

See Also:
  Constant Field Values

### STATEMENT_LOCK_PARAMETER

    protected static final java.lang.String STATEMENT_LOCK_PARAMETER

See Also:
  Constant Field Values

### STATEMENT_SHOW_MAP

    protected static final java.lang.String STATEMENT_SHOW_MAP

See Also:
  Constant Field Values

### STATEMENT_FOLDERS_WITH_MANY_PARENTS

    protected static final java.lang.String STATEMENT_FOLDERS_WITH_MANY_PARENTS

See Also:
  Constant Field Values

### STATEMENT_COUNT_OF_DIRECT_CHILDREN

    protected static final java.lang.String STATEMENT_COUNT_OF_DIRECT_CHILDREN

See Also:
  Constant Field Values

### STATEMENT_GET_DIRECT_PARENTS

    protected static final java.lang.String STATEMENT_GET_DIRECT_PARENTS

See Also:
  Constant Field Values

### MAP_LEVEL_MAIN

    protected static final int MAP_LEVEL_MAIN

See Also:
  Constant Field Values

### m_Service

    protected S_LibraryService m_Service

  Description copied from class: `FolderIndexService`
  The parent library service

  (Unpublished)

### m_UpdateMode

    protected int m_UpdateMode

  Description copied from class: `FolderIndexService`
  The update mode for this service

  (Unpublished)

### m_MaxLevel

    protected int m_MaxLevel

  Description copied from class: `FolderIndexService`
  The maximum level.

  (Unpublished)

### m_CreationDeferred

    protected boolean m_CreationDeferred

  Description copied from class: `FolderIndexService`
  Indicates whether or not the creation of the index has been deferred and has not yet completed.

  (Unpublished)

### m_UseExistsClause

    protected boolean m_UseExistsClause

  Description copied from class: `FolderIndexService`
  Should FRQ's use an "exists" clause?

  (Unpublished)

### m_FolderIndexPropertyBundleId

    protected java.lang.Long m_FolderIndexPropertyBundleId

  Description copied from class: `FolderIndexService`
  The ID of the Folder Index Properties PropertyBundle

  (Unpublished)

### m_FolderIndexPropertyBundleClassId

    protected java.lang.Long m_FolderIndexPropertyBundleClassId

  Description copied from class: `FolderIndexService`
  The Class ID of the Folder Index Properties PropertyBundle

  (Unpublished)

Constructor Detail

### FolderIndexService

    protected FolderIndexService(S_LibraryService service)
                          throws IfsException

  Construct a FolderIndexService.

  Parameters:
    `service` - the requesting library service
  Throws:
    `IfsException` - if operation fails.

Method Detail

### init

    protected void init()
                 throws IfsException

  Description copied from class: `FolderIndexService`
  Initialize this subservice. This will throw if the supporting database table doesnot exist.

  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### dispose

    public void dispose()
                 throws IfsException

  Description copied from class: `FolderIndexService`
  Terminate this subservice. This method is required by the SubService interface; it currently does nothing.

  Specified by:
    `dispose` in interface `SubService`
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### getMaxLevel

    public int getMaxLevel(S_LibrarySession sess)
                    throws IfsException

  Throws:
    `IfsException`

### registerNewFolder

    protected void registerNewFolder(S_LibrarySession sess,
                                     long id)
                              throws IfsException

  Throws:
    `IfsException`

### registerNewFolder

    protected void registerNewFolder(S_LibrarySession sess,
                                     long id,
                                     int level)
                              throws IfsException

  Throws:
    `IfsException`

### registerNewFolderNow

    protected void registerNewFolderNow(S_LibrarySession sess,
                                        long id,
                                        int level)
                                 throws IfsException

  Throws:
    `IfsException`

### unregisterFreedFolder

    protected void unregisterFreedFolder(S_LibrarySession sess,
                                         long id)
                                  throws IfsException

  Throws:
    `IfsException`

### unregisterFreedFolderNow

    protected void unregisterFreedFolderNow(S_LibrarySession sess,
                                            long id)
                                     throws IfsException

  Throws:
    `IfsException`

### addToFolder

    protected void addToFolder(S_LibrarySession sess,
                               long parentid,
                               long childid)
                        throws IfsException

  Throws:
    `IfsException`

### addToFolderNow

    protected void addToFolderNow(S_LibrarySession sess,
                                  long parentid,
                                  long childid)
                           throws IfsException

  Throws:
    `IfsException`

### removeFromFolder

    protected void removeFromFolder(S_LibrarySession sess,
                                    long parentid,
                                    long childid)
                             throws IfsException

  Throws:
    `IfsException`

### removeFromFolderNow

    protected void removeFromFolderNow(S_LibrarySession sess,
                                       long parentid,
                                       long childid)
                                throws IfsException

  Throws:
    `IfsException`

### getFoldersNeedingPromotion

    protected java.lang.Long[] getFoldersNeedingPromotion(S_LibrarySession sess,
                                                          int level,
                                                          int maxParentsThreshold,
                                                          int maxChildrenThreshold)
                                                   throws IfsException

  Description copied from class: `FolderIndexService`
  Returns array of Long objects that hold the id of the folders at the current level that need promotion, in order to avoid explosion of rows in the odmz_folderindex because of multiply linked folders. (folder tree shaped as hour glass)

  Parameters:
    `sess` - handle to the session
    `level` - current level
  Returns:
    array of folder Ids
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### promoteFolder

    protected void promoteFolder(S_LibrarySession sess,
                                 long folderId,
                                 int newLevel)
                          throws IfsException

  Throws:
    `IfsException`

### promoteFolderNow

    protected void promoteFolderNow(S_LibrarySession sess,
                                    long folderId,
                                    int newLevel)
                             throws IfsException

  Throws:
    `IfsException`

### getFrqClause

    protected java.lang.String getFrqClause(S_LibrarySession sess,
                                            long topFolderId,
                                            java.lang.String poAlias,
                                            java.lang.String relView)
                                     throws IfsException

  Throws:
    `IfsException`

### getFrqExistsClause

    protected java.lang.String getFrqExistsClause(S_LibrarySession sess,
                                                  long topFolderId,
                                                  java.lang.String poAlias,
                                                  java.lang.String relView)
                                           throws IfsException

  Throws:
    `IfsException`

### getFrqInClause

    protected java.lang.String getFrqInClause(S_LibrarySession sess,
                                              long topFolderId,
                                              java.lang.String poAlias,
                                              java.lang.String relView)
                                       throws IfsException

  Throws:
    `IfsException`

### isCreationDeferred

    protected boolean isCreationDeferred(S_LibrarySession sess)
                                  throws IfsException

  Throws:
    `IfsException`

### initializeTables

    protected void initializeTables(S_LibrarySession sess,
                                    int maxLevels)
                             throws IfsException

  Throws:
    `IfsException`

### createInitialSelfRows

    protected void createInitialSelfRows(S_LibrarySession sess)
                                  throws IfsException

  Throws:
    `IfsException`

### createInitialDeferredEntries

    protected void createInitialDeferredEntries(S_LibrarySession sess)
                                         throws IfsException

  Throws:
    `IfsException`

### resetFolderIndex

    protected int resetFolderIndex(S_LibrarySession sess)
                            throws IfsException

  Throws:
    `IfsException`

### truncateTables

    protected void truncateTables(S_LibrarySession sess)
                           throws IfsException

  Throws:
    `IfsException`

### completeIndexCreation

    protected void completeIndexCreation(S_LibrarySession sess,
                                         boolean creationDeferred)
                                  throws IfsException

  Throws:
    `IfsException`

### changeUpdateMode

    protected void changeUpdateMode(S_LibrarySession sess,
                                    int newMode)
                             throws IfsException

  Throws:
    `IfsException`

### deferOperation

    protected boolean deferOperation(S_LibrarySession sess)
                              throws IfsException

  Throws:
    `IfsException`

### createDeferredUpdate

    protected void createDeferredUpdate(S_LibrarySession sess,
                                        int operationType,
                                        long leftId,
                                        long rightId,
                                        int level)
                                 throws IfsException

  Throws:
    `IfsException`

### postEvent

    protected void postEvent(S_LibrarySession sess)
                      throws IfsException

  Throws:
    `IfsException`

### getFolderIndexPropertyBundleId

    protected java.lang.Long getFolderIndexPropertyBundleId(S_LibrarySession sess)
                                                     throws IfsException

  Throws:
    `IfsException`

### getFolderIndexPropertyBundleClassId

    protected java.lang.Long getFolderIndexPropertyBundleClassId(S_LibrarySession sess)
                                                          throws IfsException

  Throws:
    `IfsException`

### applyDeferredUpdate

    protected void applyDeferredUpdate(S_LibrarySession sess,
                                       FolderIndexDeferredUpdate fidu)
                                throws IfsException

  Throws:
    `IfsException`

### breakCycle

    protected void breakCycle(S_LibrarySession sess,
                              long leftId,
                              long rightId)
                       throws IfsException

  Throws:
    `IfsException`

### deleteDeferredUpdate

    protected void deleteDeferredUpdate(S_LibrarySession sess,
                                        long id)
                                 throws IfsException

  Throws:
    `IfsException`

### selectDeferredUpdates

    protected java.util.Vector selectDeferredUpdates(S_LibrarySession sess,
                                                     int maxItems)
                                              throws IfsException

  Throws:
    `IfsException`

### setUpdateMode

    protected void setUpdateMode(LibraryConnection lc,
                                 java.sql.Connection conn,
                                 int updateMode)
                          throws IfsException

  Throws:
    `IfsException`

### getFrqExistsClause

    protected java.lang.String getFrqExistsClause(long topFolderId,
                                                  int topMapLevel,
                                                  int bottomMapLevel,
                                                  java.lang.String poAlias,
                                                  java.lang.String relView)

### getFrqInClause

    protected java.lang.String getFrqInClause(long topFolderId,
                                              int topMapLevel,
                                              int bottomMapLevel,
                                              java.lang.String relView)

### isCycleCheckViolation

    protected boolean isCycleCheckViolation(S_LibrarySession sess,
                                            LibraryConnection lc,
                                            java.sql.Connection conn,
                                            long parentid,
                                            long childid,
                                            int parentMapLevel,
                                            int childMapLevel)
                                     throws IfsException

  Throws:
    `IfsException`

### determineMapLevel

    protected int determineMapLevel(LibraryConnection lc,
                                    java.sql.Connection conn,
                                    int maxLevel,
                                    long folderId)
                             throws IfsException

  Throws:
    `IfsException`

### isFolderAtMaplevel

    protected boolean isFolderAtMaplevel(LibraryConnection lc,
                                         java.sql.Connection conn,
                                         long folderId,
                                         int maplevel)
                                  throws IfsException

  Throws:
    `IfsException`

### createMapSelfRow

    protected void createMapSelfRow(S_LibrarySession sess,
                                    LibraryConnection lc,
                                    java.sql.Connection conn,
                                    long id,
                                    long leftSource,
                                    int maplevel)
                             throws IfsException

  Throws:
    `IfsException`

### updateMapSelfRow

    protected void updateMapSelfRow(S_LibrarySession sess,
                                    LibraryConnection lc,
                                    java.sql.Connection conn,
                                    long id,
                                    long tempvalue,
                                    int maplevel)
                             throws IfsException

  Throws:
    `IfsException`

### deleteMapSelfRow

    protected void deleteMapSelfRow(S_LibrarySession sess,
                                    LibraryConnection lc,
                                    java.sql.Connection conn,
                                    long id,
                                    int maplevel)
                             throws IfsException

  Throws:
    `IfsException`

### insertReferences

    protected void insertReferences(S_LibrarySession sess,
                                    LibraryConnection lc,
                                    java.sql.Connection conn,
                                    long parentid,
                                    long childid,
                                    int maplevel)
                             throws IfsException

  Throws:
    `IfsException`

### removeReferences

    protected void removeReferences(S_LibrarySession sess,
                                    LibraryConnection lc,
                                    java.sql.Connection conn,
                                    long parentid,
                                    long childid,
                                    int maplevel)
                             throws IfsException

  Throws:
    `IfsException`

### promoteFolder

    protected void promoteFolder(S_LibrarySession sess,
                                 LibraryConnection lc,
                                 java.sql.Connection conn,
                                 int maxLevel,
                                 long folderId,
                                 int newLevel)
                          throws java.lang.Exception

  Throws:
    `java.lang.Exception`

### promoteFolderOneLevel

    protected void promoteFolderOneLevel(S_LibrarySession sess,
                                         LibraryConnection lc,
                                         java.sql.Connection conn,
                                         java.util.HashMap promotedMap,
                                         long folderId,
                                         int currentLevel)
                                  throws IfsException

  Throws:
    `IfsException`

### promoteSingleFolderOneLevel

    protected void promoteSingleFolderOneLevel(S_LibrarySession sess,
                                               LibraryConnection lc,
                                               java.sql.Connection conn,
                                               long folderId,
                                               int currentLevel)
                                        throws IfsException

  Throws:
    `IfsException`

### setMaxLevel

    protected void setMaxLevel(LibraryConnection lc,
                               java.sql.Connection conn,
                               int maxLevel)
                        throws IfsException

  Throws:
    `IfsException`

### getFolderIndexLock

    protected int getFolderIndexLock(LibraryConnection lc,
                                     java.sql.Connection conn)
                              throws IfsException

  Throws:
    `IfsException`

### getMaxLevel

    protected int getMaxLevel(LibraryConnection lc,
                              java.sql.Connection conn)
                       throws IfsException

  Throws:
    `IfsException`

### getMaxLevel

    protected int getMaxLevel(LibraryConnection lc,
                              java.sql.Connection conn,
                              boolean shouldLock)
                       throws IfsException

  Throws:
    `IfsException`

### verifyValidLevel

    protected void verifyValidLevel(int level,
                                    int maxLevel)
                             throws java.lang.Exception

  Throws:
    `java.lang.Exception`

### isValidLevel

    protected boolean isValidLevel(int level,
                                   int maxLevel)

### isIndexPartiallyCreated

    protected boolean isIndexPartiallyCreated(LibraryConnection lc,
                                              java.sql.Connection conn)
                                       throws java.lang.Exception

  Throws:
    `java.lang.Exception`

### getUpdateMode

    protected int getUpdateMode(LibraryConnection lc,
                                java.sql.Connection conn)
                         throws IfsException

  Throws:
    `IfsException`

### isCreationDeferred

    protected boolean isCreationDeferred(LibraryConnection lc,
                                         java.sql.Connection conn)
                                  throws IfsException

  Throws:
    `IfsException`

### insertMapParameterRow

    protected void insertMapParameterRow(LibraryConnection lc,
                                         java.sql.Connection conn,
                                         long key,
                                         long value)
                                  throws IfsException

  Throws:
    `IfsException`

### deleteMapParameterRow

    protected void deleteMapParameterRow(LibraryConnection lc,
                                         java.sql.Connection conn,
                                         long key)
                                  throws IfsException

  Throws:
    `IfsException`

### getMapParameterRow

    protected int getMapParameterRow(LibraryConnection lc,
                                     java.sql.Connection conn,
                                     int paramKey,
                                     boolean shouldLock)
                              throws IfsException

  Throws:
    `IfsException`

### getPreparedStatement

    protected java.sql.PreparedStatement getPreparedStatement(LibraryConnection lc,
                                                              java.sql.Connection conn,
                                                              java.lang.String key)

### constructPreparedStatement

    protected java.sql.PreparedStatement constructPreparedStatement(LibraryConnection lc,
                                                                    java.sql.Connection conn,
                                                                    java.lang.String key,
                                                                    java.lang.String stmt)
                                                             throws java.sql.SQLException

  Throws:
    `java.sql.SQLException`

### getFoldersWithParentCountAboveThreshold

    protected java.util.Vector getFoldersWithParentCountAboveThreshold(S_LibrarySession sess,
                                                                       int level,
                                                                       int parentThreshhold)
                                                                throws IfsException

  Description copied from class: `FolderIndexService`
  Returns Vector of folders whose direct parent count is greater than the max parent threshold.

  Parameters:
    `sess` - handle to the session
    `level` - current level
    `parentThreshhold` - parent count threshhold
  Returns:
    vector of folders that meet the criterion
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### isChildCountAboveThreshold

    protected boolean isChildCountAboveThreshold(S_LibrarySession sess,
                                                 java.lang.Long folderId,
                                                 int childCountThreshold)
                                          throws IfsException

  Description copied from class: `FolderIndexService`
  Returns true if the given folder has more children than the threshold.

  Parameters:
    `sess` - library session
    `folderId` - id of the folder
    `childCountThreshold` - child count threshhold
  Returns:
    true if folder has more direct children than the threshold
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### getDirectParents

    protected java.util.HashMap getDirectParents(S_LibrarySession sess,
                                                 int level,
                                                 java.util.Vector folderVector)
                                          throws IfsException

  Description copied from class: `FolderIndexService`
  Returns the direct parents of all the folders that are in the given vector.

  Parameters:
    `sess` - handle to library session
    `level` - the current level
    `folderVector` - vector of folders
  Returns:
    HashMap of parent folders.
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

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