1%%
2%%
3%%    Licensed under the Apache License, Version 2.0 (the "License");
4%%    you may not use this file except in compliance with the License.
5%%    You may obtain a copy of the License at
6%%
7%%        http://www.apache.org/licenses/LICENSE-2.0
8%%
9%%    Unless required by applicable law or agreed to in writing, software
10%%    distributed under the License is distributed on an "AS IS" BASIS,
11%%    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12%%    See the License for the specific language governing permissions and
13%%    limitations under the License.
14
15-module(wm_echo_host_header).
16
17-export([
18         init/1,
19         to_html/2,
20         parse_body/1
21        ]).
22
23-include("webmachine.hrl").
24
25init([]) -> {ok, undefined}.
26
27to_html(Req, State) ->
28    HostVal = wrq:get_req_header("host", Req),
29    HostTokens = string:join(wrq:host_tokens(Req), "."),
30    Body = "Host\t" ++ HostVal ++
31        "\nHostTokens\t" ++ HostTokens ++ "\n",
32    {Body, Req, State}.
33
34%% Transform the body returned by this resource into a proplist for
35%% testing.
36parse_body(Body) ->
37    Lines = re:split(Body, "\n"),
38    [ erlang:list_to_tuple(re:split(Line, "\t")) || Line <- Lines ].
39