protected Supplier<DataSource<IMAGE>> getDataSourceSupplierForRequest(
      final DraweeController controller,
      final String controllerId,
      final REQUEST imageRequest,
      final CacheLevel cacheLevel) {
    final Object callerContext = getCallerContext();
    return new Supplier<DataSource<IMAGE>>() {
      @Override
      public DataSource<IMAGE> get() {
        return getDataSourceForRequest(
            // NULLSAFE_FIXME[Parameter Not Nullable]
            controller, controllerId, imageRequest, callerContext, cacheLevel);
      }

      @Override
      public String toString() {
        return Objects.toStringHelper(this).add("request", imageRequest.toString()).toString();
      }
    };
  }
Creates a data source supplier for the given image request.
drawee/src/main/java/com/facebook/drawee/controller/AbstractDraweeControllerBuilder.java