Interface RequestCoordinator

All Known Implementing Classes:
ErrorRequestCoordinator, ThumbnailRequestCoordinator

public interface RequestCoordinator
An interface for coordinating multiple requests with the same Target.

To avoid deadlock, implemenations must not call into individual Requests to determine their state (ie do not call Request.isCleared() or Request.isRunning() etc). Instead use RequestCoordinator.RequestState and the various methods available on this interface and Request to track states manually.

  • Method Details

    • canSetImage

      boolean canSetImage(Request request)
      Returns true if the Request can display a loaded bitmap.
      Parameters:
      request - The Request requesting permission to display a bitmap.
    • canNotifyStatusChanged

      boolean canNotifyStatusChanged(Request request)
      Returns true if the Request can display a placeholder.
      Parameters:
      request - The Request requesting permission to display a placeholder.
    • canNotifyCleared

      boolean canNotifyCleared(Request request)
      Returns true if the Request can clear the Target.
    • isAnyResourceSet

      boolean isAnyResourceSet()
      Returns true if any coordinated Request has successfully completed.
      See Also:
    • onRequestSuccess

      void onRequestSuccess(Request request)
      Must be called when a Request coordinated by this object completes successfully.
    • onRequestFailed

      void onRequestFailed(Request request)
      Must be called when a Request coordinated by this object fails.
    • getRoot

      Returns the top most parent RequestCoordinator.