public function createOAuth2Account(RegistrationRequest $registrationRequest) : Account { $email = $registrationRequest->getEmail(); $provider = $registrationRequest->getProvider(); $providerAccountId = $registrationRequest->getProviderAccountId(); $account = $this->createAccount($email, GenerateRandomString::gen(32)); $oauthAccount = new OAuthAccount($account); $oauthAccount->setProvider($provider); $oauthAccount->setProviderAccountId($providerAccountId); $this->accountRepository->createOAuth2Account($oauthAccount); return $account; }
public function getAccountWith(RegistrationRequest $registrationRequest) : OAuthAccount { return $this->findOneBy(['email' => $registrationRequest->getEmail(), 'provider' => $registrationRequest->getProvider(), 'providerAccountId' => $registrationRequest->getProviderAccountId()]); }