From c8f9e12de1b629bd90c698f1547f3abd7e3bd9e0 Mon Sep 17 00:00:00 2001 From: "Zaiming (Stone) Shi" Date: Tue, 20 Feb 2024 19:55:36 +0100 Subject: [PATCH] refactor: deprecate emqx_resource_proto_v1 with v2 --- apps/emqx_resource/src/emqx_resource.erl | 2 +- .../src/proto/emqx_resource_proto_v2.erl | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 apps/emqx_resource/src/proto/emqx_resource_proto_v2.erl diff --git a/apps/emqx_resource/src/emqx_resource.erl b/apps/emqx_resource/src/emqx_resource.erl index 05eb51dbc..f2ab82950 100644 --- a/apps/emqx_resource/src/emqx_resource.erl +++ b/apps/emqx_resource/src/emqx_resource.erl @@ -329,7 +329,7 @@ reset_metrics_local(ResId) -> -spec reset_metrics(resource_id()) -> ok | {error, Reason :: term()}. reset_metrics(ResId) -> - emqx_resource_proto_v1:reset_metrics(ResId). + emqx_resource_proto_v2:reset_metrics(ResId). %% ================================================================================= -spec query(resource_id(), Request :: term()) -> Result :: term(). diff --git a/apps/emqx_resource/src/proto/emqx_resource_proto_v2.erl b/apps/emqx_resource/src/proto/emqx_resource_proto_v2.erl new file mode 100644 index 000000000..84fc86463 --- /dev/null +++ b/apps/emqx_resource/src/proto/emqx_resource_proto_v2.erl @@ -0,0 +1,34 @@ +%%-------------------------------------------------------------------- +%% Copyright (c) 2022-2024 EMQ Technologies Co., Ltd. All Rights Reserved. +%% +%% Licensed 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 +%% +%% http://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. +%%-------------------------------------------------------------------- + +-module(emqx_resource_proto_v2). + +-behaviour(emqx_bpapi). + +-export([ + introduced_in/0, + reset_metrics/1 +]). + +-include_lib("emqx/include/bpapi.hrl"). +-include("emqx_resource.hrl"). + +introduced_in() -> + "5.6.0". + +-spec reset_metrics(resource_id()) -> ok | {error, any()}. +reset_metrics(ResId) -> + emqx_cluster_rpc:multicall(emqx_resource, reset_metrics_local, [ResId]).