Files
huangjingfen/pro_v3.5.1/vendor/topthink/think-swoole/src/rpc/Protocol.php

116 lines
2.0 KiB
PHP
Raw Normal View History

2026-03-07 22:29:07 +08:00
<?php
namespace think\swoole\rpc;
class Protocol
{
const ACTION_INTERFACE = '@action_interface';
const FILE = '@file';
/**
* @var string
*/
private $interface = '';
/**
* @var string
*/
private $method = '';
/**
* @var array
*/
private $params = [];
/**
* @var array
*/
private $context = [];
/**
* Replace constructor
*
* @param string $interface
* @param string $method
* @param array $params
* @param array $context
* @return Protocol
*/
public static function make(string $interface, string $method, array $params, array $context = [])
{
$instance = new static();
$instance->interface = $interface;
$instance->method = $method;
$instance->params = $params;
$instance->context = $context;
return $instance;
}
/**
* @return string
*/
public function getInterface(): string
{
return $this->interface;
}
/**
* @return string
*/
public function getMethod(): string
{
return $this->method;
}
/**
* @return array
*/
public function getParams(): array
{
return $this->params;
}
/**
* @return array
*/
public function getContext(): array
{
return $this->context;
}
/**
* @param string $interface
*/
public function setInterface(string $interface): void
{
$this->interface = $interface;
}
/**
* @param string $method
*/
public function setMethod(string $method): void
{
$this->method = $method;
}
/**
* @param array $params
*/
public function setParams(array $params): void
{
$this->params = $params;
}
/**
* @param array $context
*/
public function setContext(array $context): void
{
$this->context = $context;
}
}