/** * Test initlization */ public function testInitilization() { $resolvable = new ResolvableAuthorization(); $resolvable->initialize($this->context, ['params']); $this->assertSame($this->context, $resolvable->context); $this->assertSame(['params'], $resolvable->params); $this->assertFalse($resolvable->resolved()); $this->assertNull($resolvable->state()); $this->assertTrue($resolvable->value()); }
/** * Resolve unregistered resolvable * * @param array $params * @return null|void */ public function resolve($params = []) { parent::resolve($params); if (!ResolvableAuthorizationRegistry::isRegistered($this->resolvable)) { $this->manager->resolve($this->resolvable, $params); } }
/** * Initialization * * Load all resolvables * * @param AuthorizationContext $context * @param array $params * @return null * @throws \InvalidArgumentException */ public function initialize(AuthorizationContext $context, $params = []) { parent::initialize($context, $params); $this->manager = $context->manager; $this->resolvables = (array) $params; }
public function resolve($params = []) { parent::resolve($params); $this->_state = call_user_func($this->params, $this->context, $params); }