Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
75.00% |
3 / 4 |
CRAP | |
77.78% |
14 / 18 |
| PostEncrypted | |
0.00% |
0 / 1 |
|
75.00% |
3 / 4 |
9.89 | |
77.78% |
14 / 18 |
| __construct($encrypter, $getPasswordCallback = NULL) | |
100.00% |
1 / 1 |
2 | |
100.00% |
4 / 4 |
|||
| setGetPasswordCallback($getPasswordCallback, $getPasswordcallbackArgs = array()) | |
100.00% |
1 / 1 |
2 | |
100.00% |
6 / 6 |
|||
| setGetPasswordCallbackArgs($getPasswordcallbackArgs = array()) | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
| offsetGet($offset) | |
0.00% |
0 / 1 |
8.74 | |
33.33% |
2 / 6 |
|||
| <?php | |
| /** | |
| * | |
| */ | |
| namespace aae\dispatch\receiver { | |
| /** | |
| * @author Axel Ancona Esselmann | |
| * @package aae\dispatch\receiver | |
| */ | |
| class PostEncrypted extends Post { | |
| private $_encrypter, $_getPasswordCallback = NULL, $_getPasswordcallbackArgs; | |
| public function __construct($encrypter, $getPasswordCallback = NULL) { | |
| parent::__construct(); | |
| $this->_encrypter = $encrypter; | |
| if (!is_null($getPasswordCallback)) $this->setGetPasswordCallback($getPasswordCallback); | |
| } | |
| public function setGetPasswordCallback($getPasswordCallback, $getPasswordcallbackArgs = array()) { | |
| $this->_getPasswordCallback = $getPasswordCallback; | |
| if (!is_array($getPasswordcallbackArgs)) { | |
| $getPasswordcallbackArgs = array($getPasswordcallbackArgs); | |
| } | |
| $this->setGetPasswordCallbackArgs($getPasswordcallbackArgs); | |
| } | |
| public function setGetPasswordCallbackArgs($getPasswordcallbackArgs = array()) { | |
| $this->_getPasswordcallbackArgs = $getPasswordcallbackArgs; | |
| } | |
| public function offsetGet($offset) { | |
| if (!$this->_encrypter->passwordSet()) { | |
| if (is_null($this->_getPasswordCallback)) throw new \Exception("No password set for ".get_class($this->_encrypter)." and no callback provided.", 1017141520); | |
| $password = call_user_func_array($this->_getPasswordCallback, $this->_getPasswordcallbackArgs); | |
| $this->_encrypter->setPassword($password); | |
| } | |
| return isset($this->_container[$offset]) ? $this->_encrypter->decrypt($this->_container[$offset]) : null; | |
| } | |
| } | |
| } |