Class PersonRepositoryImpl
java.lang.Object
de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingSortingFilteringRepositoryImpl
de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl<U>
de.digitalcollections.cudami.server.backend.impl.jdbi.UniqueObjectRepositoryImpl<I>
de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.IdentifiableRepositoryImpl<E>
de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.EntityRepositoryImpl<A>
de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.agent.AgentRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>
de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.agent.PersonRepositoryImpl
- All Implemented Interfaces:
AgentRepository<de.digitalcollections.model.identifiable.entity.agent.Person>,PersonRepository,EntityRepository<de.digitalcollections.model.identifiable.entity.agent.Person>,IdentifiableRepository<de.digitalcollections.model.identifiable.entity.agent.Person>,PagingSortingFilteringRepository<de.digitalcollections.model.identifiable.entity.agent.Person>,UniqueObjectRepository<de.digitalcollections.model.identifiable.entity.agent.Person>
@Repository
public class PersonRepositoryImpl
extends AgentRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>
implements PersonRepository
-
Field Summary
FieldsFields inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.UniqueObjectRepositoryImpl
additionalReduceRowsBiConsumer, basicReduceRowsBiConsumer, fullReduceRowsBiConsumer, uniqueObjectImplClassFields inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
dbi, mappingPrefix, tableAlias, tableNameFields inherited from class de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingSortingFilteringRepositoryImpl
offsetForAlternativePaging -
Constructor Summary
ConstructorsConstructorDescriptionPersonRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, CudamiConfig cudamiConfig, IdentifierRepository identifierRepository, UrlAliasRepository urlAliasRepository, DigitalObjectRepositoryImpl digitalObjectRepositoryImpl, FamilyNameRepositoryImpl familyNameRepositoryImpl, GivenNameRepositoryImpl givenNameRepositoryImpl) -
Method Summary
Modifier and TypeMethodDescriptionde.digitalcollections.model.identifiable.entity.agent.Personcreate()protected BiConsumer<Map<UUID,de.digitalcollections.model.identifiable.entity.agent.Person>, org.jdbi.v3.core.result.RowView> For details select (only used in find one, not lists): if additional objects should be "joined" into instance, set bi function for doing this.getColumnName(String modelProperty) Set<de.digitalcollections.model.identifiable.entity.digitalobject.DigitalObject>getDigitalObjects(UUID uuidPerson) protected Stringprotected StringDo not change order! Must match order in getSqlInsertFields!!!getSqlSelectAllFields(String tableAlias, String mappingPrefix) SQL-snippet for fields to be returned for complete field request.
If already all fields are returned with reduced fields request: just return reduced field set here, otherwise add additional fields to reduced set to get all fields.protected StringgetSqlSelectReducedFields(String tableAlias, String mappingPrefix) voidsave(de.digitalcollections.model.identifiable.entity.agent.Person person) voidupdate(de.digitalcollections.model.identifiable.entity.agent.Person person) Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.agent.AgentRepositoryImpl
findDigitalObjects, findWorks, getWorksMethods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.EntityRepositoryImpl
addRelatedFileresource, findRelatedEntities, findRelatedFileResources, getAllowedOrderByFields, getByRefId, getJsonbFields, getRandom, getReturnedFieldsOnInsertUpdate, hasSplitColumn, insertUpdateCallback, isRepoForNamedEntity, save, setRelatedFileResources, update, updateMethods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.IdentifiableRepositoryImpl
addCrossTablePagingAndSorting, addRelatedEntity, createBasicReduceRowsBiConsumer, createFullReduceRowsBiConcumer, deleteByUuids, extendReducedIdentifiable, find, findByLanguageAndInitial, getByIdentifier, getLanguages, retrieveList, retrieveList, retrieveOne, setRelatedEntities, supportsCaseSensitivityForPropertyMethods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.UniqueObjectRepositoryImpl
deleteByUuid, execSelectForList, extractUuids, find, find, find, getByUuidAndFiltering, getIndex, getIndex, getSqlSelectAllFields, getSqlSelectReducedFields, getSqlSelectReducedFieldsJoins, getUniqueField, retrieveCount, retrieveOne, retrieveOne, save, sqlSelectReducedFieldsMethods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
addFiltering, addFiltering, count, count, escapeTermForJsonpath, execUpdateWithList, execUpdateWithMap, filterByLocalizedTextFields, filterBySplitField, getMappingPrefix, getTableAlias, getTableName, getTargetExpression, getWhereClause, getWhereClauses, mapFilterExpressionsToOtherTableColumnNames, retrieveNextSortIndexForParentChildren, splitToArray, splitToArrayMethods inherited from class de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingSortingFilteringRepositoryImpl
addOrderBy, addPagingAndSorting, getOrderByMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.entity.agent.AgentRepository
findDigitalObjects, findDigitalObjects, findWorks, findWorks, getDigitalObjects, getWorks, getWorksMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.entity.EntityRepository
getByRefId, setRelatedEntitiesMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.IdentifiableRepository
addRelatedEntity, addRelatedEntity, addRelatedFileresource, addRelatedFileresource, findByLanguageAndInitial, findRelatedEntities, findRelatedEntities, findRelatedFileResources, findRelatedFileResources, getByIdentifiable, getByIdentifier, getByIdentifier, getLanguages, setRelatedEntities, setRelatedFileResources, setRelatedFileResourcesMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.PagingSortingFilteringRepository
findMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.UniqueObjectRepository
count, delete, delete, deleteByUuid, deleteByUuids, getByExample, getByExampleAndFiltering, getByUuid, getByUuidAndFiltering, getRandom, save, saveOrUpdate, update
-
Field Details
-
MAPPING_PREFIX
- See Also:
-
TABLE_ALIAS
- See Also:
-
TABLE_NAME
- See Also:
-
-
Constructor Details
-
PersonRepositoryImpl
public PersonRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, CudamiConfig cudamiConfig, IdentifierRepository identifierRepository, UrlAliasRepository urlAliasRepository, DigitalObjectRepositoryImpl digitalObjectRepositoryImpl, FamilyNameRepositoryImpl familyNameRepositoryImpl, GivenNameRepositoryImpl givenNameRepositoryImpl)
-
-
Method Details
-
create
public de.digitalcollections.model.identifiable.entity.agent.Person create() throws RepositoryException- Specified by:
createin interfaceUniqueObjectRepository<de.digitalcollections.model.identifiable.entity.agent.Person>- Overrides:
createin classIdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Throws:
RepositoryException
-
createAdditionalReduceRowsBiConsumer
protected BiConsumer<Map<UUID,de.digitalcollections.model.identifiable.entity.agent.Person>, createAdditionalReduceRowsBiConsumer()org.jdbi.v3.core.result.RowView> Description copied from class:UniqueObjectRepositoryImplFor details select (only used in find one, not lists): if additional objects should be "joined" into instance, set bi function for doing this.- Overrides:
createAdditionalReduceRowsBiConsumerin classIdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Returns:
- BiConsumer function
-
getColumnName
- Overrides:
getColumnNamein classEntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Parameters:
modelProperty- name of model property passed as String, e.g. "lastModified"- Returns:
- full qualified column name as used in sql queries ("last_modified" or e.g. "w.last_modified" if prefix used in queries)
-
getDigitalObjects
public Set<de.digitalcollections.model.identifiable.entity.digitalobject.DigitalObject> getDigitalObjects(UUID uuidPerson) throws RepositoryException - Specified by:
getDigitalObjectsin interfaceAgentRepository<de.digitalcollections.model.identifiable.entity.agent.Person>- Overrides:
getDigitalObjectsin classAgentRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Throws:
RepositoryException
-
getSqlInsertFields
- Overrides:
getSqlInsertFieldsin classEntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Returns:
- SQL for field names for insert statement of
UniqueObject
-
getSqlInsertValues
Description copied from class:UniqueObjectRepositoryImplDo not change order! Must match order in getSqlInsertFields!!!- Overrides:
getSqlInsertValuesin classEntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Returns:
- SQL for value mapping for field names for insert statement of
UniqueObject
-
getSqlSelectAllFields
Description copied from class:IdentifiableRepositoryImplSQL-snippet for fields to be returned for complete field request.
If already all fields are returned with reduced fields request: just return reduced field set here, otherwise add additional fields to reduced set to get all fields.- Overrides:
getSqlSelectAllFieldsin classEntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Returns:
- SQL snippet
-
getSqlSelectAllFieldsJoins
- Overrides:
getSqlSelectAllFieldsJoinsin classUniqueObjectRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Returns:
- SQL for joined fields for complete field set from other table(s) (optional). Default: ""
-
getSqlSelectReducedFields
- Overrides:
getSqlSelectReducedFieldsin classEntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>- Returns:
- SQL for fields of reduced field set of
UniqueObject
-
getSqlUpdateFieldValues
- Overrides:
getSqlUpdateFieldValuesin classEntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.agent.Person>
-
save
public void save(de.digitalcollections.model.identifiable.entity.agent.Person person) throws RepositoryException - Specified by:
savein interfaceUniqueObjectRepository<de.digitalcollections.model.identifiable.entity.agent.Person>- Throws:
RepositoryException
-
update
public void update(de.digitalcollections.model.identifiable.entity.agent.Person person) throws RepositoryException - Specified by:
updatein interfaceUniqueObjectRepository<de.digitalcollections.model.identifiable.entity.agent.Person>- Throws:
RepositoryException
-