Search in sources :

Example 11 with Authorisation

use of nikita.webapp.security.Authorisation in project nikita-noark5-core by HiOA-ABI.

the class ElectronicSignatureVerifiedService method handleUpdate.

/**
 * Update a ElectronicSignatureVerified identified by its systemId
 * <p>
 * Copy the values you are allowed to change, code and description
 *
 * @param systemId                    The systemId of the
 *                                    electronicSignatureVerified
 *                                    object you wish to update
 * @param electronicSignatureVerified The updated
 *                                    electronicSignatureVerified
 *                                    object. Note the values you
 *                                    are allowed to change are
 *                                    copied from this object. This
 *                                    object is not persisted.
 * @return the updated electronicSignatureVerified
 */
@Override
public MetadataHateoas handleUpdate(String systemId, Long version, ElectronicSignatureVerified electronicSignatureVerified) {
    ElectronicSignatureVerified existingElectronicSignatureVerified = getElectronicSignatureVerifiedOrThrow(systemId);
    // Copy all the values you are allowed to copy ....
    if (null != existingElectronicSignatureVerified.getCode()) {
        existingElectronicSignatureVerified.setCode(existingElectronicSignatureVerified.getCode());
    }
    if (null != existingElectronicSignatureVerified.getDescription()) {
        existingElectronicSignatureVerified.setDescription(existingElectronicSignatureVerified.getDescription());
    }
    // Note this can potentially result in a NoarkConcurrencyException
    // exception
    existingElectronicSignatureVerified.setVersion(version);
    MetadataHateoas electronicSignatureVerifiedHateoas = new MetadataHateoas(electronicSignatureVerifiedRepository.save(existingElectronicSignatureVerified));
    metadataHateoasHandler.addLinks(electronicSignatureVerifiedHateoas, new Authorisation());
    applicationEventPublisher.publishEvent(new AfterNoarkEntityUpdatedEvent(this, existingElectronicSignatureVerified));
    return electronicSignatureVerifiedHateoas;
}
Also used : ElectronicSignatureVerified(nikita.common.model.noark5.v4.metadata.ElectronicSignatureVerified) Authorisation(nikita.webapp.security.Authorisation) MetadataHateoas(nikita.common.model.noark5.v4.hateoas.metadata.MetadataHateoas) AfterNoarkEntityUpdatedEvent(nikita.webapp.web.events.AfterNoarkEntityUpdatedEvent)

Example 12 with Authorisation

use of nikita.webapp.security.Authorisation in project nikita-noark5-core by HiOA-ABI.

the class FileTypeService method findByDescription.

/**
 * Retrieve all FileType that have a given description.
 * <br>
 * Note, this will be replaced by OData search.
 *
 * @param description Description of object you wish to retrieve. The
 *                    whole text, this is an exact search.
 * @return A list of FileType objects wrapped as a MetadataHateoas
 * object
 */
@Override
public MetadataHateoas findByDescription(String description) {
    MetadataHateoas metadataHateoas = new MetadataHateoas((List<INikitaEntity>) (List) fileTypeRepository.findByDescription(description), FILE_TYPE);
    metadataHateoasHandler.addLinks(metadataHateoas, new Authorisation());
    return metadataHateoas;
}
Also used : INikitaEntity(nikita.common.model.noark5.v4.interfaces.entities.INikitaEntity) Authorisation(nikita.webapp.security.Authorisation) List(java.util.List) MetadataHateoas(nikita.common.model.noark5.v4.hateoas.metadata.MetadataHateoas)

Example 13 with Authorisation

use of nikita.webapp.security.Authorisation in project nikita-noark5-core by HiOA-ABI.

the class FlowStatusService method find.

// find by systemId
/**
 * Retrieve a single FlowStatus object identified by systemId
 *
 * @param systemId systemId of the FlowStatus you wish to retrieve
 * @return single FlowStatus object wrapped as a MetadataHateoas object
 */
@Override
public MetadataHateoas find(String systemId) {
    MetadataHateoas metadataHateoas = new MetadataHateoas(flowStatusRepository.findBySystemId(systemId));
    metadataHateoasHandler.addLinks(metadataHateoas, new Authorisation());
    return metadataHateoas;
}
Also used : Authorisation(nikita.webapp.security.Authorisation) MetadataHateoas(nikita.common.model.noark5.v4.hateoas.metadata.MetadataHateoas)

Example 14 with Authorisation

use of nikita.webapp.security.Authorisation in project nikita-noark5-core by HiOA-ABI.

the class FlowStatusService method createNewFlowStatus.

// All CREATE operations
/**
 * Persists a new FlowStatus object to the database.
 *
 * @param flowStatus FlowStatus object with values set
 * @return the newly persisted FlowStatus object wrapped as a MetadataHateoas
 * object
 */
@Override
public MetadataHateoas createNewFlowStatus(FlowStatus flowStatus) {
    flowStatus.setDeleted(false);
    flowStatus.setOwnedBy(SecurityContextHolder.getContext().getAuthentication().getName());
    MetadataHateoas metadataHateoas = new MetadataHateoas(flowStatusRepository.save(flowStatus));
    metadataHateoasHandler.addLinks(metadataHateoas, new Authorisation());
    return metadataHateoas;
}
Also used : Authorisation(nikita.webapp.security.Authorisation) MetadataHateoas(nikita.common.model.noark5.v4.hateoas.metadata.MetadataHateoas)

Example 15 with Authorisation

use of nikita.webapp.security.Authorisation in project nikita-noark5-core by HiOA-ABI.

the class FlowStatusService method findAll.

// All READ operations
/**
 * Retrieve a list of all FlowStatus objects
 *
 * @return list of FlowStatus objects wrapped as a
 * MetadataHateoas object
 */
@Override
public MetadataHateoas findAll() {
    MetadataHateoas metadataHateoas = new MetadataHateoas((List<INikitaEntity>) (List) flowStatusRepository.findAll(), FLOW_STATUS);
    metadataHateoasHandler.addLinks(metadataHateoas, new Authorisation());
    return metadataHateoas;
}
Also used : INikitaEntity(nikita.common.model.noark5.v4.interfaces.entities.INikitaEntity) Authorisation(nikita.webapp.security.Authorisation) List(java.util.List) MetadataHateoas(nikita.common.model.noark5.v4.hateoas.metadata.MetadataHateoas)

Aggregations

Authorisation (nikita.webapp.security.Authorisation)212 MetadataHateoas (nikita.common.model.noark5.v4.hateoas.metadata.MetadataHateoas)121 Counted (com.codahale.metrics.annotation.Counted)98 ApiOperation (io.swagger.annotations.ApiOperation)87 ApiResponses (io.swagger.annotations.ApiResponses)87 List (java.util.List)76 INikitaEntity (nikita.common.model.noark5.v4.interfaces.entities.INikitaEntity)75 AfterNoarkEntityUpdatedEvent (nikita.webapp.web.events.AfterNoarkEntityUpdatedEvent)34 CaseFileHateoas (nikita.common.model.noark5.v4.hateoas.casehandling.CaseFileHateoas)13 NoarkEntityNotFoundException (nikita.common.util.exceptions.NoarkEntityNotFoundException)13 AfterNoarkEntityCreatedEvent (nikita.webapp.web.events.AfterNoarkEntityCreatedEvent)13 Class (nikita.common.model.noark5.v4.Class)8 Fonds (nikita.common.model.noark5.v4.Fonds)8 CaseFile (nikita.common.model.noark5.v4.casehandling.CaseFile)8 NikitaException (nikita.common.util.exceptions.NikitaException)8 DocumentDescription (nikita.common.model.noark5.v4.DocumentDescription)7 DocumentObject (nikita.common.model.noark5.v4.DocumentObject)7 ClassHateoas (nikita.common.model.noark5.v4.hateoas.ClassHateoas)7 DocumentObjectHateoas (nikita.common.model.noark5.v4.hateoas.DocumentObjectHateoas)7 FondsCreatorHateoas (nikita.common.model.noark5.v4.hateoas.FondsCreatorHateoas)7