This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ namespace davina\auths; require_once(DIR_LOGIC . '/auths/_interface.php'); require_once(DIR_LOGIC . '/auths/pass_through.php'); require_once(DIR_LOGIC . '/auths/static.php'); /** */ function make( string $kind, $data ) : \davina\auths\interface_auth { switch ($kind) { case 'pass_through': { return (new \davina\auths\class_auth_pass_through( )); break; } case 'static': { return (new \davina\auths\class_auth_static( $data['password'] )); break; } default: { throw (new \Exception(\sprintf('unhandled auth kind: %s', $kind))); break; } } } ?>