From e97944918b4db10a7efffbf3fceeb81f9f653cce Mon Sep 17 00:00:00 2001 From: SisMaker <1713699517@qq.com> Date: Thu, 13 Jan 2022 18:29:15 +0800 Subject: [PATCH] =?UTF-8?q?ft:=20=E4=BB=A3=E7=A0=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/wsCom.hrl | 10 +--------- src/wsSrv/elli.erl | 17 +++++++++++------ src/wsSrv/elli_http.erl | 4 ++-- src/wsSrv/elli_middleware_compress.erl | 2 +- src/wsSrv/elli_request.erl | 4 ++-- 5 files changed, 17 insertions(+), 20 deletions(-) diff --git a/include/wsCom.hrl b/include/wsCom.hrl index 7ac5b56..b98d798 100644 --- a/include/wsCom.hrl +++ b/include/wsCom.hrl @@ -6,13 +6,5 @@ -define(LOG_ERROR(Str), error_logger:error_msg(Str)). -define(LOG_ERROR(Format, Data), error_logger:error_msg(Format, Data)). -define(LOG_INFO(Format, Data), error_logger:info_msg(Format, Data)). --endif. --ifdef(OTP_RELEASE). --define(WITH_STACKTRACE(T, R, S), T:R:S ->). --else. --define(WITH_STACKTRACE(T, R, S), T:R -> S = erlang:get_stacktrace(),). --endif. - -%% Bloody useful --define(IF(Test, True, False), case Test of true -> True; false -> False end). +-define(IIF(Cond, Then, That), case Cond of true -> Then; _ -> That end). diff --git a/src/wsSrv/elli.erl b/src/wsSrv/elli.erl index 68040ab..ee23723 100644 --- a/src/wsSrv/elli.erl +++ b/src/wsSrv/elli.erl @@ -1,10 +1,10 @@ -module(elli). + -behaviour(gen_server). -include("eWSrv.hrl"). -include("wsCom.hrl"). -%% API -export([start_link/0, start_link/1, stop/1, @@ -14,9 +14,14 @@ set_callback/3 ]). -%% gen_server callbacks --export([init/1, handle_call/3, handle_cast/2, handle_info/2, - terminate/2, code_change/3]). +-export([ + init/1 + , handle_call/3 + , handle_cast/2 + , handle_info/2 + , terminate/2 + , code_change/3 +]). -export_type([req/0, http_method/0, body/0, headers/0, response_code/0]). @@ -125,8 +130,8 @@ init([Opts]) -> UseSSL = proplists:get_value(ssl, Opts, false), KeyFile = proplists:get_value(keyfile, Opts), CertFile = proplists:get_value(certfile, Opts), - SockType = ?IF(UseSSL, ssl, plain), - SSLSockOpts = ?IF(UseSSL, + SockType = ?IIF(UseSSL, ssl, plain), + SSLSockOpts = ?IIF(UseSSL, [{keyfile, KeyFile}, {certfile, CertFile}], []), diff --git a/src/wsSrv/elli_http.erl b/src/wsSrv/elli_http.erl index f2a13bf..406a814 100644 --- a/src/wsSrv/elli_http.erl +++ b/src/wsSrv/elli_http.erl @@ -698,7 +698,7 @@ connection(Req, UserHeaders) -> end. content_length(Headers, Body) -> - ?IF(is_header_defined(?CONTENT_LENGTH_HEADER, Headers), [], + ?IIF(is_header_defined(?CONTENT_LENGTH_HEADER, Headers), [], {?CONTENT_LENGTH_HEADER, iolist_size(Body)}). is_header_defined(Key, Headers) -> @@ -802,7 +802,7 @@ split_args(Qs) -> %% init(#req{callback = {Mod, Args}} = Req) -> - ?IF(erlang:function_exported(Mod, init, 2), + ?IIF(erlang:function_exported(Mod, init, 2), case Mod:init(Req, Args) of ignore -> {ok, standard}; {ok, Behaviour} -> {ok, Behaviour} diff --git a/src/wsSrv/elli_middleware_compress.erl b/src/wsSrv/elli_middleware_compress.erl index b464807..a5d2914 100644 --- a/src/wsSrv/elli_middleware_compress.erl +++ b/src/wsSrv/elli_middleware_compress.erl @@ -20,7 +20,7 @@ postprocess(Req, {ResponseCode, Body}, Config) postprocess(Req, {ResponseCode, Headers, Body} = Res, Config) when is_integer(ResponseCode) orelse ResponseCode =:= ok -> Threshold = proplists:get_value(compress_byte_size, Config, 1024), - ?IF(not should_compress(Body, Threshold), Res, + ?IIF(not should_compress(Body, Threshold), Res, case compress(Body, Req) of no_compress -> Res; diff --git a/src/wsSrv/elli_request.erl b/src/wsSrv/elli_request.erl index 3372c6d..f61e535 100644 --- a/src/wsSrv/elli_request.erl +++ b/src/wsSrv/elli_request.erl @@ -252,7 +252,7 @@ async_send_chunk(Ref, Data) -> %% If the referenced process is dead, return early with `{error, closed}', %% instead of timing out. send_chunk(Ref, Data) -> - ?IF(is_ref_alive(Ref), + ?IIF(is_ref_alive(Ref), send_chunk(Ref, Data, 5000), {error, closed}). @@ -268,7 +268,7 @@ send_chunk(Ref, Data, Timeout) -> end. is_ref_alive(Ref) -> - ?IF(node(Ref) =:= node(), + ?IIF(node(Ref) =:= node(), is_process_alive(Ref), rpc:call(node(Ref), erlang, is_process_alive, [Ref])).