Package org.dspace.discovery.indexobject
Class MetadataFieldIndexFactoryImpl
java.lang.Object
org.dspace.discovery.indexobject.IndexFactoryImpl<IndexableMetadataField,MetadataField>
org.dspace.discovery.indexobject.MetadataFieldIndexFactoryImpl
- All Implemented Interfaces:
IndexFactory<IndexableMetadataField,,MetadataField> MetadataFieldIndexFactory
public class MetadataFieldIndexFactoryImpl
extends IndexFactoryImpl<IndexableMetadataField,MetadataField>
implements MetadataFieldIndexFactory
Factory implementation for indexing/retrieving
MetadataField items in the search core- Author:
- Maria Verdonck (Atmire) on 14/07/2020
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringprotected GroupServicestatic final Stringstatic final StringFields inherited from class org.dspace.discovery.indexobject.IndexFactoryImpl
solrSearchCore, solrServiceIndexPlugins -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.solr.common.SolrInputDocumentbuildDocument(Context context, IndexableMetadataField indexableObject) Create solr document with all the shared fields initialized.Retrieve all instances of a certain indexable object typefindIndexableObject(Context context, String id) Retrieve a single indexable object using the provided identifiergetIndexableObjects(Context context, MetadataField object) Retrieve all the indexable objects for the provided objectgetType()Return the type of the indexable objectbooleanDetermine whether the class can handle the factory implementationMethods inherited from class org.dspace.discovery.indexobject.IndexFactoryImpl
addFacetIndex, addFacetIndex, addNamedResourceTypeIndex, buildNewDocument, delete, delete, deleteAll, writeDocument, writeDocumentMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.dspace.discovery.indexobject.factory.IndexFactory
buildNewDocument, delete, delete, deleteAll, writeDocument
-
Field Details
-
SCHEMA_FIELD_NAME
- See Also:
-
ELEMENT_FIELD_NAME
- See Also:
-
QUALIFIER_FIELD_NAME
- See Also:
-
FIELD_NAME_VARIATIONS
- See Also:
-
groupService
-
-
Constructor Details
-
MetadataFieldIndexFactoryImpl
public MetadataFieldIndexFactoryImpl()
-
-
Method Details
-
buildDocument
public org.apache.solr.common.SolrInputDocument buildDocument(Context context, IndexableMetadataField indexableObject) throws SQLException, IOException Description copied from interface:IndexFactoryCreate solr document with all the shared fields initialized.- Specified by:
buildDocumentin interfaceIndexFactory<IndexableMetadataField,MetadataField> - Overrides:
buildDocumentin classIndexFactoryImpl<IndexableMetadataField,MetadataField> indexableObject- the indexableObject that we want to index- Returns:
- initialized solr document
- Throws:
SQLExceptionIOException
-
findAll
Description copied from interface:IndexFactoryRetrieve all instances of a certain indexable object type- Specified by:
findAllin interfaceIndexFactory<IndexableMetadataField,MetadataField> - Parameters:
context- DSpace context object- Returns:
- An iterator containing all the objects to be indexed for the indexable object
- Throws:
SQLException- If database error
-
getType
Description copied from interface:IndexFactoryReturn the type of the indexable object- Specified by:
getTypein interfaceIndexFactory<IndexableMetadataField,MetadataField> - Returns:
- a string containing the type
-
findIndexableObject
public Optional<IndexableMetadataField> findIndexableObject(Context context, String id) throws SQLException Description copied from interface:IndexFactoryRetrieve a single indexable object using the provided identifier- Specified by:
findIndexableObjectin interfaceIndexFactory<IndexableMetadataField,MetadataField> - Parameters:
context- DSpace context objectid- The identifier for which we want to retrieve our indexable object- Returns:
- An indexable object
- Throws:
SQLException- If database error
-
supports
Description copied from interface:IndexFactoryDetermine whether the class can handle the factory implementation- Specified by:
supportsin interfaceIndexFactory<IndexableMetadataField,MetadataField> - Parameters:
object- The object which we want to check- Returns:
- True if the factory implementation can handle the given object. False if it doesn't.
-
getIndexableObjects
Description copied from interface:IndexFactoryRetrieve all the indexable objects for the provided object- Specified by:
getIndexableObjectsin interfaceIndexFactory<IndexableMetadataField,MetadataField> - Parameters:
context- DSpace context objectobject- The object we want to retrieve our indexable objects for- Returns:
- A list of indexable objects
-