Completed
Push — master ( 8e9c64...20353b )
by Florent
04:07
created

EncrypterFactory::createEncrypter()   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 1
1
<?php
2
3
/*
4
 * The MIT License (MIT)
5
 *
6
 * Copyright (c) 2014-2015 Spomky-Labs
7
 *
8
 * This software may be modified and distributed under the terms
9
 * of the MIT license.  See the LICENSE file for details.
10
 */
11
12
namespace SpomkyLabs\JoseBundle\Factory;
13
14
15
use Jose\Algorithm\JWAManagerInterface;
16
use Jose\Compression\CompressionManagerInterface;
17
use Jose\Encrypter;
18
use Jose\Payload\PayloadConverterManagerInterface;
19
20
final class EncrypterFactory
21
{
22
    /**
23
     * @var \Jose\Payload\PayloadConverterManagerInterface
24
     */
25
    private $payload_converter;
26
27
    /**
28
     * @var \Jose\Compression\CompressionManagerInterface
29
     */
30
    private $compression_manager;
31
32
    /**
33
     * DecrypterFactory constructor.
34
     *
35
     * @param \Jose\Payload\PayloadConverterManagerInterface $payload_converter
36
     * @param \Jose\Compression\CompressionManagerInterface  $compression_manager
37
     */
38
    public function __construct(PayloadConverterManagerInterface $payload_converter, CompressionManagerInterface $compression_manager)
39
    {
40
        $this->compression_manager = $compression_manager;
41
        $this->payload_converter = $payload_converter;
42
    }
43
44
    /**
45
     * @param \Jose\Algorithm\JWAManagerInterface $jwa_manager
46
     *
47
     * @return \Jose\Encrypter
48
     */
49
    public function createEncrypter(JWAManagerInterface $jwa_manager)
50
    {
51
        return new Encrypter($jwa_manager, $this->payload_converter, $this->compression_manager);
52
    }
53
}
54