Schnittstelle ProductRepository

Alle Superschnittstellen:
org.springframework.data.repository.CrudRepository<Product,Long>, org.springframework.data.jpa.repository.JpaRepository<Product,Long>, org.springframework.data.repository.PagingAndSortingRepository<Product,Long>, org.springframework.data.repository.query.QueryByExampleExecutor<Product>, org.springframework.data.repository.Repository<Product,Long>

@Repository public interface ProductRepository extends org.springframework.data.jpa.repository.JpaRepository<Product,Long>
Data Access Object for the Product class
Autor:
Dr. Thomas Bassler
  • Methodendetails

    • findByMissionCodeAndProductTypeAndOrbitNumberBetween

      @Query("select p from Product p where p.productClass.mission.code = ?1 and p.productClass.productType = ?2 and p.orbit.orbitNumber between ?3 and ?4") List<Product> findByMissionCodeAndProductTypeAndOrbitNumberBetween(String missionCode, String productType, Integer orbitNumberFrom, Integer orbitNumberTo)
      Get all products of a given mission and class with their orbit numbers in the given range
      Parameter:
      missionCode - the mission code
      productType - the prosEO product type
      orbitNumberFrom - the first orbit number to include
      orbitNumberTo - the last orbit number to include
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByMissionCodeAndProductTypeAndRequestedStartTimeBetween

      @Query("select p from Product p where p.productClass.mission.code = ?1 and p.productClass.productType = ?2 and p.requestedStartTime between ?3 and ?4") List<Product> findByMissionCodeAndProductTypeAndRequestedStartTimeBetween(String missionCode, String productType, Instant requestedStartTimeFrom, Instant requestedStartTimeTo)
      Get all products of a given mission and class with their requested start times in the given time interval
      Parameter:
      missionCode - the mission code
      productType - the prosEO product type
      requestedStartTimeFrom - the earliest planned/requested start time
      requestedStartTimeTo - the latest planned/requested start time
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByMissionCodeAndProductTypeAndSensingStartTimeBetween

      @Query("select p from Product p where p.productClass.mission.code = ?1 and p.productClass.productType = ?2 and p.sensingStartTime between ?3 and ?4") List<Product> findByMissionCodeAndProductTypeAndSensingStartTimeBetween(String missionCode, String productType, Instant sensingStartTimeFrom, Instant sensingStartTimeTo)
      Get all products of a given mission and class with their sensing start times in the given time interval
      Parameter:
      missionCode - the mission code
      productType - the prosEO product type
      sensingStartTimeFrom - the earliest sensing start time
      sensingStartTimeTo - the latest sensing start time
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByMissionCodeAndProductionTypeAndPublicatedAndPublicationTimeBetween

      @Query("select p from Product p where p.productClass.mission.code = ?1 and p.productionType = ?2 and p.publicationTime is not null and p.publicationTime between ?3 and ?4 and p.productClass.processingLevel is not null") List<Product> findByMissionCodeAndProductionTypeAndPublicatedAndPublicationTimeBetween(String missionCode, ProductionType productionType, Instant publicationTimeFrom, Instant publicationTimeTo)
      Get all products of a given mission and class with their publication times in the given time interval
      Parameter:
      missionCode - the mission code
      productionType - the prosEO production type
      publicationTimeFrom - the earliest publication time
      publicationTimeTo - the latest publication time
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByMissionCodeAndProductionTypeAndGeneratedAndGenerationTimeBetween

      @Query("select p from Product p where p.productClass.mission.code = ?1 and p.productionType = ?2 and p.generationTime is not null and p.generationTime between ?3 and ?4") List<Product> findByMissionCodeAndProductionTypeAndGeneratedAndGenerationTimeBetween(String missionCode, ProductionType productionType, Instant generationTimeFrom, Instant generationTimeTo)
      Get all products of a given mission and class with their publication times in the given time interval
      Parameter:
      missionCode - the mission code
      productionType - the prosEO production type
      generationTimeFrom - the earliest generation time
      generationTimeTo - the latest generation time
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByMissionCodeAndProductTypeAndRequestedStartTimeLessAndRequestedStopTimeGreater

      @Query("select p from Product p where p.productClass.mission.code = ?1 and p.productClass.productType = ?2 and p.requestedStartTime <= ?3 and p.requestedStopTime >= ?4") List<Product> findByMissionCodeAndProductTypeAndRequestedStartTimeLessAndRequestedStopTimeGreater(String missionCode, String productType, Instant latestRequestedStartTime, Instant earliestRequestedStopTime)
      Get all products of a given mission and class with their sensing start time before the end of a time interval and the sensing stop time after the beginning of that interval (including border values); this results in a check for intersection with the time interval, if latestSensingStartTime after earliestSensingStopTime, and a check for coverage of the time interval, if latestSensingStartTime before earliestSensingStopTime
      Parameter:
      missionCode - the mission code
      productType - the prosEO product type
      latestRequestedStartTime - the latest planned/requested start time
      earliestRequestedStopTime - the earliest planned/requested stop time
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByMissionCodeAndProductTypeAndSensingStartTimeLessAndSensingStopTimeGreater

      @Query("select p from Product p where p.productClass.mission.code = ?1 and p.productClass.productType = ?2 and p.sensingStartTime <= ?3 and p.sensingStopTime >= ?4") List<Product> findByMissionCodeAndProductTypeAndSensingStartTimeLessAndSensingStopTimeGreater(String missionCode, String productType, Instant latestSensingStartTime, Instant earliestSensingStop)
      Get all products of a given mission and class with their sensing start time before the end of a time interval and the sensing stop time after the beginning of that interval (including border values); this results in a check for intersection with the time interval, if latestSensingStartTime after earliestSensingStopTime, and a check for coverage of the time interval, if latestSensingStartTime before earliestSensingStopTime
      Parameter:
      missionCode - the mission code
      productType - the prosEO product type
      latestSensingStartTime - the latest sensing start time
      earliestSensingStop - the earliest sensing stop time
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByJobStep

      Product findByJobStep(JobStep jobStep)
      Get the product which is produced by a job step
      Parameter:
      jobStep - the job step
      Gibt zurück:
      the product produced by job step
    • findByUuid

      Product findByUuid(UUID uuid)
      Get the product with the given universally unique product identifier
      Parameter:
      uuid - the product UUID
      Gibt zurück:
      the requested product
    • findByProductClassAndConfiguredProcessorAndSensingStartTimeAndSensingStopTime

      @Query("select p from Product p where p.productClass.id = ?1 and p.configuredProcessor.id = ?2 and p.sensingStartTime = ?3 and p.sensingStopTime = ?4") List<Product> findByProductClassAndConfiguredProcessorAndSensingStartTimeAndSensingStopTime(long productClassId, long configuredProcessorId, Instant sensingStartTime, Instant sensingStopTime)
      Get a list of products of a given product class, configured process and sensing times
      Parameter:
      productClassId - the ID of the product class
      configuredProcessorId - the ID of the configured processor
      sensingStartTime - the sensing start time
      sensingStopTime - the sensing stop time
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByEvictionTimeBeforeNow

      @Query("select p from Product p where p.evictionTime is not null and p.evictionTime < current_timestamp") List<Product> findByEvictionTimeBeforeNow()
      Get a list of products with eviction times in the past
      Gibt zurück:
      a list of products satisfying the search criteria
    • findByEvictionTimeLessThan

      @Query("select p from Product p where p.evictionTime is not null and p.evictionTime < ?1 and p.productFile is not empty") List<Product> findByEvictionTimeLessThan(Instant evictionTime)
      Get a list of products with eviction times older than evictionTime
      Parameter:
      evictionTime - the time to compare
      Gibt zurück:
      a list of products satisfying the search criteria