com.atlassian.jira.sharing.index
Class DefaultSharedEntityIndexManager

java.lang.Object
  extended by com.atlassian.jira.sharing.index.DefaultSharedEntityIndexManager
All Implemented Interfaces:
SharedEntityIndexManager, Sized, IndexLifecycleManager, Shutdown

public class DefaultSharedEntityIndexManager
extends java.lang.Object
implements SharedEntityIndexManager

Default IndexManager for shared entities

Since:
v3.13

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.atlassian.jira.util.index.IndexLifecycleManager
IndexLifecycleManager.Composite
 
Constructor Summary
DefaultSharedEntityIndexManager(SharedEntityIndexer indexer, SearchRequestManager searchRequestManager, PortalPageManager portalPageManager)
           
 
Method Summary
 long activate(Context context)
          Activates search indexes.
 void deactivate()
          De-activates indexing (as happens from the admin page) and removes index directories.
 java.util.Collection<java.lang.String> getAllIndexPaths()
           
 boolean isEmpty()
           
 boolean isIndexingEnabled()
           
 long optimize()
          Optimize the underlying indexes.
 long reIndexAll()
           
 long reIndexAll(Context context)
          Reindex everything.
 void shutdown()
          Shuts down the indexing manager and closes its resources (if any).
 int size()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DefaultSharedEntityIndexManager

public DefaultSharedEntityIndexManager(SharedEntityIndexer indexer,
                                       SearchRequestManager searchRequestManager,
                                       PortalPageManager portalPageManager)
Method Detail

reIndexAll

public long reIndexAll(Context context)
Description copied from interface: IndexLifecycleManager
Reindex everything.

Specified by:
reIndexAll in interface IndexLifecycleManager
Parameters:
context - used to report progress back to the user or to the logs. Must not be null.
Returns:
Reindex time in ms.

reIndexAll

public long reIndexAll()
                throws IndexException
Throws:
IndexException

optimize

public long optimize()
              throws IndexException
Description copied from interface: IndexLifecycleManager
Optimize the underlying indexes. Make the subsequent searching more efficient.

Specified by:
optimize in interface IndexLifecycleManager
Returns:
the amount of time in millis this method took (because you are too lazy to time me), 0 if indexing is not enabled or -1 if we cannot obtain the index writeLock.
Throws:
IndexException - if the indexes are seriously in trouble

shutdown

public void shutdown()
Description copied from interface: IndexLifecycleManager
Shuts down the indexing manager and closes its resources (if any).

Specified by:
shutdown in interface IndexLifecycleManager
Specified by:
shutdown in interface Shutdown

activate

public long activate(Context context)
Description copied from interface: IndexLifecycleManager
Activates search indexes.

Specified by:
activate in interface IndexLifecycleManager
Parameters:
context - used to report progress back to the user or to the logs. Must not be null.
Returns:
Reindex time in ms

deactivate

public void deactivate()
Description copied from interface: IndexLifecycleManager
De-activates indexing (as happens from the admin page) and removes index directories.

Specified by:
deactivate in interface IndexLifecycleManager

isIndexingEnabled

public boolean isIndexingEnabled()
Specified by:
isIndexingEnabled in interface IndexLifecycleManager
Returns:
whether this index is enabled or true if all sub indexes are enabled

getAllIndexPaths

public java.util.Collection<java.lang.String> getAllIndexPaths()
Specified by:
getAllIndexPaths in interface IndexLifecycleManager
Returns:
a collection of Strings that map to all paths that contain Lucene indexes. Must not be null.

size

public int size()
Specified by:
size in interface Sized
Specified by:
size in interface IndexLifecycleManager
Returns:
how many Entities will be re-indexed by IndexLifecycleManager.reIndexAll(Context)

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Sized

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2002-2010 Atlassian. All Rights Reserved.