GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.
Completed
Push — master ( 1e6936...02d28b )
by Maxime
02:50
created

ResponseServiceProvider::getSerializer()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
3
namespace EllipseSynergie\ApiResponse\Laravel;
4
5
use EllipseSynergie\ApiResponse\Serializer\Serializer;
6
use Illuminate\Support\ServiceProvider;
7
use League\Fractal\Manager;
8
9
/**
10
 * Class ResponseServiceProvider
11
 *
12
 * For the full copyright and license information, please view the LICENSE
13
 * file that was distributed with this source code.
14
 *
15
 * @package EllipseSynergie\ApiResponse\Laravel
16
 * @author Maxime Beaudoin <[email protected]>
17
 */
18
class ResponseServiceProvider extends ServiceProvider
19
{
20
    /**
21
     * Register the service provider.
22
     *
23
     * @return void
24
     */
25
    public function boot()
26
    {
27
        $response = $this->bootResponse();
28
        $this->registerMacro($response);
0 ignored issues
show
Deprecated Code introduced by
The method EllipseSynergie\ApiRespo...ovider::registerMacro() has been deprecated with message: We still register macro for backward compatibility, but DO NOT USE THIS MACRO ANYMORE !

This method has been deprecated. The supplier of the class has supplied an explanatory message.

The explanatory message should give you some clue as to whether and when the method will be removed from the class and what other method or class to use instead.

Loading history...
29
    }
30
31
    /**
32
     * Override this to use your own serializer.
33
     *
34
     * @return Serializer
35
     */
36
    protected function getSerializer()
37
    {
38
        return new Serializer();
39
    }
40
41
    /**
42
     * Boot response
43
     *
44
     * @return Response
45
     */
46
    protected function bootResponse()
47
    {
48
        $manager = new Manager;
49
50
        // Custom serializer because DataArraySerializer doesn't provide the opportunity to change the resource key
51
        $manager->setSerializer($this->getSerializer());
52
53
        // Are we going to try and include embedded data?
54
        $manager->parseIncludes(explode(',', $this->app['Illuminate\Http\Request']->get('include')));
55
56
        // Return the Response object
57
        $response = new Response($manager);
58
59
        //Set the response instance properly
60
        $this->app->instance('EllipseSynergie\ApiResponse\Contracts\Response', $response);
61
62
        return $response;
63
    }
64
65
    /**
66
     * Register the service provider.
67
     *
68
     * @return void
69
     */
70
    public function register()
71
    {
72
        //
73
    }
74
75
    /**
76
     * Register response macro
77
     *
78
     * @deprecated We still register macro for backward compatibility, but DO NOT USE THIS MACRO ANYMORE !
79
     * @param Response $response
80
     */
81
    private function registerMacro($response)
82
    {
83
        \Response::macro('api', function () use ($response) {
0 ignored issues
show
Bug introduced by
The method macro() does not seem to exist on object<Illuminate\Contra...outing\ResponseFactory>.

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
84
            return $response;
85
        });
86
    }
87
}
88