Class AuxipMonitor

All Implemented Interfaces:
Runnable

@Component @Scope("singleton") public class AuxipMonitor extends BaseMonitor
Monitor for Auxiliary Data Interface Points (AUXIP) For specification details see "Auxiliary Data Interface Delivery Point Specification" (ESA-EOPG-EOPGC-IF-10, issue 1.3)
Author:
Dr. Thomas Bassler
  • Field Details

  • Constructor Details

    • AuxipMonitor

      public AuxipMonitor()
  • Method Details

    • getLastCopyPerformance

      public Double getLastCopyPerformance()
      Gets the last copy performance for monitoring purposes
      Returns:
      the last copy performance in MiB/s
    • setLastCopyPerformance

      void setLastCopyPerformance(Double copyPerformance)
      Records the last copy performance for monitoring purposes
      Parameters:
      copyPerformance - the copy performance in MiB/s
    • checkAvailableDownloads

      protected BaseMonitor.TransferControl checkAvailableDownloads(Instant referenceTimeStamp)
      Check the configured AUXIP for new files of the configured product types, whose publication date is after the reference time stamp:
      1. If token-based authentication is required, login to AUXIP and request token
      2. For all configured product types:
        1. Retrieve all products of the given type with publication time after reference time stamp (authenticating with either Basic Auth or Bearer Token)
        2. Convert JSON product entries into transfer objects
      3. Return the combined list of transfer objects
      Specified by:
      checkAvailableDownloads in class BaseMonitor
      Parameters:
      referenceTimeStamp - the reference timestamp to apply for pickup point lookups
      Returns:
      a list of available transfer objects
    • transferToTargetDir

      protected boolean transferToTargetDir(TransferObject object)
      Transfer the products found to disk for later ingestion
      Specified by:
      transferToTargetDir in class BaseMonitor
    • triggerFollowOnAction

      protected boolean triggerFollowOnAction(TransferObject transferObject)
      Specified by:
      triggerFollowOnAction in class BaseMonitor