Interface OptimizationController

All Known Implementing Classes:
DefaultBucketProxy

public interface OptimizationController
The optimization controller for BucketProxy.

This interface is actual only if an optimization was applied during bucket construction via RemoteBucketBuilder.withOptimization(Optimization) otherwise all methods of controller will do nothing.

  • Method Summary

    Modifier and Type
    Method
    Description
    void
    syncByCondition(long unsynchronizedTokens, Duration timeSinceLastSync)
    Initiates immediate synchronization of local copy of bucket with remote storage in case of both conditions bellow are true: Accumulated amount of locally consumed tokens without external synchronization is greater than or equal to unsynchronizedTokens Time passed since last synchronization with external storage is greater than or equal to timeSinceLastSync
    default void
    Initiates immediate synchronization of local copy of bucket with remote storage
  • Method Details

    • syncImmediately

      default void syncImmediately()
      Initiates immediate synchronization of local copy of bucket with remote storage
    • syncByCondition

      void syncByCondition(long unsynchronizedTokens, Duration timeSinceLastSync)
      Initiates immediate synchronization of local copy of bucket with remote storage in case of both conditions bellow are true:
      • Accumulated amount of locally consumed tokens without external synchronization is greater than or equal to unsynchronizedTokens
      • Time passed since last synchronization with external storage is greater than or equal to timeSinceLastSync
      Parameters:
      unsynchronizedTokens - criterion for accumulated amount of unsynchronized tokens
      timeSinceLastSync - criterion for time passed since last synchronization