1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- defmodule Hello.PageController do
- use Hello.Web, :controller
- alias Hello.World
- alias Hello.Fortune
- def index(conn, _params) do
- conn
- |> put_resp_content_type("application/json", nil)
- |> send_resp(200, Poison.encode!(%{"TE Benchmarks\n" => "Started"}))
- end
- # avoid namespace collision
- def _json(conn, _params) do
- conn
- |> put_resp_content_type("application/json", nil)
- |> send_resp(200, Poison.encode!(%{message: "Hello, world!"}))
- end
- def db(conn, _params) do
- conn
- |> put_resp_content_type("application/json", nil)
- |> send_resp(200, Poison.encode!(Repo.get(World, :rand.uniform(10000))))
- end
- def queries(conn, params) do
- q = try do
- case String.to_integer(params["queries"]) do
- x when x < 1 -> 1
- x when x > 500 -> 500
- x -> x
- end
- rescue
- ArgumentError -> 1
- end
- conn
- |> put_resp_content_type("application/json", nil)
- |> send_resp(200, Poison.encode!(Enum.map(1..q, fn _ -> Repo.get(World, :rand.uniform(10000)) end)))
- end
- def fortunes(conn, _params) do
- additional_fortune = %Fortune{
- id: 0,
- message: "Additional fortune added at request time."
- }
- fortunes = [additional_fortune | Repo.all(Fortune)]
- render conn, "fortunes.html", fortunes: Enum.sort(fortunes, fn f1, f2 -> f1.message < f2.message end)
- end
- def updates(conn, params) do
- q = try do
- case String.to_integer(params["queries"]) do
- x when x < 1 -> 1
- x when x > 500 -> 500
- x -> x
- end
- rescue
- ArgumentError -> 1
- end
- conn
- |> put_resp_content_type("application/json", nil)
- |> send_resp(200, Poison.encode!(Enum.map(1..q, fn _ ->
- id = :rand.uniform(10000)
- num = :rand.uniform(10000)
- w = Repo.get(World, id)
- changeset = World.changeset(w, %{randomnumber: num})
- Repo.update(changeset)
- %{id: id, randomnumber: num}
- end)))
- end
- def plaintext(conn, _params) do
- conn
- |> put_resp_content_type("text/plain", nil)
- |> send_resp(200, "Hello, world!")
- end
- end
|