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 — autocomplete-events ( be4e89 )
by Eric
02:27
created

PlaceAutocompleteHelperBuilder::build()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
3
/*
4
 * This file is part of the Ivory Google Map package.
5
 *
6
 * (c) Eric GELOEN <[email protected]>
7
 *
8
 * For the full copyright and license information, please read the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace Ivory\GoogleMap\Helper\Builder;
13
14
use Ivory\GoogleMap\Helper\Collector\Place\Base\AutocompleteBoundCollector;
15
use Ivory\GoogleMap\Helper\Collector\Place\Base\AutocompleteCoordinateCollector;
16
use Ivory\GoogleMap\Helper\Collector\Place\Event\AutocompleteDomEventCollector;
17
use Ivory\GoogleMap\Helper\Collector\Place\Event\AutocompleteDomEventOnceCollector;
18
use Ivory\GoogleMap\Helper\Collector\Place\Event\AutocompleteEventCollector;
19
use Ivory\GoogleMap\Helper\Collector\Place\Event\AutocompleteEventOnceCollector;
20
use Ivory\GoogleMap\Helper\PlaceAutocompleteHelper;
21
use Ivory\GoogleMap\Helper\Renderer\Base\BoundRenderer;
22
use Ivory\GoogleMap\Helper\Renderer\Base\CoordinateRenderer;
23
use Ivory\GoogleMap\Helper\Renderer\Event\DomEventOnceRenderer;
24
use Ivory\GoogleMap\Helper\Renderer\Event\DomEventRenderer;
25
use Ivory\GoogleMap\Helper\Renderer\Event\EventOnceRenderer;
26
use Ivory\GoogleMap\Helper\Renderer\Event\EventRenderer;
27
use Ivory\GoogleMap\Helper\Renderer\Html\JavascriptTagRenderer;
28
use Ivory\GoogleMap\Helper\Renderer\Html\TagRenderer;
29
use Ivory\GoogleMap\Helper\Renderer\Place\AutocompleteContainerRenderer;
30
use Ivory\GoogleMap\Helper\Renderer\Place\AutocompleteHtmlRenderer;
31
use Ivory\GoogleMap\Helper\Renderer\Place\AutocompleteRenderer;
32
use Ivory\GoogleMap\Helper\Renderer\Utility\CallbackRenderer;
33
use Ivory\GoogleMap\Helper\Renderer\Utility\RequirementRenderer;
34
use Ivory\GoogleMap\Helper\Subscriber\Place\AutocompleteContainerSubscriber;
35
use Ivory\GoogleMap\Helper\Subscriber\Place\AutocompleteHtmlSubscriber;
36
use Ivory\GoogleMap\Helper\Subscriber\Place\AutocompleteInitSubscriber;
37
use Ivory\GoogleMap\Helper\Subscriber\Place\AutocompleteJavascriptSubscriber;
38
use Ivory\GoogleMap\Helper\Subscriber\Place\AutocompleteSubscriber;
39
use Ivory\GoogleMap\Helper\Subscriber\Place\Base\AutocompleteBaseSubscriber;
40
use Ivory\GoogleMap\Helper\Subscriber\Place\Base\AutocompleteBoundSubscriber;
41
use Ivory\GoogleMap\Helper\Subscriber\Place\Base\AutocompleteCoordinateSubscriber;
42
use Ivory\GoogleMap\Helper\Subscriber\Place\Event\AutocompleteDomEventOnceSubscriber;
43
use Ivory\GoogleMap\Helper\Subscriber\Place\Event\AutocompleteDomEventSubscriber;
44
use Ivory\GoogleMap\Helper\Subscriber\Place\Event\AutocompleteEventOnceSubscriber;
45
use Ivory\GoogleMap\Helper\Subscriber\Place\Event\AutocompleteEventSubscriber;
46
use Ivory\GoogleMap\Helper\Subscriber\Place\Event\AutocompleteSimpleEventSubscriber;
47
48
/**
49
 * @author GeLo <[email protected]>
50
 */
51
class PlaceAutocompleteHelperBuilder extends AbstractHelperBuilder
52
{
53
    /**
54
     * @return PlaceAutocompleteHelper
55
     */
56
    public function build()
57
    {
58
        return new PlaceAutocompleteHelper($this->createEventDispatcher());
59
    }
60
61
    /**
62
     * {@inheritdoc}
63
     */
64
    protected function createSubscribers()
65
    {
66
        $formatter = $this->getFormatter();
67
        $jsonBuilder = $this->getJsonBuilder();
68
69
        // Base collectors
70
        $boundCollector = new AutocompleteBoundCollector();
71
        $coordinateCollector = new AutocompleteCoordinateCollector($boundCollector);
72
73
        // Event collectors
74
        $domEventCollector = new AutocompleteDomEventCollector();
75
        $domEventOnceCollector = new AutocompleteDomEventOnceCollector();
76
        $eventCollector = new AutocompleteEventCollector();
77
        $eventOnceCollector = new AutocompleteEventOnceCollector();
78
79
        // Base renderers
80
        $coordinateRenderer = new CoordinateRenderer($formatter);
81
        $boundRenderer = new BoundRenderer($formatter);
82
83
        // Event renderers
84
        $domEventOnceRenderer = new DomEventOnceRenderer($formatter);
85
        $domEventRenderer = new DomEventRenderer($formatter);
86
        $eventOnceRenderer = new EventOnceRenderer($formatter);
87
        $eventRenderer = new EventRenderer($formatter);
88
89
        // Html renderers
90
        $tagRenderer = new TagRenderer($formatter);
91
        $autocompleteHtmlRenderer = new AutocompleteHtmlRenderer($formatter, $tagRenderer);
92
        $javascriptTagRenderer = new JavascriptTagRenderer($formatter, $tagRenderer);
93
94
        // Utility renderers
95
        $callbackRenderer = new CallbackRenderer($formatter);
96
        $requirementRenderer = new RequirementRenderer($formatter);
97
98
        // Autocomplete renderers
99
        $autocompleteContainerRenderer = new AutocompleteContainerRenderer($formatter, $jsonBuilder);
100
        $autocompleteRenderer = new AutocompleteRenderer($formatter, $jsonBuilder, $requirementRenderer);
101
102
        return array_merge([
103
            // Base
104
            new AutocompleteBaseSubscriber($formatter),
105
            new AutocompleteCoordinateSubscriber($formatter, $coordinateCollector, $coordinateRenderer),
106
            new AutocompleteBoundSubscriber($formatter, $boundCollector, $boundRenderer),
107
108
            // Event
109
            new AutocompleteDomEventOnceSubscriber($formatter, $domEventOnceCollector, $domEventOnceRenderer),
110
            new AutocompleteDomEventSubscriber($formatter, $domEventCollector, $domEventRenderer),
111
            new AutocompleteEventOnceSubscriber($formatter, $eventOnceCollector, $eventOnceRenderer),
112
            new AutocompleteEventSubscriber($formatter),
113
            new AutocompleteSimpleEventSubscriber($formatter, $eventCollector, $eventRenderer),
114
115
            // Autocomplete
116
            new AutocompleteContainerSubscriber($formatter, $autocompleteContainerRenderer),
117
            new AutocompleteHtmlSubscriber($formatter, $autocompleteHtmlRenderer),
118
            new AutocompleteInitSubscriber($formatter),
119
            new AutocompleteJavascriptSubscriber(
120
                $formatter,
121
                $autocompleteRenderer,
122
                $callbackRenderer,
123
                $javascriptTagRenderer
124
            ),
125
            new AutocompleteSubscriber($formatter, $autocompleteRenderer),
126
        ], parent::createSubscribers());
127
    }
128
}
129