Interface ConnectionLimitRepository

All Superinterfaces:
org.springframework.data.repository.CrudRepository<ConnectionLimit,ConnectionLimit.ConnectionLimitKey>, org.springframework.data.jpa.repository.JpaRepository<ConnectionLimit,ConnectionLimit.ConnectionLimitKey>, org.springframework.data.repository.ListCrudRepository<ConnectionLimit,ConnectionLimit.ConnectionLimitKey>, org.springframework.data.repository.ListPagingAndSortingRepository<ConnectionLimit,ConnectionLimit.ConnectionLimitKey>, org.springframework.data.repository.PagingAndSortingRepository<ConnectionLimit,ConnectionLimit.ConnectionLimitKey>, org.springframework.data.repository.query.QueryByExampleExecutor<ConnectionLimit>, org.springframework.data.repository.Repository<ConnectionLimit,ConnectionLimit.ConnectionLimitKey>

public interface ConnectionLimitRepository extends org.springframework.data.jpa.repository.JpaRepository<ConnectionLimit,ConnectionLimit.ConnectionLimitKey>
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    findByUserIdAndFiltersFromTo(UUID userId, UUID permissionId, String meterId, Instant from, Instant to)
     
    findCreatedAtByPermissionMeterAndInterval(UUID permissionId, String meterId, Instant intervalStart, Instant intervalEnd)
     
     

    Methods inherited from interface org.springframework.data.repository.CrudRepository

    count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findById, save

    Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository

    deleteAllByIdInBatch, deleteAllInBatch, deleteAllInBatch, deleteInBatch, findAll, findAll, flush, getById, getOne, getReferenceById, saveAllAndFlush, saveAndFlush

    Methods inherited from interface org.springframework.data.repository.ListCrudRepository

    findAll, findAllById, saveAll

    Methods inherited from interface org.springframework.data.repository.ListPagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.PagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor

    count, exists, findAll, findBy, findOne
  • Method Details

    • findByUserIdAndFiltersFromTo

      @Query("SELECT cl\nFROM ConnectionLimit cl, Permission p\nWHERE p.permissionId = cl.permissionId\n AND p.userId = :userId\n AND (:permissionId IS NULL OR cl.permissionId = :permissionId)\n AND (:meterId IS NULL OR cl.meterId = :meterId)\n AND cl.intervalEnd > :from\n AND cl.intervalStart <= :to\nORDER BY\n cl.permissionId,\n cl.meterId,\n cl.intervalStart,\n cl.intervalEnd\n") List<ConnectionLimit> findByUserIdAndFiltersFromTo(UUID userId, @Nullable UUID permissionId, @Nullable String meterId, Instant from, Instant to)
    • findMaxRevisionNumberByMrid

      @Query("SELECT MAX(cl.revisionNumber) FROM ConnectionLimit cl WHERE cl.mrid = :mrid") Optional<Integer> findMaxRevisionNumberByMrid(@Param("mrid") String mrid)
    • deleteByMrid

      void deleteByMrid(String mrid)
    • findCreatedAtByPermissionMeterAndInterval

      @Query("SELECT cl.createdAt\nFROM ConnectionLimit cl\nWHERE cl.permissionId = :permissionId\n AND cl.meterId = :meterId\n AND cl.intervalStart = :intervalStart\n AND cl.intervalEnd = :intervalEnd\n") Optional<Instant> findCreatedAtByPermissionMeterAndInterval(@Param("permissionId") UUID permissionId, @Param("meterId") String meterId, @Param("intervalStart") Instant intervalStart, @Param("intervalEnd") Instant intervalEnd)