Package energy.eddie.aiida.repositories
Interface PermissionRepository
- All Superinterfaces:
org.springframework.data.repository.CrudRepository<Permission,,UUID> org.springframework.data.jpa.repository.JpaRepository<Permission,,UUID> org.springframework.data.repository.ListCrudRepository<Permission,,UUID> org.springframework.data.repository.ListPagingAndSortingRepository<Permission,,UUID> org.springframework.data.repository.PagingAndSortingRepository<Permission,,UUID> org.springframework.data.repository.query.QueryByExampleExecutor<Permission>,org.springframework.data.repository.Repository<Permission,UUID>
public interface PermissionRepository
extends org.springframework.data.jpa.repository.JpaRepository<Permission,UUID>
-
Method Summary
Modifier and TypeMethodDescriptionbooleanexistsByUserIdAndDataNeedTypeAndContextAndMeterIdAndStatusIn(UUID userId, String dataNeedType, AiidaContext context, String meterId, Set<PermissionStatus> statuses) findByStatusIn(Set<PermissionStatus> statuses) findByUserIdOrderByGrantTimeDesc(UUID userId) findInboundByUserIdAndStatus(UUID userId, Set<PermissionStatus> statuses) findOutboundByDataSourceIdAndStatus(UUID dataSourceId, Set<PermissionStatus> statuses) Methods inherited from interface org.springframework.data.repository.CrudRepository
count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findById, saveMethods inherited from interface org.springframework.data.jpa.repository.JpaRepository
deleteAllByIdInBatch, deleteAllInBatch, deleteAllInBatch, deleteInBatch, findAll, findAll, flush, getById, getOne, getReferenceById, saveAllAndFlush, saveAndFlushMethods inherited from interface org.springframework.data.repository.ListCrudRepository
findAll, findAllById, saveAllMethods inherited from interface org.springframework.data.repository.ListPagingAndSortingRepository
findAllMethods inherited from interface org.springframework.data.repository.PagingAndSortingRepository
findAllMethods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor
count, exists, findAll, findBy, findOne
-
Method Details
-
findByUserIdOrderByGrantTimeDesc
-
findByStatusIn
-
findOutboundByDataSourceIdAndStatus
@Query("SELECT p\nFROM Permission p\nWHERE p.dataSource.id = :dataSourceId\n AND p.dataNeed.type = energy.eddie.dataneeds.needs.aiida.OutboundAiidaDataNeed.DISCRIMINATOR_VALUE\n AND p.status IN (:statuses)\n") List<Permission> findOutboundByDataSourceIdAndStatus(UUID dataSourceId, Set<PermissionStatus> statuses) -
findInboundByUserIdAndStatus
@Query("SELECT p\nFROM Permission p\nWHERE p.userId = :userId\n AND p.dataNeed.type = energy.eddie.dataneeds.needs.aiida.InboundAiidaDataNeed.DISCRIMINATOR_VALUE\n AND p.dataSource IS NOT NULL\n AND p.status IN (:statuses)\nORDER BY p.grantTime DESC\n") List<Permission> findInboundByUserIdAndStatus(UUID userId, Set<PermissionStatus> statuses) -
existsByUserIdAndDataNeedTypeAndContextAndMeterIdAndStatusIn
@Query("SELECT CASE WHEN COUNT(p) > 0 THEN true ELSE false END\nFROM Permission p\nJOIN p.dataNeed dn\nJOIN dn.contexts c\nWHERE p.userId = :userId\n AND p.meterId = :meterId\n AND p.status IN (:statuses)\n AND dn.type = :dataNeedType\n AND c = :context\n") boolean existsByUserIdAndDataNeedTypeAndContextAndMeterIdAndStatusIn(UUID userId, String dataNeedType, AiidaContext context, String meterId, Set<PermissionStatus> statuses)
-