OpenXE/classes/Components/MailClient/Data/MailBoxInfoData.php
2021-05-21 08:49:41 +02:00

82 lines
1.4 KiB
PHP

<?php
declare(strict_types=1);
namespace Xentral\Components\MailClient\Data;
final class MailBoxInfoData
{
/** @var int $messages */
private $messages;
/** @var int $recent */
private $recent;
/** @var int $uidvalidity */
private $uidvalidity;
/** @var array $flags */
private $flags;
/**
* @param int $messages
* @param int $recent
* @param int $uidvalidity
* @param array $flags
*/
public function __construct(
int $messages,
int $recent,
int $uidvalidity,
array $flags = []
)
{
$this->messages = $messages;
$this->recent = $recent;
$this->uidvalidity = $uidvalidity;
$this->flags = $flags;
}
/**
* @return int total amount of messages
*/
public function getMessages(): int
{
return $this->messages;
}
/**
* @return int amount of recent messages
*/
public function getRecentMessages(): int
{
return $this->recent;
}
/**
* @return int
*/
public function getUidvalidity(): int
{
return $this->uidvalidity;
}
/**
* @return array
*/
public function getFlags(): array
{
return $this->flags;
}
/**
* @param string $flag
*
* @return bool
*/
public function hasFlag(string $flag): bool
{
return array_key_exists($flag, $this->flags);
}
}