My first commit of codes
This commit is contained in:
		
							
								
								
									
										86
									
								
								vendor/laravel/framework/src/Illuminate/Http/Response.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								vendor/laravel/framework/src/Illuminate/Http/Response.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,86 @@ | ||||
| <?php namespace Illuminate\Http; | ||||
|  | ||||
| use ArrayObject; | ||||
| use Illuminate\Contracts\Support\Jsonable; | ||||
| use Illuminate\Contracts\Support\Renderable; | ||||
| use Symfony\Component\HttpFoundation\Response as BaseResponse; | ||||
|  | ||||
| class Response extends BaseResponse { | ||||
|  | ||||
| 	use ResponseTrait; | ||||
|  | ||||
| 	/** | ||||
| 	 * The original content of the response. | ||||
| 	 * | ||||
| 	 * @var mixed | ||||
| 	 */ | ||||
| 	public $original; | ||||
|  | ||||
| 	/** | ||||
| 	 * Set the content on the response. | ||||
| 	 * | ||||
| 	 * @param  mixed  $content | ||||
| 	 * @return $this | ||||
| 	 */ | ||||
| 	public function setContent($content) | ||||
| 	{ | ||||
| 		$this->original = $content; | ||||
|  | ||||
| 		// If the content is "JSONable" we will set the appropriate header and convert | ||||
| 		// the content to JSON. This is useful when returning something like models | ||||
| 		// from routes that will be automatically transformed to their JSON form. | ||||
| 		if ($this->shouldBeJson($content)) | ||||
| 		{ | ||||
| 			$this->header('Content-Type', 'application/json'); | ||||
|  | ||||
| 			$content = $this->morphToJson($content); | ||||
| 		} | ||||
|  | ||||
| 		// If this content implements the "Renderable" interface then we will call the | ||||
| 		// render method on the object so we will avoid any "__toString" exceptions | ||||
| 		// that might be thrown and have their errors obscured by PHP's handling. | ||||
| 		elseif ($content instanceof Renderable) | ||||
| 		{ | ||||
| 			$content = $content->render(); | ||||
| 		} | ||||
|  | ||||
| 		return parent::setContent($content); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Morph the given content into JSON. | ||||
| 	 * | ||||
| 	 * @param  mixed   $content | ||||
| 	 * @return string | ||||
| 	 */ | ||||
| 	protected function morphToJson($content) | ||||
| 	{ | ||||
| 		if ($content instanceof Jsonable) return $content->toJson(); | ||||
|  | ||||
| 		return json_encode($content); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Determine if the given content should be turned into JSON. | ||||
| 	 * | ||||
| 	 * @param  mixed  $content | ||||
| 	 * @return bool | ||||
| 	 */ | ||||
| 	protected function shouldBeJson($content) | ||||
| 	{ | ||||
| 		return $content instanceof Jsonable || | ||||
| 			   $content instanceof ArrayObject || | ||||
| 			   is_array($content); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Get the original response content. | ||||
| 	 * | ||||
| 	 * @return mixed | ||||
| 	 */ | ||||
| 	public function getOriginalContent() | ||||
| 	{ | ||||
| 		return $this->original; | ||||
| 	} | ||||
|  | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 sujitprasad
					sujitprasad