Completed
Pull Request — master (#292)
by Carlos
05:19 queued 02:03
created

ServerServiceProvider   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 1
c 1
b 0
f 1
lcom 0
cbo 2
dl 0
loc 28
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A register() 0 17 1
1
<?php
2
3
/*
4
 * This file is part of the overtrue/wechat.
5
 *
6
 * (c) overtrue <[email protected]>
7
 *
8
 * This source file is subject to the MIT license that is bundled
9
 * with this source code in the file LICENSE.
10
 */
11
12
/**
13
 * ServerServiceProvider.php.
14
 *
15
 * Part of Overtrue\WeChat.
16
 *
17
 * For the full copyright and license information, please view the LICENSE
18
 * file that was distributed with this source code.
19
 *
20
 * @author    overtrue <[email protected]>
21
 * @copyright 2015
22
 *
23
 * @link      https://github.com/overtrue/wechat
24
 * @link      http://overtrue.me
25
 */
26
namespace EasyWeChat\Foundation\ServiceProviders;
27
28
use EasyWeChat\Encryption\Encryptor;
29
use EasyWeChat\Server\Guard;
30
use Pimple\Container;
31
use Pimple\ServiceProviderInterface;
32
33
/**
34
 * Class ServerServiceProvider.
35
 */
36
class ServerServiceProvider implements ServiceProviderInterface
37
{
38
    /**
39
     * Registers services on the given container.
40
     *
41
     * This method should only be used to configure services and parameters.
42
     * It should not get services.
43
     *
44
     * @param Container $pimple A container instance
45
     */
46
    public function register(Container $pimple)
47
    {
48
        $pimple['encryptor'] = function ($pimple) {
49
            return new Encryptor(
50
                $pimple['config']['app_id'],
51
                $pimple['config']['token'],
52
                $pimple['config']['aes_key']
53
            );
54
        };
55
56
        $pimple['server'] = function ($pimple) {
57
            $server = new Guard();
58
            $server->setEncryptor($pimple['encryptor']);
59
60
            return $server;
61
        };
62
    }
63
}
64