Completed
Pull Request — master (#2109)
by
unknown
48:22
created

EccubeServiceProvider   C

Complexity

Total Complexity 5

Size/Duplication

Total Lines 373
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 103

Test Coverage

Coverage 96.8%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
c 2
b 0
f 0
dl 0
loc 373
ccs 242
cts 250
cp 0.968
rs 5
wmc 5
lcom 0
cbo 103

2 Methods

Rating   Name   Duplication   Size   Complexity  
B register() 0 351 4
A boot() 0 3 1
1
<?php
2
/*
3
 * This file is part of EC-CUBE
4
 *
5
 * Copyright(c) 2000-2015 LOCKON CO.,LTD. All Rights Reserved.
6
 *
7
 * http://www.lockon.co.jp/
8
 *
9
 * This program is free software; you can redistribute it and/or
10
 * modify it under the terms of the GNU General Public License
11
 * as published by the Free Software Foundation; either version 2
12
 * of the License, or (at your option) any later version.
13
 *
14
 * This program is distributed in the hope that it will be useful,
15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
 * GNU General Public License for more details.
18
 *
19
 * You should have received a copy of the GNU General Public License
20
 * along with this program; if not, write to the Free Software
21
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22
 */
23
24
25
namespace Eccube\ServiceProvider;
26
27
use Eccube\Application;
28
use Silex\Application as BaseApplication;
29
use Silex\ServiceProviderInterface;
30
31
class EccubeServiceProvider implements ServiceProviderInterface
0 ignored issues
show
introduced by
Missing class doc comment
Loading history...
32
{
33
    /**
34
     * Registers services on the given app.
35
     *
36
     * This method should only be used to configure services and parameters.
37
     * It should not get services.
38
     *
39
     * @param BaseApplication $app An Application instance
40
     */
41 1185
    public function register(BaseApplication $app)
42
    {
43
        // Service
44
        $app['eccube.service.system'] = $app->share(function () use ($app) {
45 2
            return new \Eccube\Service\SystemService($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
46 1185
        });
47
        $app['view'] = $app->share(function () use ($app) {
48
            return $app['twig'];
49 1185
        });
50
        $app['eccube.service.cart'] = $app->share(function () use ($app) {
51 268
            return new \Eccube\Service\CartService($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
52 1185
        });
53
        $app['eccube.service.order'] = $app->share(function () use ($app) {
54 119
            return new \Eccube\Service\OrderService($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
Deprecated Code introduced by
The class Eccube\Service\OrderService has been deprecated with message: since 3.0.0, to be removed in 3.1

This class, trait or interface has been deprecated. The supplier of the file has supplied an explanatory message.

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

Loading history...
55 1185
        });
56
        $app['eccube.service.tax_rule'] = $app->share(function () use ($app) {
57 55
            return new \Eccube\Service\TaxRuleService($app['eccube.repository.tax_rule']);
58 1185
        });
59
        $app['eccube.service.plugin'] = $app->share(function () use ($app) {
60 150
            return new \Eccube\Service\PluginService($app);
61 1185
        });
62
        $app['eccube.service.mail'] = $app->share(function () use ($app) {
63 51
            return new \Eccube\Service\MailService($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
64 1185
        });
65
        $app['eccube.service.csv.export'] = $app->share(function () use ($app) {
66 2
            $csvService = new \Eccube\Service\CsvExportService();
67 2
            $csvService->setEntityManager($app['orm.em']);
68 2
            $csvService->setConfig($app['config']);
69 2
            $csvService->setCsvRepository($app['eccube.repository.csv']);
70 2
            $csvService->setCsvTypeRepository($app['eccube.repository.master.csv_type']);
71 2
            $csvService->setOrderRepository($app['eccube.repository.order']);
72 2
            $csvService->setCustomerRepository($app['eccube.repository.customer']);
73 2
            $csvService->setProductRepository($app['eccube.repository.product']);
74
75 2
            return $csvService;
76 1185
        });
77
        $app['eccube.service.shopping'] = $app->share(function () use ($app) {
78 115
            return new \Eccube\Service\ShoppingService($app, $app['eccube.service.cart'], $app['eccube.service.order']);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
79 1185
        });
80
81
        // Repository
82
        $app['eccube.repository.master.authority'] = $app->share(function () use ($app) {
83 228
            return $app['orm.em']->getRepository('Eccube\Entity\Master\Authority');
84 1185
        });
85
        $app['eccube.repository.master.tag'] = $app->share(function () use ($app) {
86 4
            return $app['orm.em']->getRepository('Eccube\Entity\Master\Tag');
87 1185
        });
88
        $app['eccube.repository.master.pref'] = $app->share(function () use ($app) {
89 402
            return $app['orm.em']->getRepository('Eccube\Entity\Master\Pref');
90 1185
        });
91
        $app['eccube.repository.master.sex'] = $app->share(function () use ($app) {
92 362
            return $app['orm.em']->getRepository('Eccube\Entity\Master\Sex');
93 1185
        });
94
        $app['eccube.repository.master.disp'] = $app->share(function () use ($app) {
95 331
            return $app['orm.em']->getRepository('Eccube\Entity\Master\Disp');
96 1185
        });
97
        $app['eccube.repository.master.product_type'] = $app->share(function () use ($app) {
98 346
            return $app['orm.em']->getRepository('Eccube\Entity\Master\ProductType');
99 1185
        });
100
        $app['eccube.repository.master.page_max'] = $app->share(function () use ($app) {
101 24
            return $app['orm.em']->getRepository('Eccube\Entity\Master\PageMax');
102 1185
        });
103
        $app['eccube.repository.master.product_list_max'] = $app->share(function () use ($app) {
104
            return $app['orm.em']->getRepository('Eccube\Entity\Master\ProductListMax');
105 1185
        });
106
        $app['eccube.repository.master.product_list_order_by'] = $app->share(function () use ($app) {
107
            return $app['orm.em']->getRepository('Eccube\Entity\Master\ProductListOrderBy');
108 1185
        });
109
        $app['eccube.repository.master.order_status'] = $app->share(function () use ($app) {
110 3
            return $app['orm.em']->getRepository('Eccube\Entity\Master\OrderStatus');
111 1185
        });
112
        $app['eccube.repository.master.device_type'] = $app->share(function () use ($app) {
113 313
            return $app['orm.em']->getRepository('Eccube\Entity\Master\DeviceType');
114 1185
        });
115
        $app['eccube.repository.master.csv_type'] = $app->share(function () use ($app) {
116 30
            return $app['orm.em']->getRepository('Eccube\Entity\Master\CsvType');
117 1185
        });
118
119
        $app['eccube.repository.delivery'] = $app->share(function () use ($app) {
120 205
            return $app['orm.em']->getRepository('Eccube\Entity\Delivery');
121 1185
        });
122
        $app['eccube.repository.delivery_date'] = $app->share(function () use ($app) {
123 318
            return $app['orm.em']->getRepository('Eccube\Entity\DeliveryDate');
124 1185
        });
125
        $app['eccube.repository.delivery_fee'] = $app->share(function () use ($app) {
126 230
            return $app['orm.em']->getRepository('Eccube\Entity\DeliveryFee');
127 1185
        });
128
        $app['eccube.repository.delivery_time'] = $app->share(function () use ($app) {
129
            return $app['orm.em']->getRepository('Eccube\Entity\DeliveryTime');
130 1185
        });
131
        $app['eccube.repository.payment'] = $app->share(function () use ($app) {
132 245
            return $app['orm.em']->getRepository('Eccube\Entity\Payment');
133 1185
        });
134
        $app['eccube.repository.payment_option'] = $app->share(function () use ($app) {
135 2
            return $app['orm.em']->getRepository('Eccube\Entity\PaymentOption');
136 1185
        });
137
        $app['eccube.repository.category'] = $app->share(function () use ($app) {
138 416
            $CategoryRepository = $app['orm.em']->getRepository('Eccube\Entity\Category');
139 416
            $CategoryRepository->setApplication($app);
140
141 416
            return $CategoryRepository;
142 1185
        });
143
        $app['eccube.repository.customer'] = $app->share(function () use ($app) {
144 373
            return $app['orm.em']->getRepository('Eccube\Entity\Customer');
145 1185
        });
146
        $app['eccube.repository.news'] = $app->share(function () use ($app) {
147 20
            return $app['orm.em']->getRepository('Eccube\Entity\News');
148 1185
        });
149
        $app['eccube.repository.mail_history'] = $app->share(function () use ($app) {
150 10
            return $app['orm.em']->getRepository('Eccube\Entity\MailHistory');
151 1185
        });
152
        $app['eccube.repository.member'] = $app->share(function () use ($app) {
153 589
            $memberRepository = $app['orm.em']->getRepository('Eccube\Entity\Member');
154 589
            $memberRepository->setEncoderFactorty($app['security.encoder_factory']);
155 589
            return $memberRepository;
0 ignored issues
show
introduced by
Missing blank line before return statement
Loading history...
156 1185
        });
157
        $app['eccube.repository.order'] = $app->share(function () use ($app) {
158
            return $app['orm.em']->getRepository('Eccube\Entity\Order');
159 1185
        });
160
        $app['eccube.repository.product'] = $app->share(function () use ($app) {
161 95
            $productRepository = $app['orm.em']->getRepository('Eccube\Entity\Product');
162 95
            $productRepository->setApplication($app);
163
164 95
            return $productRepository;
165 1185
        });
166
        $app['eccube.repository.product_image'] = $app->share(function () use ($app) {
167
            return $app['orm.em']->getRepository('Eccube\Entity\ProductImage');
168 1185
        });
169
        $app['eccube.repository.product_class'] = $app->share(function () use ($app) {
170 38
            return $app['orm.em']->getRepository('Eccube\Entity\ProductClass');
171 1185
        });
172
        $app['eccube.repository.product_stock'] = $app->share(function () use ($app) {
173
            return $app['orm.em']->getRepository('Eccube\Entity\ProductStock');
174 1185
        });
175
        $app['eccube.repository.product_tag'] = $app->share(function () use ($app) {
176
            return $app['orm.em']->getRepository('Eccube\Entity\ProductTag');
177 1185
        });
178
        $app['eccube.repository.class_name'] = $app->share(function () use ($app) {
179 349
            return $app['orm.em']->getRepository('Eccube\Entity\ClassName');
180 1185
        });
181
        $app['eccube.repository.class_category'] = $app->share(function () use ($app) {
182 361
            return $app['orm.em']->getRepository('Eccube\Entity\ClassCategory');
183 1185
        });
184
        $app['eccube.repository.customer_favorite_product'] = $app->share(function () use ($app) {
185 660
            return $app['orm.em']->getRepository('Eccube\Entity\CustomerFavoriteProduct');
186 1185
        });
187
        $app['eccube.repository.base_info'] = $app->share(function () use ($app) {
188 786
            $BaseInfoRepository = $app['orm.em']->getRepository('Eccube\Entity\BaseInfo');
189 786
            $BaseInfoRepository->setApplication($app);
190
191 786
            return $BaseInfoRepository;
192 1185
        });
193
        $app['eccube.repository.tax_rule'] = $app->share(function () use ($app) {
194 274
            $taxRuleRepository = $app['orm.em']->getRepository('Eccube\Entity\TaxRule');
195 274
            $taxRuleRepository->setApplication($app);
196
197 274
            return $taxRuleRepository;
198 1185
        });
199
        $app['eccube.repository.page_layout'] = $app->share(function () use ($app) {
200 282
            $pageLayoutRepository = $app['orm.em']->getRepository('Eccube\Entity\PageLayout');
201 282
            $pageLayoutRepository->setApplication($app);
202
203 282
            return $pageLayoutRepository;
204 1185
        });
205
        $app['eccube.repository.block'] = $app->share(function () use ($app) {
206 14
            $blockRepository = $app['orm.em']->getRepository('Eccube\Entity\Block');
207 14
            $blockRepository->setApplication($app);
208
209 14
            return $blockRepository;
210 1185
        });
211
        $app['eccube.repository.order'] = $app->share(function () use ($app) {
212 194
            $orderRepository = $app['orm.em']->getRepository('Eccube\Entity\Order');
213 194
            $orderRepository->setApplication($app);
214
215 194
            return $orderRepository;
216 1185
        });
217
        $app['eccube.repository.customer_address'] = $app->share(function () use ($app) {
218 140
            return $app['orm.em']->getRepository('Eccube\Entity\CustomerAddress');
219 1185
        });
220
        $app['eccube.repository.shipping'] = $app->share(function () use ($app) {
221 34
            return $app['orm.em']->getRepository('Eccube\Entity\Shipping');
222 1185
        });
223
        $app['eccube.repository.customer_status'] = $app->share(function () use ($app) {
224 2
            return $app['orm.em']->getRepository('Eccube\Entity\Master\CustomerStatus');
225 1185
        });
226
        $app['eccube.repository.order_status'] = $app->share(function () use ($app) {
227 221
            return $app['orm.em']->getRepository('Eccube\Entity\Master\OrderStatus');
228 1185
        });
229
        $app['eccube.repository.mail_template'] = $app->share(function () use ($app) {
230 26
            return $app['orm.em']->getRepository('Eccube\Entity\MailTemplate');
231 1185
        });
232
        $app['eccube.repository.csv'] = $app->share(function () use ($app) {
233 8
            return $app['orm.em']->getRepository('Eccube\Entity\Csv');
234 1185
        });
235
        $app['eccube.repository.template'] = $app->share(function () use ($app) {
236 1
            return $app['orm.em']->getRepository('Eccube\Entity\Template');
237 1185
        });
238
        $app['eccube.repository.authority_role'] = $app->share(function () use ($app) {
239 306
            return $app['orm.em']->getRepository('Eccube\Entity\AuthorityRole');
240 1185
        });
241
242
        $app['paginator'] = $app->protect(function () {
243 41
            $paginator = new \Knp\Component\Pager\Paginator();
244 41
            $paginator->subscribe(new \Eccube\EventListener\PaginatorListener());
245
246 41
            return $paginator;
247 1185
        });
248
249
        $app['eccube.repository.help'] = $app->share(function () use ($app) {
250 10
            return $app['orm.em']->getRepository('Eccube\Entity\Help');
251 1185
        });
252
        $app['eccube.repository.plugin'] = $app->share(function () use ($app) {
253 8
            return $app['orm.em']->getRepository('Eccube\Entity\Plugin');
254 1185
        });
255
        $app['eccube.repository.plugin_event_handler'] = $app->share(function () use ($app) {
256 3
            return $app['orm.em']->getRepository('Eccube\Entity\PluginEventHandler');
257 1185
        });
258
        // em
259 1185
        if (isset($app['orm.em'])) {
260
            $app['orm.em'] = $app->share($app->extend('orm.em', function (\Doctrine\ORM\EntityManager $em, \Silex\Application $app) {
261
                // tax_rule
262 1185
                $taxRuleRepository = $em->getRepository('Eccube\Entity\TaxRule');
263 1185
                $taxRuleRepository->setApplication($app);
264 1185
                $taxRuleService = new \Eccube\Service\TaxRuleService($taxRuleRepository);
0 ignored issues
show
Compatibility introduced by
$taxRuleRepository of type object<Doctrine\ORM\EntityRepository> is not a sub-type of object<Eccube\Repository\TaxRuleRepository>. It seems like you assume a child class of the class Doctrine\ORM\EntityRepository to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
265 1185
                $em->getEventManager()->addEventSubscriber(new \Eccube\Doctrine\EventSubscriber\TaxRuleEventSubscriber($taxRuleService));
266
267
                // save
268 1185
                $saveEventSubscriber = new \Eccube\Doctrine\EventSubscriber\SaveEventSubscriber($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
269 1185
                $em->getEventManager()->addEventSubscriber($saveEventSubscriber);
270
271
                // clear cache
272 1185
                $clearCacheEventSubscriber = new \Eccube\Doctrine\EventSubscriber\ClearCacheEventSubscriber($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
273 1185
                $em->getEventManager()->addEventSubscriber($clearCacheEventSubscriber);
274
275
                // filters
276 1185
                $config = $em->getConfiguration();
277 1185
                $config->addFilter("soft_delete", '\Eccube\Doctrine\Filter\SoftDeleteFilter');
278 1185
                $config->addFilter("nostock_hidden", '\Eccube\Doctrine\Filter\NoStockHiddenFilter');
279 1185
                $config->addFilter("incomplete_order_status_hidden", '\Eccube\Doctrine\Filter\OrderStatusFilter');
280 1185
                $em->getFilters()->enable('soft_delete');
281
282 1185
                return $em;
283 1185
            }));
284
        }
285
286
        // Form\Type
287
        $app['form.type.extensions'] = $app->share($app->extend('form.type.extensions', function ($extensions) use ($app) {
288 659
            $extensions[] = new \Eccube\Form\Extension\HelpTypeExtension();
289 659
            $extensions[] = new \Eccube\Form\Extension\FreezeTypeExtension();
290
291 659
            return $extensions;
292 1185
        }));
293 1185
        $app['form.types'] = $app->share($app->extend('form.types', function ($types) use ($app) {
294 659
            $types[] = new \Eccube\Form\Type\NameType($app['config']);
295 659
            $types[] = new \Eccube\Form\Type\KanaType($app['config']);
296 659
            $types[] = new \Eccube\Form\Type\TelType($app['config']);
297 659
            $types[] = new \Eccube\Form\Type\FaxType(); // 削除予定
298 659
            $types[] = new \Eccube\Form\Type\ZipType($app['config']);
299 659
            $types[] = new \Eccube\Form\Type\AddressType($app['config']);
300 659
            $types[] = new \Eccube\Form\Type\RepeatedEmailType();
301 659
            $types[] = new \Eccube\Form\Type\RepeatedPasswordType($app['config']);
302 659
            $types[] = new \Eccube\Form\Type\PriceType($app['config']);
303
304 659
            $types[] = new \Eccube\Form\Type\MasterType();
305 659
            $types[] = new \Eccube\Form\Type\Master\JobType();
306 659
            $types[] = new \Eccube\Form\Type\Master\CustomerStatusType();
307 659
            $types[] = new \Eccube\Form\Type\Master\OrderStatusType();
308 659
            $types[] = new \Eccube\Form\Type\Master\CalcRuleType();
309 659
            $types[] = new \Eccube\Form\Type\Master\SexType();
310 659
            $types[] = new \Eccube\Form\Type\Master\DispType();
311 659
            $types[] = new \Eccube\Form\Type\Master\PrefType();
312 659
            $types[] = new \Eccube\Form\Type\Master\ProductTypeType();
313 659
            $types[] = new \Eccube\Form\Type\Master\ProductListMaxType();
314 659
            $types[] = new \Eccube\Form\Type\Master\ProductListOrderByType();
315 659
            $types[] = new \Eccube\Form\Type\Master\PageMaxType();
316 659
            $types[] = new \Eccube\Form\Type\Master\CsvType();
317 659
            $types[] = new \Eccube\Form\Type\Master\DeliveryDateType();
318 659
            $types[] = new \Eccube\Form\Type\Master\PaymentType();
319 659
            $types[] = new \Eccube\Form\Type\Master\MailTemplateType();
320 659
            $types[] = new \Eccube\Form\Type\Master\CategoryType();
321 659
            $types[] = new \Eccube\Form\Type\Master\TagType();
322
323 659
            $types[] = new \Eccube\Form\Type\CustomerType($app); // 削除予定
324
325 659
            if (isset($app['security']) && isset($app['eccube.repository.customer_favorite_product'])) {
326 659
                $types[] = new \Eccube\Form\Type\AddCartType($app['config'], $app['security'], $app['eccube.repository.customer_favorite_product']);
327
            }
328 659
            $types[] = new \Eccube\Form\Type\SearchProductType($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
329 659
            $types[] = new \Eccube\Form\Type\SearchProductBlockType($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
330 659
            $types[] = new \Eccube\Form\Type\OrderSearchType($app);
331 659
            $types[] = new \Eccube\Form\Type\ShippingItemType($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
332 659
            $types[] = new \Eccube\Form\Type\ShippingMultipleType($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
333 659
            $types[] = new \Eccube\Form\Type\ShippingMultipleItemType($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
334 659
            $types[] = new \Eccube\Form\Type\ShoppingType();
335
336
            // front
337 659
            $types[] = new \Eccube\Form\Type\Front\EntryType($app['config']);
338 659
            $types[] = new \Eccube\Form\Type\Front\ContactType($app['config']);
339 659
            $types[] = new \Eccube\Form\Type\Front\NonMemberType($app['config']);
340 659
            $types[] = new \Eccube\Form\Type\Front\ShoppingShippingType();
341 659
            $types[] = new \Eccube\Form\Type\Front\CustomerAddressType($app['config']);
342 659
            $types[] = new \Eccube\Form\Type\Front\ForgotType();
343 659
            $types[] = new \Eccube\Form\Type\Front\CustomerLoginType($app['session']);
344
345
            // admin
346 659
            $types[] = new \Eccube\Form\Type\Admin\LoginType($app['session']);
347 659
            $types[] = new \Eccube\Form\Type\Admin\ChangePasswordType($app);
348 659
            $types[] = new \Eccube\Form\Type\Admin\ProductType($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
349 659
            $types[] = new \Eccube\Form\Type\Admin\ProductClassType($app);
350 659
            $types[] = new \Eccube\Form\Type\Admin\SearchProductType($app);
351 659
            $types[] = new \Eccube\Form\Type\Admin\SearchCustomerType($app['config']);
352 659
            $types[] = new \Eccube\Form\Type\Admin\SearchOrderType($app['config']);
353 659
            $types[] = new \Eccube\Form\Type\Admin\CustomerType($app['config']);
354 659
            $types[] = new \Eccube\Form\Type\Admin\ClassNameType($app['config']);
355 659
            $types[] = new \Eccube\Form\Type\Admin\ClassCategoryType($app['config']);
356 659
            $types[] = new \Eccube\Form\Type\Admin\CategoryType($app['config']);
357 659
            $types[] = new \Eccube\Form\Type\Admin\MemberType($app['config']);
358 659
            $types[] = new \Eccube\Form\Type\Admin\AuthorityRoleType($app['config']);
359 659
            $types[] = new \Eccube\Form\Type\Admin\PageLayoutType();
360 659
            $types[] = new \Eccube\Form\Type\Admin\NewsType($app['config']);
361 659
            $types[] = new \Eccube\Form\Type\Admin\TemplateType($app['config']);
362 659
            $types[] = new \Eccube\Form\Type\Admin\SecurityType($app);
363 659
            $types[] = new \Eccube\Form\Type\Admin\CsvImportType($app);
364 659
            $types[] = new \Eccube\Form\Type\Admin\ShopMasterType($app['config']);
365 659
            $types[] = new \Eccube\Form\Type\Admin\TradelawType($app['config']);
366 659
            $types[] = new \Eccube\Form\Type\Admin\OrderType($app);
367 659
            $types[] = new \Eccube\Form\Type\Admin\OrderDetailType($app);
368 659
            $types[] = new \Eccube\Form\Type\Admin\ShippingType($app);
0 ignored issues
show
Compatibility introduced by
$app of type object<Silex\Application> is not a sub-type of object<Eccube\Application>. It seems like you assume a child class of the class Silex\Application to be always present.

This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.

Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.

Loading history...
369 659
            $types[] = new \Eccube\Form\Type\Admin\ShipmentItemType($app);
370 659
            $types[] = new \Eccube\Form\Type\Admin\PaymentRegisterType($app);
371 659
            $types[] = new \Eccube\Form\Type\Admin\TaxRuleType();
372 659
            $types[] = new \Eccube\Form\Type\Admin\MainEditType($app);
373 659
            $types[] = new \Eccube\Form\Type\Admin\MailType();
374 659
            $types[] = new \Eccube\Form\Type\Admin\CustomerAgreementType($app);
375 659
            $types[] = new \Eccube\Form\Type\Admin\BlockType($app);
376 659
            $types[] = new \Eccube\Form\Type\Admin\DeliveryType();
377 659
            $types[] = new \Eccube\Form\Type\Admin\DeliveryFeeType();
378 659
            $types[] = new \Eccube\Form\Type\Admin\DeliveryTimeType($app['config']);
379 659
            $types[] = new \Eccube\Form\Type\Admin\LogType($app['config']);
380 659
            $types[] = new \Eccube\Form\Type\Admin\CacheType($app['config']);
381
382 659
            $types[] = new \Eccube\Form\Type\Admin\MasterdataType($app);
383 659
            $types[] = new \Eccube\Form\Type\Admin\MasterdataDataType($app);
384 659
            $types[] = new \Eccube\Form\Type\Admin\MasterdataEditType($app);
385
386 659
            $types[] = new \Eccube\Form\Type\Admin\PluginLocalInstallType();
387 659
            $types[] = new \Eccube\Form\Type\Admin\PluginManagementType();
388
389 659
            return $types;
390 1185
        }));
391
    }
392
393
    /**
0 ignored issues
show
introduced by
Doc comment for parameter "$app" missing
Loading history...
394
     * Bootstraps the application.
395
     *
396
     * This method is called after all services are registered
397
     * and should be used for "dynamic" configuration (whenever
398
     * a service must be requested).
399
     */
400
    public function boot(BaseApplication $app)
401
    {
402
    }
403
}
404