BookingServiceFactory::createService()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 15
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 15
rs 9.4285
cc 1
eloc 11
nc 1
nop 1
1
<?php
2
3
namespace JhFlexiTime\Service\Factory;
4
5
use JhFlexiTime\Service\BookingService;
6
use JhFlexiTime\Stdlib\Hydrator\Strategy\UserStrategy;
7
use Zend\ServiceManager\FactoryInterface;
8
use Zend\ServiceManager\ServiceLocatorInterface;
9
use JhFlexiTime\Stdlib\Hydrator\DoctrineObject as DoctrineHydrator;
10
11
/**
12
 * Class BookingServiceFactory
13
 * @package JhFlexiTime\Service\Factory
14
 * @author Aydin Hassan <[email protected]>
15
 */
16
class BookingServiceFactory implements FactoryInterface
17
{
18
    /**
19
     * @param ServiceLocatorInterface $serviceLocator
20
     * @return BookingService
21
     */
22
    public function createService(ServiceLocatorInterface $serviceLocator)
23
    {
24
        $objectManager  = $serviceLocator->get('JhFlexiTime\ObjectManager');
25
        $hydrator       = new DoctrineHydrator($objectManager, 'JhFlexiTime\Entity\Booking');
0 ignored issues
show
Documentation introduced by
$objectManager is of type object|array, but the function expects a object<Doctrine\Common\Persistence\ObjectManager>.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
Documentation introduced by
'JhFlexiTime\\Entity\\Booking' is of type string, but the function expects a boolean.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
26
        $hydrator->addStrategy('user', new UserStrategy($serviceLocator->get('JhUser\Repository\UserRepository')));
0 ignored issues
show
Documentation introduced by
$serviceLocator->get('Jh...itory\\UserRepository') is of type object|array, but the function expects a object<JhUser\Repository\UserRepositoryInterface>.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
27
28
        return new BookingService(
29
            $serviceLocator->get('FlexiOptions'),
0 ignored issues
show
Documentation introduced by
$serviceLocator->get('FlexiOptions') is of type object|array, but the function expects a object<JhFlexiTime\Options\ModuleOptions>.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
30
            $serviceLocator->get('JhFlexiTime\Repository\BookingRepository'),
0 ignored issues
show
Documentation introduced by
$serviceLocator->get('Jh...ry\\BookingRepository') is of type object|array, but the function expects a object<JhFlexiTime\Repos...ingRepositoryInterface>.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
31
            $objectManager,
0 ignored issues
show
Documentation introduced by
$objectManager is of type object|array, but the function expects a object<Doctrine\Common\Persistence\ObjectManager>.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
32
            $serviceLocator->get('JhFlexiTime\Service\PeriodService'),
0 ignored issues
show
Documentation introduced by
$serviceLocator->get('Jh...ervice\\PeriodService') is of type object|array, but the function expects a object<JhFlexiTime\Servi...PeriodServiceInterface>.

It seems like the type of the argument is not accepted by the function/method which you are calling.

In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.

We suggest to add an explicit type cast like in the following example:

function acceptsInteger($int) { }

$x = '123'; // string "123"

// Instead of
acceptsInteger($x);

// we recommend to use
acceptsInteger((integer) $x);
Loading history...
33
            $hydrator,
34
            $serviceLocator->get('InputFilterManager')->get('JhFlexiTime\InputFilter\BookingInputFilter')
35
        );
36
    }
37
}
38