nitcorn clients: remove `write_to_string` when a Writable is given as body
[nit.git] / lib / popcorn / pop_handlers.nit
index 6b1e825..cd7a380 100644 (file)
@@ -18,8 +18,6 @@
 module pop_handlers
 
 import pop_routes
-import json::static
-import json
 import csv
 
 # Class handler for a route.
@@ -433,7 +431,7 @@ redef class HttpResponse
        # Write data in body response and send it.
        fun send(raw_data: nullable Writable, status: nullable Int) do
                if raw_data != null then
-                       body += raw_data.write_to_string
+                       body = raw_data
                end
                if status != null then
                        status_code = status
@@ -450,16 +448,6 @@ redef class HttpResponse
                send(html, status)
        end
 
-       # Write data as JSON and set the right content type header.
-       fun json(json: nullable Serializable, status: nullable Int) do
-               header["Content-Type"] = media_types["json"].as(not null)
-               if json == null then
-                       send(null, status)
-               else
-                       send(json.to_json, status)
-               end
-       end
-
        # Write data as CSV and set the right content type header.
        fun csv(csv: nullable CsvDocument, status: nullable Int) do
                header["Content-Type"] = media_types["csv"].as(not null)
@@ -470,16 +458,6 @@ redef class HttpResponse
                end
        end
 
-       # Write error as JSON.
-       #
-       # Format: `{"message": message, "status": status}`
-       fun json_error(message: String, status: Int) do
-               var obj = new JsonObject
-               obj["status"] = status
-               obj["message"] = message
-               json(obj, status)
-       end
-
        # Redirect response to `location`
        #
        # Use by default 303 See Other as it is the RFC