123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- <?php
- declare(strict_types=1);
- namespace Yansongda\Pay;
- use ArrayAccess;
- use JsonSerializable as JsonSerializableInterface;
- use Psr\Http\Message\MessageInterface;
- use Psr\Http\Message\RequestInterface;
- use Yansongda\Pay\Contract\DirectionInterface;
- use Yansongda\Pay\Contract\PackerInterface;
- use Yansongda\Supports\Collection;
- use Yansongda\Supports\Traits\Accessable;
- use Yansongda\Supports\Traits\Arrayable;
- use Yansongda\Supports\Traits\Serializable;
- class Rocket implements JsonSerializableInterface, ArrayAccess
- {
- use Accessable;
- use Arrayable;
- use Serializable;
- private ?RequestInterface $radar = null;
- private array $params = [];
- private ?Collection $payload = null;
- private string $packer = PackerInterface::class;
- private string $direction = DirectionInterface::class;
- /**
- * @var null|array|Collection|MessageInterface
- */
- private $destination;
- private ?MessageInterface $destinationOrigin = null;
- public function getRadar(): ?RequestInterface
- {
- return $this->radar;
- }
- public function setRadar(?RequestInterface $radar): Rocket
- {
- $this->radar = $radar;
- return $this;
- }
- public function getParams(): array
- {
- return $this->params;
- }
- public function setParams(array $params): Rocket
- {
- $this->params = $params;
- return $this;
- }
- public function mergeParams(array $params): Rocket
- {
- $this->params = array_merge($this->params, $params);
- return $this;
- }
- public function getPayload(): ?Collection
- {
- return $this->payload;
- }
- public function setPayload(?Collection $payload): Rocket
- {
- $this->payload = $payload;
- return $this;
- }
- public function mergePayload(array $payload): Rocket
- {
- if (empty($this->payload)) {
- $this->payload = new Collection();
- }
- $this->payload = $this->payload->merge($payload);
- return $this;
- }
- public function getPacker(): string
- {
- return $this->packer;
- }
- public function setPacker(string $packer): Rocket
- {
- $this->packer = $packer;
- return $this;
- }
- public function getDirection(): string
- {
- return $this->direction;
- }
- public function setDirection(string $direction): Rocket
- {
- $this->direction = $direction;
- return $this;
- }
- /**
- * @return null|array|Collection|MessageInterface
- */
- public function getDestination()
- {
- return $this->destination;
- }
- /**
- * @param null|array|Collection|MessageInterface $destination
- */
- public function setDestination($destination): Rocket
- {
- $this->destination = $destination;
- return $this;
- }
- public function getDestinationOrigin(): ?MessageInterface
- {
- return $this->destinationOrigin;
- }
- public function setDestinationOrigin(?MessageInterface $destinationOrigin): Rocket
- {
- $this->destinationOrigin = $destinationOrigin;
- return $this;
- }
- }
|