ServerServiceProvider   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

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

1 Method

Rating   Name   Duplication   Size   Complexity  
A register() 0 20 1
1
<?php
2
3
namespace YEntWeChat\Foundation\ServiceProviders;
4
5
use YEntWeChat\Encryption\Encryptor;
6
use YEntWeChat\Server\Guard;
7
use Pimple\Container;
8
use Pimple\ServiceProviderInterface;
9
10
/**
11
 * Class ServerServiceProvider.
12
 */
13
class ServerServiceProvider implements ServiceProviderInterface
14
{
15
    /**
16
     * Registers services on the given container.
17
     *
18
     * This method should only be used to configure services and parameters.
19
     * It should not get services.
20
     *
21
     * @param Container $pimple A container instance
22
     */
23
    public function register(Container $pimple)
24
    {
25
        $pimple['encryptor'] = function ($pimple) {
26
            return new Encryptor(
27
                $pimple['config']['corp_id'],
28
                $pimple['config']['token'],
29
                $pimple['config']['aes_key']
30
            );
31
        };
32
33
        $pimple['server'] = function ($pimple) {
34
            $server = new Guard($pimple['config']['token']);
35
36
            $server->debug($pimple['config']['debug']);
37
38
            $server->setEncryptor($pimple['encryptor']);
39
40
            return $server;
41
        };
42
    }
43
}
44