Class ApiDeadlineOracle


  • public class ApiDeadlineOracle
    extends Object
    ApiDeadlineOracle determines the appropriate deadline for API calls based on the user-specified deadline, the per-package maximum and default deadlines, and the fallthrough maximum and default deadlines.

    This class is also used to track shared buffer counts and sizes as they can also be specified on a per-package and online/offline basis.

    • Method Detail

      • getDeadline

        public double getDeadline​(String packageName,
                                  boolean isOffline,
                                  Number userDeadline)
      • addPackageDefaultDeadline

        public void addPackageDefaultDeadline​(String packageName,
                                              double defaultDeadline)
      • addPackageMaxDeadline

        public void addPackageMaxDeadline​(String packageName,
                                          double maxDeadline)
      • addOfflinePackageDefaultDeadline

        public void addOfflinePackageDefaultDeadline​(String packageName,
                                                     double defaultDeadline)
      • addOfflinePackageMaxDeadline

        public void addOfflinePackageMaxDeadline​(String packageName,
                                                 double maxDeadline)
      • addPackageMinContentSizeForBuffer

        public void addPackageMinContentSizeForBuffer​(String packageName,
                                                      long minContentSizeForBuffer)
      • addPackageMaxRequestSize

        public void addPackageMaxRequestSize​(String packageName,
                                             long maxRequestSize)
      • addOfflinePackageMinContentSizeForBuffer

        public void addOfflinePackageMinContentSizeForBuffer​(String packageName,
                                                             long minContentSizeForBuffer)
      • addOfflinePackageMaxRequestSize

        public void addOfflinePackageMaxRequestSize​(String packageName,
                                                    long maxRequestSize)