Class XbipMonitor

All Implemented Interfaces:
Runnable

@Component @Scope("singleton") public class XbipMonitor extends BaseMonitor
Monitor for X-band Interface Points X-band Interface Points are WebDAV volumes, so from within the Monitor they just look like plain POSIX volumes.
Author:
Dr. Thomas Bassler
  • Field Details

    • copySuccess

      Map<String,Boolean> copySuccess
      Indicator for parallel copying processes
  • Constructor Details

    • XbipMonitor

      public XbipMonitor()
  • Method Details

    • getMaxFileDownloadThreads

      public int getMaxFileDownloadThreads()
      Gets the maximum number of parallel file download threads within a download session
      Returns:
      the maximum number of parallel file download threads
    • setMaxFileDownloadThreads

      public void setMaxFileDownloadThreads(int maxFileDownloadThreads)
      Sets the maximum number of parallel file download threads within a download session
      Parameters:
      maxFileDownloadThreads - the maximum number of parallel file download threads to set
    • getFileWaitInterval

      public int getFileWaitInterval()
      Gets the interval to check for completed file downloads
      Returns:
      the check interval in millliseconds
    • setFileWaitInterval

      public void setFileWaitInterval(int fileWaitInterval)
      Sets the interval to check for completed file downloads
      Parameters:
      fileWaitInterval - the check interval in millliseconds to set
    • getMaxFileWaitCycles

      public int getMaxFileWaitCycles()
      Gets the maximum number of wait cycles for file download completion checks
      Returns:
      the maximum number of wait cycles
    • setMaxFileWaitCycles

      public void setMaxFileWaitCycles(int maxFileWaitCycles)
      Sets the maximum number of wait cycles for file download completion checks
      Parameters:
      maxFileWaitCycles - the maximum number of wait cycles to set
    • 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 XBIP satellite directory for sessions (without filtering); note that the passed reference time stamp is ignored, as on the XBIP there is no reliable value to compare it against
      Specified by:
      checkAvailableDownloads in class BaseMonitor
    • transferToTargetDir

      protected boolean transferToTargetDir(TransferObject object)
      Transfer the data in the session data directory to the configured CADU target directory for L0 processing
      Specified by:
      transferToTargetDir in class BaseMonitor
    • triggerFollowOnAction

      protected boolean triggerFollowOnAction(TransferObject transferObject)
      Trigger L0 processing on the given downlink session transfer object (spawns a separate process taking just the path to the session CADU data as parameter)
      Specified by:
      triggerFollowOnAction in class BaseMonitor