aboutsummaryrefslogtreecommitdiffstats
path: root/lib/inets/examples/httpd_load_test/hdlt_random_html.erl
blob: 3b72d27f0640512fc48aeceb3fe5443e9f9ab557 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
%%
%% %CopyrightBegin%
%%
%% Copyright Ericsson AB 2010-2015. 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.
%%
%% %CopyrightEnd%
%%
%%

-module(hdlt_random_html). 
-export([page/3]). 

page(SessionID, _Env, Input) -> 
%%     log("page(~p) -> deliver content-type when"
%% 	"~n   SessionID: ~p"
%% 	"~n   Env:       ~p"
%% 	"~n   Input:     ~p", [self(), SessionID, Env, Input]),
    [WorkSimStr, SzSimStr] = string:tokens(Input, [$:]),
    WorkSim = list_to_integer(WorkSimStr),
    SzSim   = list_to_integer(SzSimStr),
    mod_esi:deliver(SessionID,  "Content-Type:text/html\r\n\r\n"),  
    mod_esi:deliver(SessionID, start("Random test page")),  
    mod_esi:deliver(SessionID, content(WorkSim, SzSim)),  
    mod_esi:deliver(SessionID, stop()),
    ok.

start(Title) ->  
    "<HTML>  
<HEAD>  
<TITLE>" ++ Title ++ "</TITLE> 
 </HEAD>  
<BODY>\n".  

stop() ->  
    "</BODY>  
</HTML>
". 
 
content(WorkSim, SzSim) ->  
    {A, B, C} = {erlang:phash2([node()]),
                 inets_time_compat:monotonic_time(),
                 inets_time_compat:unique_integer()},

    random:seed(A, B, C),  
    lists:sort([random:uniform(X) || X <- lists:seq(1, WorkSim)]),  
    lists:flatten(lists:duplicate(SzSim, "Dummy data ")). 

%% log(F, A) ->
%%     hdlt_logger:set_name("HDLT RANDOM-HTML"),
%%     hdlt_logger:set_level(debug),
%%     hdlt_logger:log(F, A).