Interface SecurableBaseImmutableService<C extends Securable>

All Superinterfaces:
BaseImmutableService<C>, BaseReadOnlyService<C>, SecurableBaseReadOnlyService<C>
All Known Subinterfaces:
ArrayDesignService, CoexpressionAnalysisService, DifferentialExpressionAnalysisService, ExperimentalDesignService, ExpressionExperimentService, FactorValueService, GeneDiffExMetaAnalysisService, ProtocolService, SecurableBaseService<C>
All Known Implementing Classes:
ArrayDesignServiceImpl, CoexpressionAnalysisServiceImpl, DifferentialExpressionAnalysisServiceImpl, ExperimentalDesignServiceImpl, ExpressionExperimentServiceImpl, FactorValueServiceImpl, GeneDiffExMetaAnalysisServiceImpl, ProtocolServiceImpl

public interface SecurableBaseImmutableService<C extends Securable> extends BaseImmutableService<C>, SecurableBaseReadOnlyService<C>
  • Method Details

    • findOrCreate

      @Secured({"GROUP_USER","AFTER_ACL_READ"}) C findOrCreate(C entity)
      Description copied from interface: BaseImmutableService
      Does a search for the entity in the persistent storage, and if not found, creates it.
      Specified by:
      findOrCreate in interface BaseImmutableService<C extends Securable>
      Parameters:
      entity - the entity to look for, and create if not found.
      Returns:
      the entity retrieved from the persistent storage, either found or created.
    • create

      @Secured("GROUP_USER") Collection<C> create(Collection<C> entities)
      Description copied from interface: BaseImmutableService
      Creates all the given entities in a persistent storage
      Specified by:
      create in interface BaseImmutableService<C extends Securable>
      Parameters:
      entities - the entities to be created.
      Returns:
      collection of objects referencing the persistent instances of given entities.
    • create

      @Secured("GROUP_USER") C create(C entity)
      Description copied from interface: BaseImmutableService
      Creates the given entity in the persistent storage.
      Specified by:
      create in interface BaseImmutableService<C extends Securable>
      Parameters:
      entity - the entity to be created.
      Returns:
      object referencing the persistent instance of the given entity.
    • remove

      @Secured("GROUP_ADMIN") void remove(Long id)
      Removes the entity with given ID from the persistent storage.

      Only administrator are allowed to remove entity by ID.

      Specified by:
      remove in interface BaseImmutableService<C extends Securable>
      Parameters:
      id - the ID of entity to be removed.
    • remove

      @Secured({"GROUP_USER","ACL_SECURABLE_EDIT"}) void remove(C entity)
      Description copied from interface: BaseImmutableService
      Removes the given entity from the persistent storage.
      Specified by:
      remove in interface BaseImmutableService<C extends Securable>
      Parameters:
      entity - the entity to be removed.
    • remove

      @Secured({"GROUP_USER","ACL_SECURABLE_COLLECTION_EDIT"}) void remove(Collection<C> entities)
      Description copied from interface: BaseImmutableService
      Removes all the given entities from persistent storage.
      Specified by:
      remove in interface BaseImmutableService<C extends Securable>
      Parameters:
      entities - the entities to be removed.