deleteEmail() public method

이메일을 삭제한다
public deleteEmail ( Xpressengine\User\EmailInterface $email ) : boolean
$email Xpressengine\User\EmailInterface email
return boolean
 /**
  * delete email
  *
  * @param Request $request
  *
  * @return \Xpressengine\Presenter\RendererInterface
  * @throws Exception
  */
 public function deleteMail(Request $request)
 {
     $address = $request->get('address');
     // 해당회원이 가진 이메일을 찾는다.
     $selected = null;
     $pendingEmail = $this->user->getPendingEmail();
     if ($pendingEmail !== null && $pendingEmail->getAddress() === $address) {
         $selected = $pendingEmail;
     } else {
         foreach ($this->user->emails as $mail) {
             if ($mail->address === $address) {
                 $selected = $mail;
                 break;
             }
         }
     }
     // 해당회원이 가진 이메일이 아닐 경우 예외처리한다.
     if ($selected === null) {
         $e = new InvalidArgumentException();
         $e->setMessage('존재하지 않는 이메일입니다.');
         throw $e;
     }
     XeDB::beginTransaction();
     try {
         $this->handler->deleteEmail($selected);
     } catch (\Exception $e) {
         XeDB::rollback();
         throw $e;
     }
     XeDB::commit();
     return XePresenter::makeApi(['message' => '삭제되었습니다.']);
 }
 /**
  * 주어진 이메일을 인증처리 한다.
  * 주어진 등록 대기 이메일의 인증코드가 주어진 인증코드와 동일하면
  * 해당 이메일을 해당회원의 실제 이메일로 등록하고, 본 등록대기 이메일은 삭제한다.
  *
  * @param EmailInterface $email 인증할 이메일
  * @param string         $code  인증코드
  *
  * @return bool 주어진 이메일의 인증처리가 성공하면 true를 반환한다.
  * @throws \Exception
  */
 public function confirmEmail(EmailInterface $email, $code)
 {
     if ($this->validateConfirmCode($email, $code) === false) {
         throw new InvalidConfirmationCodeException();
     }
     $info = ['address' => $email->getAddress()];
     // remove pending email & create confirmed email
     $this->handler->createEmail($email->user, $info, true);
     $this->handler->deleteEmail($email);
     return true;
 }