Add new optional beta email parser thats based on ImapEngine instead of Webklex

This commit is contained in:
johnnyq
2026-02-26 16:11:49 -05:00
parent 1ba19cc249
commit 9cb1ff7330
682 changed files with 101834 additions and 8 deletions

View File

@@ -0,0 +1,48 @@
<?php
namespace DirectoryTree\ImapEngine\Exceptions;
use DirectoryTree\ImapEngine\Connection\ImapCommand;
use DirectoryTree\ImapEngine\Connection\Responses\Response;
class ImapCommandException extends Exception
{
/**
* The IMAP response.
*/
protected Response $response;
/**
* The failed IMAP command.
*/
protected ImapCommand $command;
/**
* Make a new instance from a failed command and response.
*/
public static function make(ImapCommand $command, Response $response): static
{
$exception = new static(sprintf('IMAP command "%s" failed. Response: "%s"', $command, $response));
$exception->command = $command;
$exception->response = $response;
return $exception;
}
/**
* Get the failed IMAP command.
*/
public function command(): ImapCommand
{
return $this->command;
}
/**
* Get the IMAP response.
*/
public function response(): Response
{
return $this->response;
}
}