Interface UsPermissionRequestRepository

All Superinterfaces:
org.springframework.data.repository.CrudRepository<GreenButtonPermissionRequest,String>, PermissionRequestRepository<UsGreenButtonPermissionRequest>, org.springframework.data.repository.Repository<GreenButtonPermissionRequest,String>, StalePermissionRequestRepository<GreenButtonPermissionRequest>

@Repository public interface UsPermissionRequestRepository extends PermissionRequestRepository<UsGreenButtonPermissionRequest>, org.springframework.data.repository.CrudRepository<GreenButtonPermissionRequest,String>, StalePermissionRequestRepository<GreenButtonPermissionRequest>
  • Method Details

    • findAllByStatus

    • findByAuthUid

      GreenButtonPermissionRequest findByAuthUid(String authUid)
    • existsByPermissionIdAndStatus

      boolean existsByPermissionIdAndStatus(String permissionId, PermissionProcessStatus status)
    • findStalePermissionRequests

      @Query(value="SELECT permission_id, connection_id, data_need_id, status, granularity, permission_start, permission_end, dso_id, country_code, jump_off_url, scope, created, auth_uid FROM us_green_button.permission_request WHERE status = \'VALIDATED\' AND created <= NOW() - :hours * INTERVAL \'1 hour\'", nativeQuery=true) List<GreenButtonPermissionRequest> findStalePermissionRequests(@Param("hours") int duration)
      Description copied from interface: StalePermissionRequestRepository
      Finds all permission request that are older than the stalenessDuration and have either the status VALIDATED or SENT_TO_PERMISSION_ADMINISTRATOR.
      Specified by:
      findStalePermissionRequests in interface StalePermissionRequestRepository<GreenButtonPermissionRequest>
      Parameters:
      duration - the max amount of hours the permission request has to be created ago to not be considered stale.
      Returns:
      all permission request created now - stalenessDuration hours ago, with above specified status.
    • findActivePermissionRequests

      @Query(value="SELECT permission_id, connection_id, data_need_id, status, granularity, permission_start, permission_end, dso_id, country_code, jump_off_url, scope, created, auth_uid FROM us_green_button.permission_request WHERE status = \'ACCEPTED\' AND permission_start <= NOW() AND permission_end >= NOW()", nativeQuery=true) List<GreenButtonPermissionRequest> findActivePermissionRequests()