Encryption   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 42
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 33.33%

Importance

Changes 0
Metric Value
wmc 3
lcom 0
cbo 0
dl 0
loc 42
ccs 2
cts 6
cp 0.3333
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A setEncryption() 0 9 2
A getEncryption() 0 5 1
1
<?php namespace Comodojo\RpcClient\Traits;
2
3
use \Exception;
4
5
/**
6
 * @package     Comodojo Spare Parts
7
 * @author      Marco Giovinazzi <[email protected]>
8
 * @license     MIT
9
 *
10
 * LICENSE:
11
 *
12
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
18
 * THE SOFTWARE.
19
 */
20
21
trait Encryption {
22
23
    /**
24
     * Enable comodojo encrypted transport
25
     *
26
     * @var mixed
27
     */
28
    private $encryption = false;
29
30
    /**
31
     * Set encryption key
32
     *
33
     * This will enable the NOT-STANDARD payload encryption
34
     *
35
     * @param string $key
36
     *  Encryption key
37
     *
38
     * @return self
39
     * @throws Exception
40
     */
41
    public function setEncryption($key) {
42
43
        if ( empty($key) ) throw new Exception("Shared key cannot be empty");
44
45
        $this->encryption = $key;
46
47
        return $this;
48
49
    }
50
51
    /**
52
     * Get encryption key
53
     *
54
     * @return string
55
     */
56 63
    public function getEncryption() {
57
58 63
        return $this->encryption;
59
60
    }
61
62
}
63