/** * @param shibServerData $shibServerData * * @return shibUser */ public static function buildInstance(shibServerData $shibServerData) { $shibUser = new self(); $shibUser->shibServerData = $shibServerData; $ext_id = $shibUser->shibServerData->getLogin(); $shibUser->setExternalAccount($ext_id); $existing_usr_id = self::getUsrIdByExtId($ext_id); if ($existing_usr_id) { $shibUser->setId($existing_usr_id); $shibUser->read(); } $shibUser->setAuthMode('shibboleth'); return $shibUser; }