%% -*- erlang -*-
%% @doc Fetcher configurations

{mapping, "upload.pool_size", "fifo_s3.upload_pool_size",
 [{default, 10},
  {datatype, integer}]}.

{mapping, "upload.pool_max", "fifo_s3.upload_pool_overflow",
 [{default, 15},
  {datatype, integer}]}.

{translation,
 "fifo_s3.upload_pool_overflow",
 fun(Conf) ->
    Size = cuttlefish:conf_get("upload.pool_size", Conf),
    Max = cuttlefish:conf_get("upload.pool_max", Conf),
    Max - Size
  end
}.

{mapping, "upload.retry", "fifo_s3.upload_retry",
 [{default, 3},
  {datatype, integer}]}.

{mapping, "download.pool_size", "fifo_s3.download_pool_size",
 [{default, 10},
  {datatype, integer}]}.

{mapping, "download.pool_max", "fifo_s3.download_pool_overflow",
 [{default, 15},
  {datatype, integer}]}.

{translation,
 "fifo_s3.download_pool_overflow",
 fun(Conf) ->
    Size = cuttlefish:conf_get("download.pool_size", Conf),
    Max = cuttlefish:conf_get("download.pool_max", Conf),
    Max - Size
  end
}.

{mapping, "download.preload_chunks", "fifo_s3.download_preload_chunks",
 [{default, 10},
  {datatype, integer}]}.


{mapping, "download.retry", "fifo_s3.download_retry",
 [{default, 3},
  {datatype, integer}]}.
