fedora.server.utilities.rebuild
Interface Rebuilder

All Known Implementing Classes:
ResourceIndexRebuilder, SQLRebuilder

public interface Rebuilder

Interface for a class that rebuilds some aspect of the repository. It is expected that clients of this interface will first call init, then start, then addObject (possibly a series of times), then finish.


Method Summary
 void addObject(DigitalObject object)
          Add the data of interest for the given object.
 void finish()
          Free up any system resources associated with rebuilding.
 java.lang.String getAction()
          Get a short phrase describing what the user can do with this rebuilder.
 java.util.Map init(java.io.File serverBaseDir, ServerConfiguration serverConfig)
          Initialize the rebuilder, given the server configuration.
 boolean shouldStopServer()
          Returns true is the server _must_ be shut down for this rebuilder to safely operate.
 void start(java.util.Map options)
          Validate the provided options and perform any necessary startup tasks.
 

Method Detail

getAction

java.lang.String getAction()
Get a short phrase describing what the user can do with this rebuilder.


init

java.util.Map init(java.io.File serverBaseDir,
                   ServerConfiguration serverConfig)
                   throws java.lang.Exception
Initialize the rebuilder, given the server configuration.

Throws:
java.lang.Exception

shouldStopServer

boolean shouldStopServer()
Returns true is the server _must_ be shut down for this rebuilder to safely operate.


start

void start(java.util.Map options)
           throws java.lang.Exception
Validate the provided options and perform any necessary startup tasks.

Throws:
java.lang.Exception

addObject

void addObject(DigitalObject object)
               throws java.lang.Exception
Add the data of interest for the given object.

Throws:
java.lang.Exception

finish

void finish()
            throws java.lang.Exception
Free up any system resources associated with rebuilding.

Throws:
java.lang.Exception