Completed
Push — master ( c915d2...2ad4b2 )
by Alexander
04:32
created

RespondsWithJson   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 0
dl 0
loc 27
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A successResponse() 0 4 1
A errorResponse() 0 4 1
1
<?php
2
3
namespace Flugg\Responder\Traits;
4
5
use Illuminate\Http\JsonResponse;
6
use Flugg\Responder\Contracts\Responder;
7
8
/**
9
 * A trait you may apply to your controllers for quick access to the responder.
10
 *
11
 * @package Laravel Responder
12
 * @author  Alexander Tømmerås <[email protected]>
13
 * @license The MIT License
14
 */
15
trait RespondsWithJson
16
{
17
    /**
18
     * Generate a successful JSON response.
19
     *
20
     * @param  mixed $data
21
     * @param  int   $statusCode
22
     * @return JsonResponse
23
     */
24
    public function successResponse( $data = null, int $statusCode = 200 ):JsonResponse
25
    {
26
        return app( Responder::class )->success( $data, $statusCode );
27
    }
28
29
    /**
30
     * Generate an error JSON response.
31
     *
32
     * @param  string $error
33
     * @param  int    $statusCode
34
     * @param  mixed  $message
35
     * @return JsonResponse
36
     */
37
    public function errorResponse( string $error, int $statusCode = 404, $message = null ):JsonResponse
38
    {
39
        return app( Responder::class )->error( $error, $statusCode, $message );
40
    }
41
}