Final Class Yiisoft\Queue\Message\IdEnvelope
| Inheritance | Yiisoft\Queue\Message\IdEnvelope » Yiisoft\Queue\Message\Envelope |
|---|---|
| Implements | Yiisoft\Queue\Message\MessageInterface |
ID envelope allows to identify a message.
Protected Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| $metadata | array | Yiisoft\Queue\Message\Envelope |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\Queue\Message\IdEnvelope | |
| fromData() | Envelopes cannot be created from raw data. Use {@see fromMessage()} to wrap an existing message instead. | Yiisoft\Queue\Message\Envelope |
| fromMessage() | Yiisoft\Queue\Message\IdEnvelope | |
| getData() | Yiisoft\Queue\Message\Envelope | |
| getId() | Yiisoft\Queue\Message\IdEnvelope | |
| getMessage() | Yiisoft\Queue\Message\Envelope | |
| getMetadata() | Yiisoft\Queue\Message\Envelope | |
| getType() | Yiisoft\Queue\Message\Envelope | |
| withMetadata() | Yiisoft\Queue\Message\Envelope |
Constants
| Constant | Value | Description | Defined By |
|---|---|---|---|
| META_ID | 'yii-id' | Yiisoft\Queue\Message\IdEnvelope |
Method Details
| public mixed __construct ( Yiisoft\Queue\Message\MessageInterface $message, string|integer|null $id ) | ||
| $message | Yiisoft\Queue\Message\MessageInterface | |
| $id | string|integer|null | |
public function __construct(MessageInterface $message, string|int|null $id)
{
if ($id === '') {
$id = null;
}
parent::__construct($message, [self::META_ID => $id]);
}
Defined in: Yiisoft\Queue\Message\Envelope::fromData()
Envelopes cannot be created from raw data. Use {@see fromMessage()} to wrap an existing message instead.
| public static static fromData ( string $type, mixed $data ) | ||
| $type | string | |
| $data | mixed | |
| throws | LogicException |
Always, since this method is not supported for envelopes. |
|---|---|---|
final public static function fromData(string $type, mixed $data): static
{
throw new LogicException(
'Envelopes cannot be created via "fromData()". Wrap an existing "MessageInterface" instance instead.',
);
}
| public static static fromMessage ( Yiisoft\Queue\Message\MessageInterface $message ) | ||
| $message | Yiisoft\Queue\Message\MessageInterface | |
public static function fromMessage(MessageInterface $message): static
{
$rawId = $message->getMetadata()[self::META_ID] ?? null;
$id = match (true) {
$rawId === null => null, // don't remove this branch: it's important for compute speed
is_string($rawId),
is_int($rawId) => $rawId,
is_object($rawId) && method_exists($rawId, '__toString') => (string) $rawId,
default => null,
};
return new self($message, $id);
}
Defined in: Yiisoft\Queue\Message\Envelope::getData()
| public mixed getData ( ) |
final public function getData(): mixed
{
return $this->message->getData();
}
| public string|int|null getId ( ) |
public function getId(): string|int|null
{
return $this->metadata[self::META_ID];
}
Defined in: Yiisoft\Queue\Message\Envelope::getMessage()
| public Yiisoft\Queue\Message\MessageInterface getMessage ( ) |
final public function getMessage(): MessageInterface
{
return $this->message;
}
Defined in: Yiisoft\Queue\Message\Envelope::getMetadata()
| public array getMetadata ( ) |
final public function getMetadata(): array
{
return $this->metadata;
}
Defined in: Yiisoft\Queue\Message\Envelope::getType()
| public string getType ( ) |
final public function getType(): string
{
return $this->message->getType();
}
Defined in: Yiisoft\Queue\Message\Envelope::withMetadata()
| public static withMetadata ( array $metadata ) | ||
| $metadata | array | |
final public function withMetadata(array $metadata): static
{
return static::fromMessage($this->message->withMetadata($metadata));
}
Signup or Login in order to comment.