% This file is licensed to you under the Apache License, % Version 2.0 (the "License"); you may not use this file % except in compliance with the License. You may obtain % a copy of the License at % % https://www.apache.org/licenses/LICENSE-2.0 % % Unless required by applicable law or agreed to in writing, % software distributed under the License is distributed on an % "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY % KIND, either express or implied. See the License for the % specific language governing permissions and limitations % under the License. %%% @private -module(wpool_utils). -export([add_defaults/1]). %% @doc Adds default parameters to a pool configuration -spec add_defaults([wpool:option()] | wpool:options()) -> wpool:options(). add_defaults(Opts) when is_map(Opts) -> maps:merge(defaults(), Opts); add_defaults(Opts) when is_list(Opts) -> maps:merge(defaults(), maps:from_list(Opts)). defaults() -> #{ max_overrun_warnings => infinity, overrun_handler => {logger, warning}, overrun_warning => infinity, queue_type => fifo, worker_opt => [], workers => 100 }.