From 62c4f2fa0bdcff6568d4153dfd3d7861d4fd23b7 Mon Sep 17 00:00:00 2001
From: Berkus <berkus@gmail.com>
Date: Fri, 23 May 2014 03:29:33 +0300
Subject: [PATCH] Add support for parsed JSON property in Request.

---
 flight/net/Request.php | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/flight/net/Request.php b/flight/net/Request.php
index 1947b37..81c64a3 100644
--- a/flight/net/Request.php
+++ b/flight/net/Request.php
@@ -28,7 +28,8 @@ use flight\util\Collection;
  *   type - The content type
  *   length - The content length
  *   query - Query string parameters
- *   data - Post parameters 
+ *   data - Post parameters
+ *   json - JSON decoded body for application/json requests
  *   cookies - Cookie parameters
  *   files - Uploaded files
  */
@@ -98,6 +99,11 @@ class Request {
      */
     public $data;
 
+    /**
+     * @var \flight\util\Collection JSON decoded body
+     */
+    public $json;
+
     /**
      * @var \flight\util\Collection Cookie parameters
      */
@@ -178,6 +184,14 @@ class Request {
 
             $this->query->setData($_GET);
         }
+
+        if ($this->type == 'application/json' && $this->body != '')
+        {
+            $v = json_decode($this->body, true);
+            if ($v) {
+                $this->json = /*new Collection(*/$v;//);
+            }
+        }
     }
 
     /**