org.fcrepo.server.storage
Class GSearchDOManager

java.lang.Object
  extended by org.fcrepo.server.Parameterized
      extended by org.fcrepo.server.Pluggable
          extended by org.fcrepo.server.Module
              extended by org.fcrepo.server.storage.DefaultDOManager
                  extended by org.fcrepo.server.storage.GSearchDOManager
All Implemented Interfaces:
Constants, DOManager, RepositoryReader

public class GSearchDOManager
extends DefaultDOManager

DefaultDOManager extension that updates a GSearch (Fedora Generic Search) service as object changes are committed.

To use, simply change fedora.fcfg, replacing "DefaultDOManager" with "GSearchDOManager", and add the following xml param elements:

Required:

Optional (only needed if basic auth is required for GSearch REST access):

Author:
Chris Wilper

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.fcrepo.common.Constants
Constants.FedoraHome
 
Field Summary
static String GSEARCH_PASSWORD
          Optional param: Password to use for GSearch authentication.
static String GSEARCH_REST_URL
          Required param: URL of GSearch REST interface.
static String GSEARCH_USERNAME
          Optional param: User to authenticate to GSearch as.
 
Fields inherited from class org.fcrepo.server.storage.DefaultDOManager
m_connection, m_connectionPool, m_contentManager, m_fieldSearch, m_management, m_permanentStore, m_pidGenerator, m_resourceIndex, m_retainPIDs, m_storagePool, m_translator, m_validator
 
Fields inherited from interface org.fcrepo.common.Constants
ACCESS, ACTION, API, ATOM_APIM1_0, ATOM_ZIP1_1, ATOM1_1, AUDIT, AUDIT1_0, BATCH_MODIFY, BATCH_MODIFY1_1, BE_SECURITY, BE_SECURITY1_0, BINDING_SPEC, DATASTREAM, DC, DISSEMINATOR, DS_COMPOSITE_MODEL, DS_COMPOSITE_MODEL1_0, DS_INPUT_SPEC1_0, DS_INPUT_SPEC1_1, ENVIRONMENT, FCFG, FEDORA, FEDORA_APP_CONTEXT_NAME, FEDORA_DEFAULT_APP_CONTEXT, FEDORA_HOME, FOXML, FOXML1_0, FOXML1_0_LEGACY, FOXML1_1, HTTP_REQUEST, MANAGEMENT, METHOD_MAP, METS, METS_EXT, METS_EXT1_0, METS_EXT1_0_LEGACY, METS_EXT1_1, MODEL, MULGARA, OAI_DC, OAI_DC2_0, OAI_FRIENDS, OAI_FRIENDS2_0, OAI_IDENTIFIER, OAI_IDENTIFIER2_0, OAI_PMH, OAI_PMH2_0, OAI_PROV, OAI_PROV2_0, OBJ_DATASTREAMS1_0, OBJ_HISTORY1_0, OBJ_ITEMS1_0, OBJ_METHODS1_0, OBJ_PROFILE1_0, OBJ_VALIDATION1_0, OBJECT, OLD_XLINK, PID_LIST1_0, RDF, RDF_XSD, RECOVERY, RELS_EXT, RELS_EXT1_0, RELS_INT1_0, REPO_DESC1_0, RESOURCE, SDEF, SDEF_METHOD_MAP1_0, SDEP, SDEP_METHOD_MAP1_0, SDEP_METHOD_MAP1_1, SERVICE_PROFILE, SOAP, SOAP_ENC, SUBJECT, TYPES, VIEW, WSDL, WSDL_HTTP, WSDL_MIME, XACML_POLICY, XACML_POLICY1_0, XLINK, XML_XSD, XMLNS, XSI
 
Constructor Summary
GSearchDOManager(Map moduleParameters, Server server, String role)
          Delegates construction to the superclass.
 
Method Summary
 void doCommit(boolean cachedObjectRequired, Context context, DigitalObject obj, String logMessage, boolean remove)
          Commits the changes to the given object as usual, then attempts to propagate the change to the GSearch service.
 void postInitModule()
          Performs superclass post-initialization, then completes initialization using GSearch-specific parameters.
 
Methods inherited from class org.fcrepo.server.storage.DefaultDOManager
findObjects, getConnectionPool, getDefaultExportFormat, getDOValidator, getIngestWriter, getNextPID, getReader, getRepositoryHash, getRequiredModuleRoles, getServiceDefinitionReader, getServiceDeploymentReader, getStorageCharacterEncoding, getStorageFormat, getTranslator, getWriter, initModule, initRetainPID, listObjectPIDs, lookupDeploymentForCModel, objectExists, releaseWriter, reservePIDs, resumeFindObjects, shutdownModule, toSql
 
Methods inherited from class org.fcrepo.server.Module
getRole, getServer
 
Methods inherited from class org.fcrepo.server.Pluggable
getHelp, getOptionalParameters, getParameterHelp, getRequiredParameters
 
Methods inherited from class org.fcrepo.server.Parameterized
getParameter, getParameter, getParameter, getParameterList, getParameters, getParameters, parameterNames, setParameter, setParameters, setParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

GSEARCH_REST_URL

public static final String GSEARCH_REST_URL
Required param: URL of GSearch REST interface.

See Also:
Constant Field Values

GSEARCH_USERNAME

public static final String GSEARCH_USERNAME
Optional param: User to authenticate to GSearch as.

See Also:
Constant Field Values

GSEARCH_PASSWORD

public static final String GSEARCH_PASSWORD
Optional param: Password to use for GSearch authentication.

See Also:
Constant Field Values
Constructor Detail

GSearchDOManager

public GSearchDOManager(Map moduleParameters,
                        Server server,
                        String role)
                 throws ModuleInitializationException
Delegates construction to the superclass.

Throws:
ModuleInitializationException
Method Detail

postInitModule

public void postInitModule()
                    throws ModuleInitializationException
Performs superclass post-initialization, then completes initialization using GSearch-specific parameters.

Overrides:
postInitModule in class DefaultDOManager
Throws:
ModuleInitializationException - If initialization values are invalid or initialization fails for some other reason.

doCommit

public void doCommit(boolean cachedObjectRequired,
                     Context context,
                     DigitalObject obj,
                     String logMessage,
                     boolean remove)
              throws ServerException
Commits the changes to the given object as usual, then attempts to propagate the change to the GSearch service.

Overrides:
doCommit in class DefaultDOManager
Throws:
ServerException


Copyright © 2011 DuraSpace. All Rights Reserved.