From 8bc6bde62f92d77e44f649d82bc899f97a641c06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Mon, 3 Dec 2012 15:57:27 +0100 Subject: Remove the dependency on httpd_util Add the function cowboy_clock:rfc1123/1 that formats the given date to the RFC1123 format. --- src/cowboy_clock.erl | 8 ++++++-- src/cowboy_rest.erl | 8 ++++---- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/cowboy_clock.erl b/src/cowboy_clock.erl index 5e2bf44..f851211 100644 --- a/src/cowboy_clock.erl +++ b/src/cowboy_clock.erl @@ -25,6 +25,7 @@ -export([start_link/0]). -export([stop/0]). -export([rfc1123/0]). +-export([rfc1123/1]). -export([rfc2109/1]). %% gen_server. @@ -61,12 +62,15 @@ stop() -> gen_server:call(?SERVER, stop). %% @doc Return the current date and time formatted according to RFC-1123. -%% -%% This format is used in the date header sent with HTTP responses. -spec rfc1123() -> binary(). rfc1123() -> ets:lookup_element(?TABLE, rfc1123, 2). +%% @doc Return the given date and time formatted according to RFC-1123. +-spec rfc1123(calendar:datetime()) -> binary(). +rfc1123(DateTime) -> + update_rfc1123(<<>>, undefined, DateTime). + %% @doc Return the current date and time formatted according to RFC-2109. %% %% This format is used in the set-cookie header sent with diff --git a/src/cowboy_rest.erl b/src/cowboy_rest.erl index 721acb9..f7bcfb8 100644 --- a/src/cowboy_rest.erl +++ b/src/cowboy_rest.erl @@ -778,9 +778,9 @@ set_resp_body(Req, State=#state{handler=Handler, handler_state=HandlerState, LastModified when is_atom(LastModified) -> Req3; LastModified -> - LastModifiedStr = httpd_util:rfc1123_date(LastModified), + LastModifiedBin = cowboy_clock:rfc1123(LastModified), cowboy_req:set_resp_header( - <<"last-modified">>, LastModifiedStr, Req3) + <<"last-modified">>, LastModifiedBin, Req3) end, {Req5, State4} = set_resp_expires(Req4, State3), case call(Req5, State4, Fun) of @@ -831,9 +831,9 @@ set_resp_expires(Req, State) -> Expires when is_atom(Expires) -> {Req2, State2}; Expires -> - ExpiresStr = httpd_util:rfc1123_date(Expires), + ExpiresBin = cowboy_clock:rfc1123(Expires), Req3 = cowboy_req:set_resp_header( - <<"expires">>, ExpiresStr, Req2), + <<"expires">>, ExpiresBin, Req2), {Req3, State2} end. -- cgit v1.2.3