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) findInboundByDataSourceId(UUID dataSourceId) findInboundByUserIdAndStatus(UUID userId, Set<PermissionStatus> statuses) default List<ConnectionLimitDefault> findLimitDefaultsByUserIdAndPermissionId(UUID userId, UUID permissionId) findLimitDefaultsByUserIdAndPermissionId(UUID userId, UUID permissionId, Set<PermissionStatus> statuses, String dataNeedType, AiidaSchema dataNeedSchema) 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) -
findInboundByDataSourceId
@Query("SELECT p\nFROM Permission p\nWHERE p.dataSource.id = :dataSourceId\n AND p.dataNeed.type = energy.eddie.dataneeds.needs.aiida.InboundAiidaDataNeed.DISCRIMINATOR_VALUE\n") Optional<Permission> findInboundByDataSourceId(UUID dataSourceId) -
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) -
findLimitDefaultsByUserIdAndPermissionId
@Query("SELECT p.permissionId, p.meterId, p.minLimitKw, p.maxLimitKw\nFROM Permission p\nJOIN p.dataNeed dn\nWHERE p.userId = :userId\n AND (:permissionId IS NULL OR p.permissionId = :permissionId)\n AND p.status IN (:statuses)\n AND dn.type = :dataNeedType\n AND :dataNeedSchema MEMBER OF dn.schemas\n AND NOT (p.minLimitKw IS NULL AND p.maxLimitKw IS NULL)\n") List<ConnectionLimitDefault> findLimitDefaultsByUserIdAndPermissionId(UUID userId, @Nullable UUID permissionId, Set<PermissionStatus> statuses, String dataNeedType, AiidaSchema dataNeedSchema) -
findLimitDefaultsByUserIdAndPermissionId
default List<ConnectionLimitDefault> findLimitDefaultsByUserIdAndPermissionId(UUID userId, @Nullable UUID permissionId)
-