ok
Direktori : /home2/selectio/public_html/limpiar.in.net/install/vendor/predis/predis/src/Command/ |
Current File : //home2/selectio/public_html/limpiar.in.net/install/vendor/predis/predis/src/Command/RawCommand.php |
<?php /* * This file is part of the Predis package. * * (c) 2009-2020 Daniele Alessandri * (c) 2021-2023 Till Krüss * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Predis\Command; /** * Class representing a generic Redis command. * * Arguments and responses for these commands are not normalized and they follow * what is defined by the Redis documentation. * * Raw commands can be useful when implementing higher level abstractions on top * of Predis\Client or managing internals like Redis Sentinel or Cluster as they * are not potentially subject to hijacking from third party libraries when they * override command handlers for standard Redis commands. */ final class RawCommand implements CommandInterface { private $slot; private $commandID; private $arguments; /** * @param string $commandID Command ID * @param array $arguments Command arguments */ public function __construct($commandID, array $arguments = []) { $this->commandID = strtoupper($commandID); $this->setArguments($arguments); } /** * Creates a new raw command using a variadic method. * * @param string $commandID Redis command ID * @param string ...$args Arguments list for the command * * @return CommandInterface */ public static function create($commandID, ...$args) { $arguments = func_get_args(); return new static(array_shift($arguments), $arguments); } /** * {@inheritdoc} */ public function getId() { return $this->commandID; } /** * {@inheritdoc} */ public function setArguments(array $arguments) { $this->arguments = $arguments; unset($this->slot); } /** * {@inheritdoc} */ public function setRawArguments(array $arguments) { $this->setArguments($arguments); } /** * {@inheritdoc} */ public function getArguments() { return $this->arguments; } /** * {@inheritdoc} */ public function getArgument($index) { if (isset($this->arguments[$index])) { return $this->arguments[$index]; } } /** * {@inheritdoc} */ public function setSlot($slot) { $this->slot = $slot; } /** * {@inheritdoc} */ public function getSlot() { return $this->slot ?? null; } /** * {@inheritdoc} */ public function parseResponse($data) { return $data; } }