Переглянути джерело

fix: page & limit & pool_size pos_integer; some bad spelling

DDDHuang 3 роки тому
батько
коміт
e22d01d25f

+ 6 - 6
apps/emqx_authn/src/emqx_authn_api.erl

@@ -149,8 +149,8 @@ fields(response_users) ->
     paginated_list_type(ref(response_user));
 fields(pagination_meta) ->
     [
-        {page, non_neg_integer()},
-        {limit, non_neg_integer()},
+        {page, pos_integer()},
+        {limit, pos_integer()},
         {count, non_neg_integer()}
     ].
 
@@ -431,8 +431,8 @@ schema("/authentication/:id/users") ->
             description => <<"List users in authenticator in global authentication chain">>,
             parameters => [
                 param_auth_id(),
-                {page, mk(integer(), #{in => query, desc => <<"Page Index">>, required => false})},
-                {limit, mk(integer(), #{in => query, desc => <<"Page Limit">>, required => false})},
+                {page, mk(pos_integer(), #{in => query, desc => <<"Page Index">>, required => false})},
+                {limit, mk(pos_integer(), #{in => query, desc => <<"Page Limit">>, required => false})},
                 {like_username,
                     mk(binary(), #{
                         in => query,
@@ -481,8 +481,8 @@ schema("/listeners/:listener_id/authentication/:id/users") ->
             parameters => [
                 param_listener_id(),
                 param_auth_id(),
-                {page, mk(integer(), #{in => query, desc => <<"Page Index">>, required => false})},
-                {limit, mk(integer(), #{in => query, desc => <<"Page Limit">>, required => false})}
+                {page, mk(pos_integer(), #{in => query, desc => <<"Page Index">>, required => false})},
+                {limit, mk(pos_integer(), #{in => query, desc => <<"Page Limit">>, required => false})}
             ],
             responses => #{
                 200 => emqx_dashboard_swagger:schema_with_example(

+ 1 - 1
apps/emqx_connector/src/emqx_connector_http.erl

@@ -95,7 +95,7 @@ For example: `http://localhost:9901/`
             , desc => "The type of the pool. Can be one of `random`, `hash`."
             })}
     , {pool_size,
-        sc(non_neg_integer(),
+        sc(pos_integer(),
            #{ default => 8
             , desc => "The pool size."
             })}

+ 3 - 7
apps/emqx_connector/src/emqx_connector_mongo.erl

@@ -76,7 +76,9 @@ fields(sharded) ->
     , {w_mode, fun w_mode/1}
     ] ++ mongo_fields();
 fields(topology) ->
-    [ {pool_size, fun internal_pool_size/1}
+    [ {pool_size, fun emqx_connector_schema_lib:pool_size/1}
+        %% TODO: what is this
+        %% 'max_overflow'
     , {max_overflow, fun emqx_connector_schema_lib:pool_size/1}
     , {overflow_ttl, fun duration/1}
     , {overflow_check_period, fun duration/1}
@@ -114,12 +116,6 @@ mongo_fields() ->
     ] ++
     emqx_connector_schema_lib:ssl_fields().
 
-internal_pool_size(type) -> integer();
-internal_pool_size(desc) -> "Pool size on start.";
-internal_pool_size(default) -> 1;
-internal_pool_size(validator) -> [?MIN(1)];
-internal_pool_size(_) -> undefined.
-
 %% ===================================================================
 
 on_start(InstId, Config = #{mongo_type := Type,

+ 2 - 2
apps/emqx_connector/src/emqx_connector_schema_lib.erl

@@ -34,7 +34,7 @@
         ]).
 
 -type database() :: binary().
--type pool_size() :: integer().
+-type pool_size() :: pos_integer().
 -type username() :: binary().
 -type password() :: binary().
 
@@ -72,7 +72,7 @@ database(required) -> true;
 database(validator) -> [?NOT_EMPTY("the value of the field 'database' cannot be empty")];
 database(_) -> undefined.
 
-pool_size(type) -> integer();
+pool_size(type) -> pos_integer();
 pool_size(desc) -> "Size of the connection pool.";
 pool_size(default) -> 8;
 pool_size(validator) -> [?MIN(1)];

+ 1 - 1
apps/emqx_connector/src/mqtt/emqx_connector_mqtt_schema.erl

@@ -93,7 +93,7 @@ topic filters for 'remote_topic' of ingress connections.
         "messages in case of ACK not received.",
         #{default => "15s"})}
     , {max_inflight,
-        sc(integer(),
+        sc(non_neg_integer(),
            #{ default => 32
             , desc => "Max inflight (sent, but un-acked) messages of the MQTT protocol"
             })}

+ 1 - 1
apps/emqx_dashboard/src/emqx_dashboard_swagger.erl

@@ -127,7 +127,7 @@ namespace() -> "public".
 fields(page) ->
     Desc = <<"Page number of the results to fetch.">>,
     Meta = #{in => query, desc => Desc, default => 1, example => 1},
-    [{page, hoconsc:mk(integer(), Meta)}];
+    [{page, hoconsc:mk(pos_integer(), Meta)}];
 fields(limit) ->
     Desc = iolist_to_binary([
         <<"Results per page(max ">>,

+ 30 - 49
apps/emqx_exhook/src/emqx_exhook_schema.erl

@@ -50,55 +50,36 @@ fields(exhook) ->
             )}
     ];
 fields(server) ->
-    [
-        {name,
-            sc(
-                binary(),
-                #{desc => "Name of the exhook server."}
-            )},
-        {enable,
-            sc(
-                boolean(),
-                #{
-                    default => true,
-                    desc => "Enable the exhook server."
-                }
-            )},
-        {url,
-            sc(
-                binary(),
-                #{desc => "URL of the gRPC server."}
-            )},
-        {request_timeout,
-            sc(
-                duration(),
-                #{
-                    default => "5s",
-                    desc => "The timeout to request gRPC server."
-                }
-            )},
-        {failed_action, failed_action()},
-        {ssl, sc(ref(ssl_conf), #{})},
-        {auto_reconnect,
-            sc(
-                hoconsc:union([false, duration()]),
-                #{
-                    default => "60s",
-                    desc =>
-                        "Whether to automatically reconnect (initialize) the gRPC server.<br/>"
-                        "When gRPC is not available, exhook tries to request the gRPC service at "
-                        "that interval and reinitialize the list of mounted hooks."
-                }
-            )},
-        {pool_size,
-            sc(
-                integer(),
-                #{
-                    default => 8,
-                    example => 8,
-                    desc => "The process pool size for gRPC client."
-                }
-            )}
+    [ {name, sc(binary(),
+                #{ desc => "Name of the exhook server."
+                 })}
+    , {enable, sc(boolean(),
+                  #{ default => true
+                   , desc => "Enable the exhook server."
+                   })}
+    , {url, sc(binary(),
+               #{ desc => "URL of the gRPC server."
+                })}
+    , {request_timeout, sc(duration(),
+                           #{ default => "5s"
+                            , desc => "The timeout to request gRPC server."
+                            })}
+    , {failed_action, failed_action()}
+    , {ssl,
+       sc(ref(ssl_conf), #{})}
+    , {auto_reconnect,
+       sc(hoconsc:union([false, duration()]),
+          #{ default => "60s"
+           , desc => "Whether to automatically reconnect (initialize) the gRPC server.<br/>"
+                     "When gRPC is not available, exhook tries to request the gRPC service at "
+                     "that interval and reinitialize the list of mounted hooks."
+           })}
+    , {pool_size,
+       sc(pos_integer(),
+          #{ default => 8
+           , example => 8
+           , desc => "The process pool size for gRPC client."
+           })}
     ];
 fields(ssl_conf) ->
     Schema = emqx_schema:client_ssl_opts_schema(#{}),

+ 2 - 2
apps/emqx_gateway/src/emqx_gateway_api_authn.erl

@@ -384,7 +384,7 @@ params_paging_in_qs() ->
     [
         {page,
             mk(
-                integer(),
+                pos_integer(),
                 #{
                     in => query,
                     required => false,
@@ -394,7 +394,7 @@ params_paging_in_qs() ->
             )},
         {limit,
             mk(
-                integer(),
+                pos_integer(),
                 #{
                     in => query,
                     required => false,

+ 2 - 2
apps/emqx_gateway/src/emqx_gateway_api_clients.erl

@@ -664,7 +664,7 @@ params_paging() ->
     [
         {page,
             mk(
-                integer(),
+                pos_integer(),
                 #{
                     in => query,
                     required => false,
@@ -674,7 +674,7 @@ params_paging() ->
             )},
         {limit,
             mk(
-                integer(),
+                pos_integer(),
                 #{
                     in => query,
                     desc => <<"Page Limit">>,

+ 4 - 4
apps/emqx_gateway/src/emqx_gateway_api_listeners.erl

@@ -191,7 +191,7 @@ users(get, #{bindings := #{name := Name0, id := Id}, query_string := Qs}) ->
         Name0,
         Id,
         fun(_GwName, #{id := AuthId, chain_name := ChainName}) ->
-            emqx_authn_api:list_users(ChainName, AuthId, page_pramas(Qs))
+            emqx_authn_api:list_users(ChainName, AuthId, page_params(Qs))
         end
     );
 users(post, #{
@@ -261,7 +261,7 @@ import_users(post, #{
 %%--------------------------------------------------------------------
 %% Utils
 
-page_pramas(Qs) ->
+page_params(Qs) ->
     maps:with([<<"page">>, <<"limit">>], Qs).
 
 %%--------------------------------------------------------------------
@@ -555,7 +555,7 @@ params_paging_in_qs() ->
     [
         {page,
             mk(
-                integer(),
+                pos_integer(),
                 #{
                     in => query,
                     required => false,
@@ -565,7 +565,7 @@ params_paging_in_qs() ->
             )},
         {limit,
             mk(
-                integer(),
+                pos_integer(),
                 #{
                     in => query,
                     required => false,

+ 3 - 3
apps/emqx_modules/src/emqx_delayed_api.erl

@@ -149,9 +149,9 @@ schema("/mqtt/delayed/messages") ->
                     [
                         {data, mk(hoconsc:array(ref("message")), #{})},
                         {meta, [
-                            {page, mk(integer(), #{})},
-                            {limit, mk(integer(), #{})},
-                            {count, mk(integer(), #{})}
+                            {page, mk(pos_integer(), #{})},
+                            {limit, mk(pos_integer(), #{})},
+                            {count, mk(non_neg_integer(), #{})}
                         ]}
                     ]
             }

+ 2 - 2
apps/emqx_slow_subs/src/emqx_slow_subs_api.erl

@@ -50,8 +50,8 @@ schema(("/slow_subscriptions")) ->
                  },
       get => #{tags => [<<"slow subs">>],
                description => <<"Get slow topics statistics record data">>,
-               parameters => [ {page, mk(integer(), #{in => query})}
-                             , {limit, mk(integer(), #{in => query})}
+               parameters => [ {page, mk(pos_integer(), #{in => query})}
+                             , {limit, mk(pos_integer(), #{in => query})}
                              ],
                'requestBody' => [],
                responses => #{200 => [{data, mk(hoconsc:array(ref(record)), #{})}]}

+ 1 - 1
apps/emqx_slow_subs/test/emqx_slow_subs_api_SUITE.erl

@@ -96,7 +96,7 @@ t_get_history(_) ->
 
     lists:foreach(Each, lists:seq(1, 5)),
 
-    {ok, Data} = request_api(get, api_path(["slow_subscriptions"]), "_page=1&_limit=10",
+    {ok, Data} = request_api(get, api_path(["slow_subscriptions"]), "page=1&limit=10",
                              auth_header_()),
     #{<<"data">> := [First | _]} = emqx_json:decode(Data, [return_maps]),
 

+ 1 - 1
rebar.config

@@ -47,7 +47,7 @@
     [ {lc, {git, "https://github.com/emqx/lc.git", {tag, "0.2.1"}}}
     , {redbug, "2.0.7"}
     , {gpb, "4.11.2"} %% gpb only used to build, but not for release, pin it here to avoid fetching a wrong version due to rebar plugins scattered in all the deps
-    , {typerefl, {git, "https://github.com/ieQu1/typerefl", {tag, "0.8.6"}}}
+    , {typerefl, {git, "https://github.com/ieQu1/typerefl", {tag, "0.9.0"}}}
     , {ehttpc, {git, "https://github.com/emqx/ehttpc", {tag, "0.1.12"}}}
     , {gproc, {git, "https://github.com/uwiger/gproc", {tag, "0.8.0"}}}
     , {jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.5"}}}