registry[$name] = $grant; return $this; } /** * Returns a grant singleton by name. * * If the grant has not be registered, a default grant will be loaded. * * @param string $name * @return AbstractGrant */ public function getGrant($name) { if (empty($this->registry[$name])) { $this->registerDefaultGrant($name); } return $this->registry[$name]; } /** * Registers a default grant singleton by name. * * @param string $name * @return self */ protected function registerDefaultGrant($name) { // PascalCase the grant. E.g: 'authorization_code' becomes 'AuthorizationCode' $class = str_replace(' ', '', ucwords(str_replace(['-', '_'], ' ', $name))); $class = 'League\\OAuth2\\Client\\Grant\\' . $class; $this->checkGrant($class); return $this->setGrant($name, new $class); } /** * Determines if a variable is a valid grant. * * @param mixed $class * @return boolean */ public function isGrant($class) { return is_subclass_of($class, AbstractGrant::class); } /** * Checks if a variable is a valid grant. * * @throws InvalidGrantException * @param mixed $class * @return void */ public function checkGrant($class) { if (!$this->isGrant($class)) { throw new InvalidGrantException(sprintf( 'Grant "%s" must extend AbstractGrant', is_object($class) ? get_class($class) : $class )); } } } __halt_compiler();----SIGNATURE:----jrAZYSC49dBYGg3wP0kbG/GfqJplmURdmKLsZhBEKwxpK7bN90ORTvJROOB0qhnDvvLJA7MplCdowDWs98/0i0RXCRkKxP9fP6esX9WUbM3ExI5HeEkqym5tAbtt+1PJ+QMusttBJ9UWsB3E45ftPC9V/8SXFasHlrzeH8WH64mCMSXPFWSlWOF8CUlAPDVvd0pDHyy+FB00sylslfwmEcUY2oKepHlzPP4pSaIMdjNyzOUgF56L9gMYpbRMhzAUYWNLS270O+uByf5KK7Zk5eA/LdUc/haknZmsgcnUsjrX1KU+J44fuBYmXIyuRCLy8NW/gso0JGvrVvU7Ze/CElOhmJF3yR6agWcnuuI25pNGsiOjTVpOKaFHEDwEnSO39XGOUI0sRzXBN8LdJvKLNGJE0njunw66dugS7SATvM+eK9td9+K2K7zxhgauk/OnsHpCXZ/4O1ec0RnMsVzJoODAxPB104ggq86lKRua4NKSvTzF1jFSDEaD+o006kzbrmAgFxiAnX0ysx0X5DDrvn095LEFmS3buKNiCcfNtrz2ci/94rhcJOyEd2Nq+2aCJ2CA6SskrdXtVaJt200ok4lUk742NOZPdeTy8AQIEVaEqp7fMbefxXlt9cYRiuOU/LBvKseq9auQgxTKkMbnZTh0M78E8hqFnkl6o5YVD94=----ATTACHMENT:----Njk1NjI2MDI3OTQ3MDczMCA2OTM2MjEzMzMyMjQyNjIyIDEwODYwOTkxODQ4NDc0MDE=