aboutsummaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/error_hook/Makefile8
-rw-r--r--examples/error_hook/README.asciidoc49
-rw-r--r--examples/error_hook/relx.config2
-rw-r--r--examples/error_hook/src/error_hook_app.erl39
-rw-r--r--examples/error_hook/src/error_hook_sup.erl23
-rw-r--r--examples/rest_stream_response/Makefile8
-rw-r--r--examples/rest_stream_response/README.asciidoc69
-rw-r--r--examples/rest_stream_response/relx.config2
-rw-r--r--examples/rest_stream_response/src/rest_stream_response_app.erl39
-rw-r--r--examples/rest_stream_response/src/rest_stream_response_sup.erl23
-rw-r--r--examples/rest_stream_response/src/toppage_handler.erl37
11 files changed, 0 insertions, 299 deletions
diff --git a/examples/error_hook/Makefile b/examples/error_hook/Makefile
deleted file mode 100644
index cfd6748..0000000
--- a/examples/error_hook/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-PROJECT = error_hook
-PROJECT_DESCRIPTION = Cowboy error handler example
-PROJECT_VERSION = 1
-
-DEPS = cowboy
-dep_cowboy_commit = master
-
-include ../../erlang.mk
diff --git a/examples/error_hook/README.asciidoc b/examples/error_hook/README.asciidoc
deleted file mode 100644
index c8d6c53..0000000
--- a/examples/error_hook/README.asciidoc
+++ /dev/null
@@ -1,49 +0,0 @@
-= Error hook example
-
-*This example is currently broken on master.*
-
-To try this example, you need GNU `make` and `git` in your PATH.
-
-To build and run the example, use the following command:
-
-[source,bash]
-$ make run
-
-Then point your browser to http://localhost:8080
-
-== Example output
-
-Not found:
-
-[source,bash]
-----
-$ curl -i http://localhost:8080
-HTTP/1.1 404 Not Found
-connection: keep-alive
-server: Cowboy
-date: Wed, 27 Feb 2013 23:32:55 GMT
-content-length: 56
-
-404 Not Found: "/" is not the path you are looking for.
-----
-
-Bad request:
-
-[source,bash]
-----
-$ telnet localhost 8080
-Trying ::1...
-Connection failed: Connection refused
-Trying 127.0.0.1...
-Connected to localhost.
-Escape character is '^]'.
-bad
-HTTP/1.1 400 Bad Request
-connection: close
-server: Cowboy
-date: Sun, 08 Sep 2013 09:29:27 GMT
-content-length: 15
-
-HTTP Error 400
-Connection closed by foreign host.
-----
diff --git a/examples/error_hook/relx.config b/examples/error_hook/relx.config
deleted file mode 100644
index 1f87524..0000000
--- a/examples/error_hook/relx.config
+++ /dev/null
@@ -1,2 +0,0 @@
-{release, {error_hook_example, "1"}, [error_hook]}.
-{extended_start_script, true}.
diff --git a/examples/error_hook/src/error_hook_app.erl b/examples/error_hook/src/error_hook_app.erl
deleted file mode 100644
index 5f8ee15..0000000
--- a/examples/error_hook/src/error_hook_app.erl
+++ /dev/null
@@ -1,39 +0,0 @@
-%% Feel free to use, reuse and abuse the code in this file.
-
-%% @private
--module(error_hook_app).
--behaviour(application).
-
-%% API.
--export([start/2]).
--export([stop/1]).
-
-%% API.
-
-start(_Type, _Args) ->
- Dispatch = cowboy_router:compile([
- {'_', []}
- ]),
- {ok, _} = cowboy:start_http(http, 100, [{port, 8080}], [
- {env, [{dispatch, Dispatch}]},
- {onresponse, fun error_hook/4}
- ]),
- error_hook_sup:start_link().
-
-stop(_State) ->
- ok.
-
-error_hook(404, Headers, <<>>, Req) ->
- Path = cowboy_req:path(Req),
- Body = ["404 Not Found: \"", Path,
- "\" is not the path you are looking for.\n"],
- Headers2 = lists:keyreplace(<<"content-length">>, 1, Headers,
- {<<"content-length">>, integer_to_list(iolist_size(Body))}),
- cowboy_req:reply(404, Headers2, Body, Req);
-error_hook(Code, Headers, <<>>, Req) when is_integer(Code), Code >= 400 ->
- Body = ["HTTP Error ", integer_to_list(Code), $\n],
- Headers2 = lists:keyreplace(<<"content-length">>, 1, Headers,
- {<<"content-length">>, integer_to_list(iolist_size(Body))}),
- cowboy_req:reply(Code, Headers2, Body, Req);
-error_hook(_Code, _Headers, _Body, Req) ->
- Req.
diff --git a/examples/error_hook/src/error_hook_sup.erl b/examples/error_hook/src/error_hook_sup.erl
deleted file mode 100644
index f92c156..0000000
--- a/examples/error_hook/src/error_hook_sup.erl
+++ /dev/null
@@ -1,23 +0,0 @@
-%% Feel free to use, reuse and abuse the code in this file.
-
-%% @private
--module(error_hook_sup).
--behaviour(supervisor).
-
-%% API.
--export([start_link/0]).
-
-%% supervisor.
--export([init/1]).
-
-%% API.
-
--spec start_link() -> {ok, pid()}.
-start_link() ->
- supervisor:start_link({local, ?MODULE}, ?MODULE, []).
-
-%% supervisor.
-
-init([]) ->
- Procs = [],
- {ok, {{one_for_one, 10, 10}, Procs}}.
diff --git a/examples/rest_stream_response/Makefile b/examples/rest_stream_response/Makefile
deleted file mode 100644
index 65858e6..0000000
--- a/examples/rest_stream_response/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-PROJECT = rest_stream_response
-PROJECT_DESCRIPTION = Cowboy REST example with streaming
-PROJECT_VERSION = 1
-
-DEPS = cowboy
-dep_cowboy_commit = master
-
-include ../../erlang.mk
diff --git a/examples/rest_stream_response/README.asciidoc b/examples/rest_stream_response/README.asciidoc
deleted file mode 100644
index c455a89..0000000
--- a/examples/rest_stream_response/README.asciidoc
+++ /dev/null
@@ -1,69 +0,0 @@
-= REST streaming example
-
-*This example is currently broken on master.*
-
-To try this example, you need GNU `make` and `git` in your PATH.
-
-To build and run the example, use the following command:
-
-[source,bash]
-$ make run
-
-Then point your browser to http://localhost:8080
-
-== About
-
-This example simulates streaming a large amount of data from a data store one
-record at a time in CSV format. It also uses a constraint to ensure that the
-last segment of the route is an integer.
-
-== Example output
-
-Fetch records with the second field with value 1:
-
-[source,bash]
-----
-$ curl -i localhost:8080
-HTTP/1.1 200 OK
-transfer-encoding: identity
-server: Cowboy
-date: Sun, 10 Feb 2013 19:32:16 GMT
-connection: close
-content-type: text/csv
-
-DBUZGQ0C,1,28
-BgoQAxMV,1,6
-DAYEFxER,1,18
-...
-----
-
-Fetch records with the second field with value 4:
-
-[source,bash]
-----
-$ curl -i localhost:8080/4
-HTTP/1.1 200 OK
-transfer-encoding: identity
-server: Cowboy
-date: Sun, 10 Feb 2013 19:34:31 GMT
-connection: close
-content-type: text/csv
-
-ABcFDxcE,4,42
-DgYQCgEE,4,5
-CA8BBhYD,4,10
-...
-----
-
-Fail to use a proper integer and get an error:
-
-[source,bash]
-----
-$ curl -i localhost:8080/foo
-HTTP/1.1 404 Not Found
-connection: keep-alive
-server: Cowboy
-date: Sun, 10 Feb 2013 19:36:16 GMT
-content-length: 0
-
-----
diff --git a/examples/rest_stream_response/relx.config b/examples/rest_stream_response/relx.config
deleted file mode 100644
index 024b947..0000000
--- a/examples/rest_stream_response/relx.config
+++ /dev/null
@@ -1,2 +0,0 @@
-{release, {rest_stream_response_example, "1"}, [rest_stream_response]}.
-{extended_start_script, true}.
diff --git a/examples/rest_stream_response/src/rest_stream_response_app.erl b/examples/rest_stream_response/src/rest_stream_response_app.erl
deleted file mode 100644
index 46857f4..0000000
--- a/examples/rest_stream_response/src/rest_stream_response_app.erl
+++ /dev/null
@@ -1,39 +0,0 @@
-%% Feel free to use, reuse and abuse the code in this file.
-
-%% @private
--module(rest_stream_response_app).
--behaviour(application).
-
-%% API.
--export([start/2]).
--export([stop/1]).
-
-%% API.
-
-start(_Type, _Args) ->
- Table = ets:new(stream_tab, []),
- generate_rows(Table, 1000),
- Dispatch = cowboy_router:compile([
- {'_', [
- {"/[:v1]", [{v1, int}], toppage_handler, Table}
- ]}
- ]),
- {ok, _} = cowboy:start_http(http, 100, [{port, 8080}], [
- {env, [{dispatch, Dispatch}]}
- ]),
- rest_stream_response_sup:start_link().
-
-stop(_State) ->
- ok.
-
-generate_rows(_Table, 0) ->
- ok;
-generate_rows(Table, N) ->
- ets:insert(Table, {key(), val(), val()}),
- generate_rows(Table, N - 1).
-
-key() -> key(10).
-key(N) -> key(<< (random:uniform(26) - 1) >>, N - 1).
-key(Acc, 0) -> binary_part(base64:encode(Acc), 0, 8);
-key(Acc, N) -> key(<< Acc/binary, (random:uniform(26) - 1) >>, N - 1).
-val() -> random:uniform(50).
diff --git a/examples/rest_stream_response/src/rest_stream_response_sup.erl b/examples/rest_stream_response/src/rest_stream_response_sup.erl
deleted file mode 100644
index 73142d4..0000000
--- a/examples/rest_stream_response/src/rest_stream_response_sup.erl
+++ /dev/null
@@ -1,23 +0,0 @@
-%% Feel free to use, reuse and abuse the code in this file.
-
-%% @private
--module(rest_stream_response_sup).
--behaviour(supervisor).
-
-%% API.
--export([start_link/0]).
-
-%% supervisor.
--export([init/1]).
-
-%% API.
-
--spec start_link() -> {ok, pid()}.
-start_link() ->
- supervisor:start_link({local, ?MODULE}, ?MODULE, []).
-
-%% supervisor.
-
-init([]) ->
- Procs = [],
- {ok, {{one_for_one, 10, 10}, Procs}}.
diff --git a/examples/rest_stream_response/src/toppage_handler.erl b/examples/rest_stream_response/src/toppage_handler.erl
deleted file mode 100644
index 61f5ab9..0000000
--- a/examples/rest_stream_response/src/toppage_handler.erl
+++ /dev/null
@@ -1,37 +0,0 @@
-%% Feel free to use, reuse and abuse the code in this file.
-
-%% @doc Streaming handler.
--module(toppage_handler).
-
--export([init/2]).
--export([content_types_provided/2]).
--export([streaming_csv/2]).
-
-init(Req, Table) ->
- {cowboy_rest, Req, Table}.
-
-content_types_provided(Req, State) ->
- {[
- {{<<"text">>, <<"csv">>, []}, streaming_csv}
- ], Req, State}.
-
-streaming_csv(Req, Table) ->
- N = cowboy_req:binding(v1, Req, 1),
- MS = [{{'$1', '$2', '$3'}, [{'==', '$2', N}], ['$$']}],
- {{stream, result_streamer(Table, MS)}, Req, Table}.
-
-result_streamer(Table, MS) ->
- fun (Socket, Transport) ->
- send_records(Socket, Transport, ets:select(Table, MS, 1))
- end.
-
-send_records(Socket, Transport, {[Rec], Cont}) ->
- timer:sleep(500),
- send_line(Socket, Transport, Rec),
- send_records(Socket, Transport, ets:select(Cont));
-send_records(_Socket, _Transport, '$end_of_table') ->
- ok.
-
-send_line(Socket, Transport, [Key, V1, V2]) ->
- Transport:send(Socket,
- [Key, $,, integer_to_list(V1), $,, integer_to_list(V2), $\r, $\n]).