mirror of
https://git.tt-rss.org/fox/tt-rss.git
synced 2025-11-12 01:31:00 +01:00
drop opentelemetry
This commit is contained in:
parent
8fcc68baf5
commit
884fd92f13
15
backend.php
15
backend.php
@ -35,8 +35,6 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
|
|
||||||
header("Content-Type: text/json; charset=utf-8");
|
header("Content-Type: text/json; charset=utf-8");
|
||||||
|
|
||||||
if (Config::get(Config::SINGLE_USER_MODE)) {
|
if (Config::get(Config::SINGLE_USER_MODE)) {
|
||||||
@ -48,7 +46,6 @@
|
|||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_UNAUTHORIZED);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
UserHelper::load_user_plugins($_SESSION["uid"]);
|
UserHelper::load_user_plugins($_SESSION["uid"]);
|
||||||
@ -57,7 +54,6 @@
|
|||||||
if (Config::is_migration_needed()) {
|
if (Config::is_migration_needed()) {
|
||||||
print Errors::to_json(Errors::E_SCHEMA_MISMATCH);
|
print Errors::to_json(Errors::E_SCHEMA_MISMATCH);
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_SCHEMA_MISMATCH);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -120,7 +116,6 @@
|
|||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_UNAUTHORIZED);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -133,16 +128,14 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (implements_interface($handler, 'IHandler')) {
|
if (implements_interface($handler, 'IHandler')) {
|
||||||
$span->addEvent("construct/$op");
|
|
||||||
$handler->__construct($_REQUEST);
|
$handler->__construct($_REQUEST);
|
||||||
|
|
||||||
if (validate_csrf($csrf_token) || $handler->csrf_ignore($method)) {
|
if (validate_csrf($csrf_token) || $handler->csrf_ignore($method)) {
|
||||||
|
|
||||||
$span->addEvent("before/$method");
|
|
||||||
$before = $handler->before($method);
|
$before = $handler->before($method);
|
||||||
|
|
||||||
if ($before) {
|
if ($before) {
|
||||||
$span->addEvent("method/$method");
|
|
||||||
if ($method && method_exists($handler, $method)) {
|
if ($method && method_exists($handler, $method)) {
|
||||||
$reflection = new ReflectionMethod($handler, $method);
|
$reflection = new ReflectionMethod($handler, $method);
|
||||||
|
|
||||||
@ -152,7 +145,6 @@
|
|||||||
user_error("Refusing to invoke method $method of handler $op which has required parameters.", E_USER_WARNING);
|
user_error("Refusing to invoke method $method of handler $op which has required parameters.", E_USER_WARNING);
|
||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_UNAUTHORIZED);
|
|
||||||
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -161,19 +153,16 @@
|
|||||||
} else {
|
} else {
|
||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_UNKNOWN_METHOD);
|
|
||||||
print Errors::to_json(Errors::E_UNKNOWN_METHOD, ["info" => get_class($handler) . "->$method"]);
|
print Errors::to_json(Errors::E_UNKNOWN_METHOD, ["info" => get_class($handler) . "->$method"]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->addEvent("after/$method");
|
|
||||||
$handler->after();
|
$handler->after();
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_UNAUTHORIZED);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -181,7 +170,6 @@
|
|||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_UNAUTHORIZED);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -190,4 +178,3 @@
|
|||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
print Errors::to_json(Errors::E_UNKNOWN_METHOD, [ "info" => (isset($handler) ? get_class($handler) : "UNKNOWN:".$op) . "->$method"]);
|
print Errors::to_json(Errors::E_UNKNOWN_METHOD, [ "info" => (isset($handler) ? get_class($handler) : "UNKNOWN:".$op) . "->$method"]);
|
||||||
|
|
||||||
$span->setAttribute('error', Errors::E_UNKNOWN_METHOD);
|
|
||||||
|
|||||||
@ -298,8 +298,6 @@ class Article extends Handler_Protected {
|
|||||||
* @return array{'formatted': string, 'entries': array<int, array<string, mixed>>}
|
* @return array{'formatted': string, 'entries': array<int, array<string, mixed>>}
|
||||||
*/
|
*/
|
||||||
static function _format_enclosures(int $id, bool $always_display_enclosures, string $article_content, bool $hide_images = false): array {
|
static function _format_enclosures(int $id, bool $always_display_enclosures, string $article_content, bool $hide_images = false): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$enclosures = self::_get_enclosures($id);
|
$enclosures = self::_get_enclosures($id);
|
||||||
$enclosures_formatted = "";
|
$enclosures_formatted = "";
|
||||||
|
|
||||||
@ -326,7 +324,6 @@ class Article extends Handler_Protected {
|
|||||||
$enclosures_formatted, $enclosures, $id, $always_display_enclosures, $article_content, $hide_images);
|
$enclosures_formatted, $enclosures, $id, $always_display_enclosures, $article_content, $hide_images);
|
||||||
|
|
||||||
if (!empty($enclosures_formatted)) {
|
if (!empty($enclosures_formatted)) {
|
||||||
$span->end();
|
|
||||||
return [
|
return [
|
||||||
'formatted' => $enclosures_formatted,
|
'formatted' => $enclosures_formatted,
|
||||||
'entries' => []
|
'entries' => []
|
||||||
@ -370,7 +367,6 @@ class Article extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
return $rv;
|
return $rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -378,8 +374,6 @@ class Article extends Handler_Protected {
|
|||||||
* @return array<int, string>
|
* @return array<int, string>
|
||||||
*/
|
*/
|
||||||
static function _get_tags(int $id, int $owner_uid = 0, ?string $tag_cache = null): array {
|
static function _get_tags(int $id, int $owner_uid = 0, ?string $tag_cache = null): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$a_id = $id;
|
$a_id = $id;
|
||||||
|
|
||||||
if (!$owner_uid) $owner_uid = $_SESSION["uid"];
|
if (!$owner_uid) $owner_uid = $_SESSION["uid"];
|
||||||
@ -427,7 +421,6 @@ class Article extends Handler_Protected {
|
|||||||
$sth->execute([$tags_str, $id, $owner_uid]);
|
$sth->execute([$tags_str, $id, $owner_uid]);
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
return $tags;
|
return $tags;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -522,8 +515,6 @@ class Article extends Handler_Protected {
|
|||||||
* @return array<int, array<int, int|string>>
|
* @return array<int, array<int, int|string>>
|
||||||
*/
|
*/
|
||||||
static function _get_labels(int $id, ?int $owner_uid = null): array {
|
static function _get_labels(int $id, ?int $owner_uid = null): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$rv = array();
|
$rv = array();
|
||||||
|
|
||||||
if (!$owner_uid) $owner_uid = $_SESSION["uid"];
|
if (!$owner_uid) $owner_uid = $_SESSION["uid"];
|
||||||
@ -569,8 +560,6 @@ class Article extends Handler_Protected {
|
|||||||
else
|
else
|
||||||
Labels::update_cache($owner_uid, $id, array("no-labels" => 1));
|
Labels::update_cache($owner_uid, $id, array("no-labels" => 1));
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $rv;
|
return $rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -581,8 +570,6 @@ class Article extends Handler_Protected {
|
|||||||
* @return array<int, Article::ARTICLE_KIND_*|string>
|
* @return array<int, Article::ARTICLE_KIND_*|string>
|
||||||
*/
|
*/
|
||||||
static function _get_image(array $enclosures, string $content, string $site_url, array $headline) {
|
static function _get_image(array $enclosures, string $content, string $site_url, array $headline) {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$article_image = "";
|
$article_image = "";
|
||||||
$article_stream = "";
|
$article_stream = "";
|
||||||
$article_kind = 0;
|
$article_kind = 0;
|
||||||
@ -603,6 +590,7 @@ class Article extends Handler_Protected {
|
|||||||
$tmpxpath = new DOMXPath($tmpdoc);
|
$tmpxpath = new DOMXPath($tmpdoc);
|
||||||
$elems = $tmpxpath->query('(//img[@src]|//video[@poster]|//iframe[contains(@src , "youtube.com/embed/")])');
|
$elems = $tmpxpath->query('(//img[@src]|//video[@poster]|//iframe[contains(@src , "youtube.com/embed/")])');
|
||||||
|
|
||||||
|
/** @var DOMElement $e */
|
||||||
foreach ($elems as $e) {
|
foreach ($elems as $e) {
|
||||||
if ($e->nodeName == "iframe") {
|
if ($e->nodeName == "iframe") {
|
||||||
$matches = [];
|
$matches = [];
|
||||||
@ -660,8 +648,6 @@ class Article extends Handler_Protected {
|
|||||||
if ($article_stream && $cache->exists(sha1($article_stream)))
|
if ($article_stream && $cache->exists(sha1($article_stream)))
|
||||||
$article_stream = $cache->get_url(sha1($article_stream));
|
$article_stream = $cache->get_url(sha1($article_stream));
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return [$article_image, $article_stream, $article_kind];
|
return [$article_image, $article_stream, $article_kind];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -675,8 +661,6 @@ class Article extends Handler_Protected {
|
|||||||
if (count($article_ids) == 0)
|
if (count($article_ids) == 0)
|
||||||
return [];
|
return [];
|
||||||
|
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$entries = ORM::for_table('ttrss_entries')
|
$entries = ORM::for_table('ttrss_entries')
|
||||||
->table_alias('e')
|
->table_alias('e')
|
||||||
->join('ttrss_user_entries', ['ref_id', '=', 'id'], 'ue')
|
->join('ttrss_user_entries', ['ref_id', '=', 'id'], 'ue')
|
||||||
@ -696,8 +680,6 @@ class Article extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return array_unique($rv);
|
return array_unique($rv);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -709,8 +691,6 @@ class Article extends Handler_Protected {
|
|||||||
if (count($article_ids) == 0)
|
if (count($article_ids) == 0)
|
||||||
return [];
|
return [];
|
||||||
|
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$entries = ORM::for_table('ttrss_entries')
|
$entries = ORM::for_table('ttrss_entries')
|
||||||
->table_alias('e')
|
->table_alias('e')
|
||||||
->join('ttrss_user_entries', ['ref_id', '=', 'id'], 'ue')
|
->join('ttrss_user_entries', ['ref_id', '=', 'id'], 'ue')
|
||||||
@ -723,8 +703,6 @@ class Article extends Handler_Protected {
|
|||||||
array_push($rv, $entry->feed_id);
|
array_push($rv, $entry->feed_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return array_unique($rv);
|
return array_unique($rv);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -145,8 +145,6 @@ class Counters {
|
|||||||
* @return array<int, array<string, int|string>>
|
* @return array<int, array<string, int|string>>
|
||||||
*/
|
*/
|
||||||
private static function get_feeds(?array $feed_ids = null): array {
|
private static function get_feeds(?array $feed_ids = null): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$ret = [];
|
$ret = [];
|
||||||
|
|
||||||
$pdo = Db::pdo();
|
$pdo = Db::pdo();
|
||||||
@ -212,8 +210,6 @@ class Counters {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -221,8 +217,6 @@ class Counters {
|
|||||||
* @return array<int, array<string, int|string>>
|
* @return array<int, array<string, int|string>>
|
||||||
*/
|
*/
|
||||||
private static function get_global(): array {
|
private static function get_global(): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$ret = [
|
$ret = [
|
||||||
[
|
[
|
||||||
"id" => "global-unread",
|
"id" => "global-unread",
|
||||||
@ -239,8 +233,6 @@ class Counters {
|
|||||||
"counter" => $subcribed_feeds
|
"counter" => $subcribed_feeds
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -248,8 +240,6 @@ class Counters {
|
|||||||
* @return array<int, array<string, int|string>>
|
* @return array<int, array<string, int|string>>
|
||||||
*/
|
*/
|
||||||
private static function get_virt(): array {
|
private static function get_virt(): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$ret = [];
|
$ret = [];
|
||||||
|
|
||||||
foreach ([Feeds::FEED_ARCHIVED, Feeds::FEED_STARRED, Feeds::FEED_PUBLISHED,
|
foreach ([Feeds::FEED_ARCHIVED, Feeds::FEED_STARRED, Feeds::FEED_PUBLISHED,
|
||||||
@ -295,7 +285,6 @@ class Counters {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -304,8 +293,6 @@ class Counters {
|
|||||||
* @return array<int, array<string, int|string>>
|
* @return array<int, array<string, int|string>>
|
||||||
*/
|
*/
|
||||||
static function get_labels(?array $label_ids = null): array {
|
static function get_labels(?array $label_ids = null): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$ret = [];
|
$ret = [];
|
||||||
|
|
||||||
$pdo = Db::pdo();
|
$pdo = Db::pdo();
|
||||||
@ -356,7 +343,6 @@ class Counters {
|
|||||||
array_push($ret, $cv);
|
array_push($ret, $cv);
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,8 +2,6 @@
|
|||||||
class Digest
|
class Digest
|
||||||
{
|
{
|
||||||
static function send_headlines_digests(): void {
|
static function send_headlines_digests(): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$user_limit = 15; // amount of users to process (e.g. emails to send out)
|
$user_limit = 15; // amount of users to process (e.g. emails to send out)
|
||||||
$limit = 1000; // maximum amount of headlines to include
|
$limit = 1000; // maximum amount of headlines to include
|
||||||
|
|
||||||
@ -77,7 +75,6 @@ class Digest
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
Debug::log("All done.");
|
Debug::log("All done.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -221,11 +221,7 @@ class DiskCache implements Cache_Adapter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function remove(string $filename): bool {
|
public function remove(string $filename): bool {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('file.name', $filename);
|
|
||||||
|
|
||||||
$rc = $this->adapter->remove($filename);
|
$rc = $this->adapter->remove($filename);
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $rc;
|
return $rc;
|
||||||
}
|
}
|
||||||
@ -251,9 +247,6 @@ class DiskCache implements Cache_Adapter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function exists(string $filename): bool {
|
public function exists(string $filename): bool {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent("DiskCache::exists: $filename");
|
|
||||||
|
|
||||||
$rc = $this->adapter->exists(basename($filename));
|
$rc = $this->adapter->exists(basename($filename));
|
||||||
|
|
||||||
return $rc;
|
return $rc;
|
||||||
@ -263,11 +256,7 @@ class DiskCache implements Cache_Adapter {
|
|||||||
* @return int|false -1 if the file doesn't exist, false if an error occurred, size in bytes otherwise
|
* @return int|false -1 if the file doesn't exist, false if an error occurred, size in bytes otherwise
|
||||||
*/
|
*/
|
||||||
public function get_size(string $filename) {
|
public function get_size(string $filename) {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('file.name', $filename);
|
|
||||||
|
|
||||||
$rc = $this->adapter->get_size(basename($filename));
|
$rc = $this->adapter->get_size(basename($filename));
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $rc;
|
return $rc;
|
||||||
}
|
}
|
||||||
@ -278,11 +267,7 @@ class DiskCache implements Cache_Adapter {
|
|||||||
* @return int|false Bytes written or false if an error occurred.
|
* @return int|false Bytes written or false if an error occurred.
|
||||||
*/
|
*/
|
||||||
public function put(string $filename, $data) {
|
public function put(string $filename, $data) {
|
||||||
$span = Tracer::start(__METHOD__);
|
return $this->adapter->put(basename($filename), $data);
|
||||||
$rc = $this->adapter->put(basename($filename), $data);
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $rc;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @deprecated we can't assume cached files are local, and other storages
|
/** @deprecated we can't assume cached files are local, and other storages
|
||||||
@ -326,17 +311,12 @@ class DiskCache implements Cache_Adapter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function send(string $filename) {
|
public function send(string $filename) {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('file.name', $filename);
|
|
||||||
|
|
||||||
$filename = basename($filename);
|
$filename = basename($filename);
|
||||||
|
|
||||||
if (!$this->exists($filename)) {
|
if (!$this->exists($filename)) {
|
||||||
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");
|
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");
|
||||||
echo "File not found.";
|
echo "File not found.";
|
||||||
|
|
||||||
$span->setAttribute('error', '404 not found');
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -346,8 +326,6 @@ class DiskCache implements Cache_Adapter {
|
|||||||
if (($_SERVER['HTTP_IF_MODIFIED_SINCE'] ?? '') == $gmt_modified || ($_SERVER['HTTP_IF_NONE_MATCH'] ?? '') == $file_mtime) {
|
if (($_SERVER['HTTP_IF_MODIFIED_SINCE'] ?? '') == $gmt_modified || ($_SERVER['HTTP_IF_NONE_MATCH'] ?? '') == $file_mtime) {
|
||||||
header('HTTP/1.1 304 Not Modified');
|
header('HTTP/1.1 304 Not Modified');
|
||||||
|
|
||||||
$span->setAttribute('error', '304 not modified');
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -365,9 +343,6 @@ class DiskCache implements Cache_Adapter {
|
|||||||
header("Content-type: text/plain");
|
header("Content-type: text/plain");
|
||||||
|
|
||||||
print "Stored file has disallowed content type ($mimetype)";
|
print "Stored file has disallowed content type ($mimetype)";
|
||||||
|
|
||||||
$span->setAttribute('error', '400 disallowed content type');
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -389,13 +364,7 @@ class DiskCache implements Cache_Adapter {
|
|||||||
|
|
||||||
header_remove("Pragma");
|
header_remove("Pragma");
|
||||||
|
|
||||||
$span->setAttribute('mimetype', $mimetype);
|
return $this->adapter->send($filename);
|
||||||
|
|
||||||
$rc = $this->adapter->send($filename);
|
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $rc;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function get_full_path(string $filename): string {
|
public function get_full_path(string $filename): string {
|
||||||
@ -424,13 +393,9 @@ class DiskCache implements Cache_Adapter {
|
|||||||
// plugins work on original source URLs used before caching
|
// plugins work on original source URLs used before caching
|
||||||
// NOTE: URLs should be already absolutized because this is called after sanitize()
|
// NOTE: URLs should be already absolutized because this is called after sanitize()
|
||||||
static public function rewrite_urls(string $str): string {
|
static public function rewrite_urls(string $str): string {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent("DiskCache::rewrite_urls");
|
|
||||||
|
|
||||||
$res = trim($str);
|
$res = trim($str);
|
||||||
|
|
||||||
if (!$res) {
|
if (!$res) {
|
||||||
$span->end();
|
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -439,13 +404,12 @@ class DiskCache implements Cache_Adapter {
|
|||||||
$xpath = new DOMXPath($doc);
|
$xpath = new DOMXPath($doc);
|
||||||
$cache = DiskCache::instance("images");
|
$cache = DiskCache::instance("images");
|
||||||
|
|
||||||
$entries = $xpath->query('(//img[@src]|//source[@src|@srcset]|//video[@poster|@src])');
|
|
||||||
|
|
||||||
$need_saving = false;
|
$need_saving = false;
|
||||||
|
|
||||||
foreach ($entries as $entry) {
|
$entries = $xpath->query('(//img[@src]|//source[@src|@srcset]|//video[@poster|@src])');
|
||||||
$span->addEvent("entry: " . $entry->tagName);
|
|
||||||
|
|
||||||
|
/** @var DOMElement $entry */
|
||||||
|
foreach ($entries as $entry) {
|
||||||
foreach (array('src', 'poster') as $attr) {
|
foreach (array('src', 'poster') as $attr) {
|
||||||
if ($entry->hasAttribute($attr)) {
|
if ($entry->hasAttribute($attr)) {
|
||||||
$url = $entry->getAttribute($attr);
|
$url = $entry->getAttribute($attr);
|
||||||
|
|||||||
@ -62,9 +62,6 @@ class Feeds extends Handler_Protected {
|
|||||||
|
|
||||||
$disable_cache = false;
|
$disable_cache = false;
|
||||||
|
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('func.args', json_encode(func_get_args()));
|
|
||||||
|
|
||||||
$reply = [];
|
$reply = [];
|
||||||
$rgba_cache = [];
|
$rgba_cache = [];
|
||||||
$topmost_article_ids = [];
|
$topmost_article_ids = [];
|
||||||
@ -166,7 +163,6 @@ class Feeds extends Handler_Protected {
|
|||||||
$reply['search_query'] = [$search, $search_language];
|
$reply['search_query'] = [$search, $search_language];
|
||||||
$reply['vfeed_group_enabled'] = $vfeed_group_enabled;
|
$reply['vfeed_group_enabled'] = $vfeed_group_enabled;
|
||||||
|
|
||||||
$span->addEvent('plugin_menu_items');
|
|
||||||
|
|
||||||
$plugin_menu_items = "";
|
$plugin_menu_items = "";
|
||||||
PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_HEADLINE_TOOLBAR_SELECT_MENU_ITEM2,
|
PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_HEADLINE_TOOLBAR_SELECT_MENU_ITEM2,
|
||||||
@ -200,13 +196,10 @@ class Feeds extends Handler_Protected {
|
|||||||
},
|
},
|
||||||
$feed, $cat_view, $qfh_ret);
|
$feed, $cat_view, $qfh_ret);
|
||||||
|
|
||||||
$span->addEvent('articles');
|
|
||||||
|
|
||||||
$headlines_count = 0;
|
$headlines_count = 0;
|
||||||
|
|
||||||
if ($result instanceof PDOStatement) {
|
if ($result instanceof PDOStatement) {
|
||||||
while ($line = $result->fetch(PDO::FETCH_ASSOC)) {
|
while ($line = $result->fetch(PDO::FETCH_ASSOC)) {
|
||||||
$span->addEvent('article: ' . $line['id']);
|
|
||||||
|
|
||||||
++$headlines_count;
|
++$headlines_count;
|
||||||
|
|
||||||
@ -366,8 +359,6 @@ class Feeds extends Handler_Protected {
|
|||||||
//setting feed headline background color, needs to change text color based on dark/light
|
//setting feed headline background color, needs to change text color based on dark/light
|
||||||
$fav_color = $line['favicon_avg_color'] ?? false;
|
$fav_color = $line['favicon_avg_color'] ?? false;
|
||||||
|
|
||||||
$span->addEvent("colors");
|
|
||||||
|
|
||||||
require_once "colors.php";
|
require_once "colors.php";
|
||||||
|
|
||||||
if (!isset($rgba_cache[$feed_id])) {
|
if (!isset($rgba_cache[$feed_id])) {
|
||||||
@ -382,8 +373,6 @@ class Feeds extends Handler_Protected {
|
|||||||
$line['feed_bg_color'] = 'rgba(' . implode(",", $rgba_cache[$feed_id]) . ',0.3)';
|
$line['feed_bg_color'] = 'rgba(' . implode(",", $rgba_cache[$feed_id]) . ',0.3)';
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->addEvent("HOOK_RENDER_ARTICLE_CDM");
|
|
||||||
|
|
||||||
PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_RENDER_ARTICLE_CDM,
|
PluginHost::getInstance()->chain_hooks_callback(PluginHost::HOOK_RENDER_ARTICLE_CDM,
|
||||||
function ($result, $plugin) use (&$line) {
|
function ($result, $plugin) use (&$line) {
|
||||||
$line = $result;
|
$line = $result;
|
||||||
@ -461,8 +450,6 @@ class Feeds extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return array($topmost_article_ids, $headlines_count, $feed, $disable_cache, $reply);
|
return array($topmost_article_ids, $headlines_count, $feed, $disable_cache, $reply);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -926,10 +913,6 @@ class Feeds extends Handler_Protected {
|
|||||||
* @throws PDOException
|
* @throws PDOException
|
||||||
*/
|
*/
|
||||||
static function _get_counters($feed, bool $is_cat = false, bool $unread_only = false, ?int $owner_uid = null): int {
|
static function _get_counters($feed, bool $is_cat = false, bool $unread_only = false, ?int $owner_uid = null): int {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
|
|
||||||
$span->addEvent(__METHOD__ . ": $feed ($is_cat)");
|
|
||||||
|
|
||||||
$n_feed = (int) $feed;
|
$n_feed = (int) $feed;
|
||||||
$need_entries = false;
|
$need_entries = false;
|
||||||
|
|
||||||
@ -952,14 +935,11 @@ class Feeds extends Handler_Protected {
|
|||||||
$handler = PluginHost::getInstance()->get_feed_handler($feed_id);
|
$handler = PluginHost::getInstance()->get_feed_handler($feed_id);
|
||||||
if (implements_interface($handler, 'IVirtualFeed')) {
|
if (implements_interface($handler, 'IVirtualFeed')) {
|
||||||
/** @var IVirtualFeed $handler */
|
/** @var IVirtualFeed $handler */
|
||||||
//$span->end();
|
|
||||||
return $handler->get_unread($feed_id);
|
return $handler->get_unread($feed_id);
|
||||||
} else {
|
} else {
|
||||||
//$span->end();
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
} else if ($n_feed == Feeds::FEED_RECENTLY_READ) {
|
} else if ($n_feed == Feeds::FEED_RECENTLY_READ) {
|
||||||
//$span->end();
|
|
||||||
return 0;
|
return 0;
|
||||||
// tags
|
// tags
|
||||||
} else if ($feed != "0" && $n_feed == 0) {
|
} else if ($feed != "0" && $n_feed == 0) {
|
||||||
@ -973,7 +953,6 @@ class Feeds extends Handler_Protected {
|
|||||||
$row = $sth->fetch();
|
$row = $sth->fetch();
|
||||||
|
|
||||||
// Handle 'SUM()' returning null if there are no results
|
// Handle 'SUM()' returning null if there are no results
|
||||||
//$span->end();
|
|
||||||
return $row["count"] ?? 0;
|
return $row["count"] ?? 0;
|
||||||
|
|
||||||
} else if ($n_feed == Feeds::FEED_STARRED) {
|
} else if ($n_feed == Feeds::FEED_STARRED) {
|
||||||
@ -1007,7 +986,6 @@ class Feeds extends Handler_Protected {
|
|||||||
|
|
||||||
$label_id = Labels::feed_to_label_id($feed);
|
$label_id = Labels::feed_to_label_id($feed);
|
||||||
|
|
||||||
//$span->end();
|
|
||||||
return self::_get_label_unread($label_id, $owner_uid);
|
return self::_get_label_unread($label_id, $owner_uid);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1027,7 +1005,6 @@ class Feeds extends Handler_Protected {
|
|||||||
$sth->execute([$owner_uid]);
|
$sth->execute([$owner_uid]);
|
||||||
$row = $sth->fetch();
|
$row = $sth->fetch();
|
||||||
|
|
||||||
//$span->end();
|
|
||||||
return $row["unread"];
|
return $row["unread"];
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
@ -1040,7 +1017,6 @@ class Feeds extends Handler_Protected {
|
|||||||
$sth->execute([$feed, $owner_uid]);
|
$sth->execute([$feed, $owner_uid]);
|
||||||
$row = $sth->fetch();
|
$row = $sth->fetch();
|
||||||
|
|
||||||
//$span->end();
|
|
||||||
return $row["unread"];
|
return $row["unread"];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1433,10 +1409,6 @@ class Feeds extends Handler_Protected {
|
|||||||
* @return array<int, mixed> $result, $feed_title, $feed_site_url, $last_error, $last_updated, $highlight_words, $first_id, $is_vfeed, $query_error_override
|
* @return array<int, mixed> $result, $feed_title, $feed_site_url, $last_error, $last_updated, $highlight_words, $first_id, $is_vfeed, $query_error_override
|
||||||
*/
|
*/
|
||||||
static function _get_headlines($params): array {
|
static function _get_headlines($params): array {
|
||||||
|
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('func.args', json_encode(func_get_args()));
|
|
||||||
|
|
||||||
$pdo = Db::pdo();
|
$pdo = Db::pdo();
|
||||||
|
|
||||||
// WARNING: due to highly dynamic nature of this query its going to quote parameters
|
// WARNING: due to highly dynamic nature of this query its going to quote parameters
|
||||||
@ -1928,8 +1900,6 @@ class Feeds extends Handler_Protected {
|
|||||||
$res = $pdo->query($query);
|
$res = $pdo->query($query);
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return array($res, $feed_title, $feed_site_url, $last_error, $last_updated, $search_words, $first_id, $vfeed_query_part != "", $query_error_override);
|
return array($res, $feed_title, $feed_site_url, $last_error, $last_updated, $search_words, $first_id, $vfeed_query_part != "", $query_error_override);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2048,6 +2018,7 @@ class Feeds extends Handler_Protected {
|
|||||||
$entries = $xpath->query('/html/*[self::head or self::body]/link[@rel="alternate" and '.
|
$entries = $xpath->query('/html/*[self::head or self::body]/link[@rel="alternate" and '.
|
||||||
'(contains(@type,"rss") or contains(@type,"atom"))]|/html/*[self::head or self::body]/link[@rel="feed"]');
|
'(contains(@type,"rss") or contains(@type,"atom"))]|/html/*[self::head or self::body]/link[@rel="feed"]');
|
||||||
|
|
||||||
|
/** @var DOMElement|null $entry */
|
||||||
foreach ($entries as $entry) {
|
foreach ($entries as $entry) {
|
||||||
if ($entry->hasAttribute('href')) {
|
if ($entry->hasAttribute('href')) {
|
||||||
$title = $entry->getAttribute('title');
|
$title = $entry->getAttribute('title');
|
||||||
|
|||||||
@ -342,16 +342,8 @@ class PluginHost {
|
|||||||
*/
|
*/
|
||||||
function chain_hooks_callback(string $hook, Closure $callback, &...$args): void {
|
function chain_hooks_callback(string $hook, Closure $callback, &...$args): void {
|
||||||
$method = strtolower((string)$hook);
|
$method = strtolower((string)$hook);
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent("chain_hooks_callback: $hook");
|
|
||||||
|
|
||||||
foreach ($this->get_hooks((string)$hook) as $plugin) {
|
foreach ($this->get_hooks((string)$hook) as $plugin) {
|
||||||
//Debug::log("invoking: " . get_class($plugin) . "->$hook()", Debug::$LOG_VERBOSE);
|
|
||||||
|
|
||||||
//$p_span = Tracer::start("$hook - " . get_class($plugin));
|
|
||||||
|
|
||||||
$span->addEvent("$hook - " . get_class($plugin));
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if ($callback($plugin->$method(...$args), $plugin))
|
if ($callback($plugin->$method(...$args), $plugin))
|
||||||
break;
|
break;
|
||||||
@ -360,11 +352,7 @@ class PluginHost {
|
|||||||
} catch (Error $err) {
|
} catch (Error $err) {
|
||||||
user_error($err, E_USER_WARNING);
|
user_error($err, E_USER_WARNING);
|
||||||
}
|
}
|
||||||
|
|
||||||
//$p_span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//$span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -430,9 +418,6 @@ class PluginHost {
|
|||||||
* @param PluginHost::KIND_* $kind
|
* @param PluginHost::KIND_* $kind
|
||||||
*/
|
*/
|
||||||
function load_all(int $kind, ?int $owner_uid = null, bool $skip_init = false): void {
|
function load_all(int $kind, ?int $owner_uid = null, bool $skip_init = false): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('func.args', json_encode(func_get_args()));
|
|
||||||
|
|
||||||
$plugins = [...(glob("plugins/*") ?: []), ...(glob("plugins.local/*") ?: [])];
|
$plugins = [...(glob("plugins/*") ?: []), ...(glob("plugins.local/*") ?: [])];
|
||||||
$plugins = array_filter($plugins, "is_dir");
|
$plugins = array_filter($plugins, "is_dir");
|
||||||
$plugins = array_map("basename", $plugins);
|
$plugins = array_map("basename", $plugins);
|
||||||
@ -440,17 +425,12 @@ class PluginHost {
|
|||||||
asort($plugins);
|
asort($plugins);
|
||||||
|
|
||||||
$this->load(join(",", $plugins), (int)$kind, $owner_uid, $skip_init);
|
$this->load(join(",", $plugins), (int)$kind, $owner_uid, $skip_init);
|
||||||
|
|
||||||
$span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param PluginHost::KIND_* $kind
|
* @param PluginHost::KIND_* $kind
|
||||||
*/
|
*/
|
||||||
function load(string $classlist, int $kind, ?int $owner_uid = null, bool $skip_init = false): void {
|
function load(string $classlist, int $kind, ?int $owner_uid = null, bool $skip_init = false): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('func.args', json_encode(func_get_args()));
|
|
||||||
|
|
||||||
$plugins = explode(",", $classlist);
|
$plugins = explode(",", $classlist);
|
||||||
|
|
||||||
$this->owner_uid = (int) $owner_uid;
|
$this->owner_uid = (int) $owner_uid;
|
||||||
@ -459,8 +439,6 @@ class PluginHost {
|
|||||||
$class = trim($class);
|
$class = trim($class);
|
||||||
$class_file = strtolower(basename(clean($class)));
|
$class_file = strtolower(basename(clean($class)));
|
||||||
|
|
||||||
$span->addEvent("$class_file: load");
|
|
||||||
|
|
||||||
// try system plugin directory first
|
// try system plugin directory first
|
||||||
$file = Config::get_self_dir() . "/plugins/$class_file/init.php";
|
$file = Config::get_self_dir() . "/plugins/$class_file/init.php";
|
||||||
|
|
||||||
@ -485,8 +463,6 @@ class PluginHost {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$_SESSION["safe_mode"] = 1;
|
$_SESSION["safe_mode"] = 1;
|
||||||
|
|
||||||
$span->setAttribute('error', 'plugin is blacklisted');
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -497,8 +473,6 @@ class PluginHost {
|
|||||||
|
|
||||||
} catch (Error $err) {
|
} catch (Error $err) {
|
||||||
user_error($err, E_USER_WARNING);
|
user_error($err, E_USER_WARNING);
|
||||||
|
|
||||||
$span->setAttribute('error', $err);
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -508,8 +482,6 @@ class PluginHost {
|
|||||||
|
|
||||||
if ($plugin_api < self::API_VERSION) {
|
if ($plugin_api < self::API_VERSION) {
|
||||||
user_error("Plugin $class is not compatible with current API version (need: " . self::API_VERSION . ", got: $plugin_api)", E_USER_WARNING);
|
user_error("Plugin $class is not compatible with current API version (need: " . self::API_VERSION . ", got: $plugin_api)", E_USER_WARNING);
|
||||||
|
|
||||||
$span->setAttribute('error', 'plugin is not compatible with API version');
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -518,8 +490,6 @@ class PluginHost {
|
|||||||
_bind_textdomain_codeset($class, "UTF-8");
|
_bind_textdomain_codeset($class, "UTF-8");
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->addEvent("$class_file: initialize");
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
switch ($kind) {
|
switch ($kind) {
|
||||||
case $this::KIND_SYSTEM:
|
case $this::KIND_SYSTEM:
|
||||||
@ -549,7 +519,6 @@ class PluginHost {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$this->load_data();
|
$this->load_data();
|
||||||
$span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function is_system(Plugin $plugin): bool {
|
function is_system(Plugin $plugin): bool {
|
||||||
@ -638,17 +607,12 @@ class PluginHost {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private function load_data(): void {
|
private function load_data(): void {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent('load plugin data');
|
|
||||||
|
|
||||||
if ($this->owner_uid && !$this->data_loaded && Config::get_schema_version() > 100) {
|
if ($this->owner_uid && !$this->data_loaded && Config::get_schema_version() > 100) {
|
||||||
$sth = $this->pdo->prepare("SELECT name, content FROM ttrss_plugin_storage
|
$sth = $this->pdo->prepare("SELECT name, content FROM ttrss_plugin_storage
|
||||||
WHERE owner_uid = ?");
|
WHERE owner_uid = ?");
|
||||||
$sth->execute([$this->owner_uid]);
|
$sth->execute([$this->owner_uid]);
|
||||||
|
|
||||||
while ($line = $sth->fetch()) {
|
while ($line = $sth->fetch()) {
|
||||||
$span->addEvent($line["name"] . ': unserialize');
|
|
||||||
|
|
||||||
$this->storage[$line["name"]] = unserialize($line["content"]);
|
$this->storage[$line["name"]] = unserialize($line["content"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -658,9 +622,6 @@ class PluginHost {
|
|||||||
|
|
||||||
private function save_data(string $plugin): void {
|
private function save_data(string $plugin): void {
|
||||||
if ($this->owner_uid) {
|
if ($this->owner_uid) {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent(__METHOD__ . ": $plugin");
|
|
||||||
|
|
||||||
if (!$this->pdo_data)
|
if (!$this->pdo_data)
|
||||||
$this->pdo_data = Db::instance()->pdo_connect();
|
$this->pdo_data = Db::instance()->pdo_connect();
|
||||||
|
|
||||||
|
|||||||
@ -1077,9 +1077,6 @@ class Pref_Feeds extends Handler_Protected {
|
|||||||
* @return array<string, mixed>
|
* @return array<string, mixed>
|
||||||
*/
|
*/
|
||||||
private function feedlist_init_cat(int $cat_id): array {
|
private function feedlist_init_cat(int $cat_id): array {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent(__METHOD__ . ": $cat_id");
|
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'id' => 'CAT:' . $cat_id,
|
'id' => 'CAT:' . $cat_id,
|
||||||
'items' => array(),
|
'items' => array(),
|
||||||
@ -1094,9 +1091,6 @@ class Pref_Feeds extends Handler_Protected {
|
|||||||
* @return array<string, mixed>
|
* @return array<string, mixed>
|
||||||
*/
|
*/
|
||||||
private function feedlist_init_feed(int $feed_id, ?string $title = null, bool $unread = false, string $error = '', string $updated = ''): array {
|
private function feedlist_init_feed(int $feed_id, ?string $title = null, bool $unread = false, string $error = '', string $updated = ''): array {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent(__METHOD__ . ": $feed_id");
|
|
||||||
|
|
||||||
if (!$title)
|
if (!$title)
|
||||||
$title = Feeds::_get_title($feed_id, false);
|
$title = Feeds::_get_title($feed_id, false);
|
||||||
|
|
||||||
|
|||||||
@ -106,8 +106,6 @@ class RPC extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function getAllCounters(): void {
|
function getAllCounters(): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
@$seq = (int) $_REQUEST['seq'];
|
@$seq = (int) $_REQUEST['seq'];
|
||||||
|
|
||||||
$feed_id_count = (int) ($_REQUEST["feed_id_count"] ?? -1);
|
$feed_id_count = (int) ($_REQUEST["feed_id_count"] ?? -1);
|
||||||
@ -134,7 +132,6 @@ class RPC extends Handler_Protected {
|
|||||||
'seq' => $seq
|
'seq' => $seq
|
||||||
];
|
];
|
||||||
|
|
||||||
$span->end();
|
|
||||||
print json_encode($reply);
|
print json_encode($reply);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -176,8 +173,6 @@ class RPC extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function sanityCheck(): void {
|
function sanityCheck(): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$_SESSION["hasSandbox"] = self::_param_to_bool($_REQUEST["hasSandbox"] ?? false);
|
$_SESSION["hasSandbox"] = self::_param_to_bool($_REQUEST["hasSandbox"] ?? false);
|
||||||
$_SESSION["clientTzOffset"] = clean($_REQUEST["clientTzOffset"]);
|
$_SESSION["clientTzOffset"] = clean($_REQUEST["clientTzOffset"]);
|
||||||
|
|
||||||
@ -209,8 +204,6 @@ class RPC extends Handler_Protected {
|
|||||||
} else {
|
} else {
|
||||||
print Errors::to_json($error, $error_params);
|
print Errors::to_json($error, $error_params);
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*function completeLabels() {
|
/*function completeLabels() {
|
||||||
@ -254,8 +247,6 @@ class RPC extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static function updaterandomfeed_real(): void {
|
static function updaterandomfeed_real(): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$default_interval = (int) Prefs::get_default(Prefs::DEFAULT_UPDATE_INTERVAL);
|
$default_interval = (int) Prefs::get_default(Prefs::DEFAULT_UPDATE_INTERVAL);
|
||||||
|
|
||||||
// Test if the feed need a update (update interval exceded).
|
// Test if the feed need a update (update interval exceded).
|
||||||
@ -344,8 +335,6 @@ class RPC extends Handler_Protected {
|
|||||||
} else {
|
} else {
|
||||||
print json_encode(array("message" => "NOTHING_TO_UPDATE"));
|
print json_encode(array("message" => "NOTHING_TO_UPDATE"));
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function updaterandomfeed(): void {
|
function updaterandomfeed(): void {
|
||||||
@ -401,8 +390,6 @@ class RPC extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function log(): void {
|
function log(): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$msg = clean($_REQUEST['msg'] ?? "");
|
$msg = clean($_REQUEST['msg'] ?? "");
|
||||||
$file = basename(clean($_REQUEST['file'] ?? ""));
|
$file = basename(clean($_REQUEST['file'] ?? ""));
|
||||||
$line = (int) clean($_REQUEST['line'] ?? 0);
|
$line = (int) clean($_REQUEST['line'] ?? 0);
|
||||||
@ -414,13 +401,9 @@ class RPC extends Handler_Protected {
|
|||||||
|
|
||||||
echo json_encode(array("message" => "HOST_ERROR_LOGGED"));
|
echo json_encode(array("message" => "HOST_ERROR_LOGGED"));
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function checkforupdates(): void {
|
function checkforupdates(): void {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$rv = ["changeset" => [], "plugins" => []];
|
$rv = ["changeset" => [], "plugins" => []];
|
||||||
|
|
||||||
$version = Config::get_version(false);
|
$version = Config::get_version(false);
|
||||||
@ -446,8 +429,6 @@ class RPC extends Handler_Protected {
|
|||||||
$rv["plugins"] = Pref_Prefs::_get_updated_plugins();
|
$rv["plugins"] = Pref_Prefs::_get_updated_plugins();
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
print json_encode($rv);
|
print json_encode($rv);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -455,8 +436,6 @@ class RPC extends Handler_Protected {
|
|||||||
* @return array<string, mixed>
|
* @return array<string, mixed>
|
||||||
*/
|
*/
|
||||||
private function _make_init_params(): array {
|
private function _make_init_params(): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$params = array();
|
$params = array();
|
||||||
|
|
||||||
foreach ([Prefs::ON_CATCHUP_SHOW_NEXT_FEED, Prefs::HIDE_READ_FEEDS,
|
foreach ([Prefs::ON_CATCHUP_SHOW_NEXT_FEED, Prefs::HIDE_READ_FEEDS,
|
||||||
@ -509,8 +488,6 @@ class RPC extends Handler_Protected {
|
|||||||
$params["icon_blank"] = $this->image_to_base64("images/blank_icon.gif");
|
$params["icon_blank"] = $this->image_to_base64("images/blank_icon.gif");
|
||||||
$params["labels"] = Labels::get_all($_SESSION["uid"]);
|
$params["labels"] = Labels::get_all($_SESSION["uid"]);
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $params;
|
return $params;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -530,8 +507,6 @@ class RPC extends Handler_Protected {
|
|||||||
* @return array<string, mixed>
|
* @return array<string, mixed>
|
||||||
*/
|
*/
|
||||||
static function _make_runtime_info(): array {
|
static function _make_runtime_info(): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$data = array();
|
$data = array();
|
||||||
|
|
||||||
$pdo = Db::pdo();
|
$pdo = Db::pdo();
|
||||||
@ -597,8 +572,6 @@ class RPC extends Handler_Protected {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -69,8 +69,6 @@ class RSSUtils {
|
|||||||
* @param array<string, false|string> $options
|
* @param array<string, false|string> $options
|
||||||
*/
|
*/
|
||||||
static function update_daemon_common(int $limit = 0, array $options = []): int {
|
static function update_daemon_common(int $limit = 0, array $options = []): int {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
if (!$limit) $limit = Config::get(Config::DAEMON_FEED_LIMIT);
|
if (!$limit) $limit = Config::get(Config::DAEMON_FEED_LIMIT);
|
||||||
|
|
||||||
if (Config::get_schema_version() != Config::SCHEMA_VERSION) {
|
if (Config::get_schema_version() != Config::SCHEMA_VERSION) {
|
||||||
@ -312,8 +310,6 @@ class RSSUtils {
|
|||||||
// Send feed digests by email if needed.
|
// Send feed digests by email if needed.
|
||||||
Digest::send_headlines_digests();
|
Digest::send_headlines_digests();
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $nf;
|
return $nf;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -380,9 +376,6 @@ class RSSUtils {
|
|||||||
|
|
||||||
static function update_rss_feed(int $feed, bool $no_cache = false, bool $html_output = false) : bool {
|
static function update_rss_feed(int $feed, bool $no_cache = false, bool $html_output = false) : bool {
|
||||||
|
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('func.args', json_encode(func_get_args()));
|
|
||||||
|
|
||||||
Debug::enable_html($html_output);
|
Debug::enable_html($html_output);
|
||||||
Debug::log("start", Debug::LOG_VERBOSE);
|
Debug::log("start", Debug::LOG_VERBOSE);
|
||||||
|
|
||||||
@ -418,19 +411,16 @@ class RSSUtils {
|
|||||||
if ($user) {
|
if ($user) {
|
||||||
if ($user->access_level == UserHelper::ACCESS_LEVEL_READONLY) {
|
if ($user->access_level == UserHelper::ACCESS_LEVEL_READONLY) {
|
||||||
Debug::log("error: denied update for $feed: permission denied by owner access level");
|
Debug::log("error: denied update for $feed: permission denied by owner access level");
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// this would indicate database corruption of some kind
|
// this would indicate database corruption of some kind
|
||||||
Debug::log("error: owner not found for feed: $feed");
|
Debug::log("error: owner not found for feed: $feed");
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
Debug::log("error: feeds table record not found for feed: $feed");
|
Debug::log("error: feeds table record not found for feed: $feed");
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -589,7 +579,6 @@ class RSSUtils {
|
|||||||
$feed_obj->save();
|
$feed_obj->save();
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
return $error_message == "";
|
return $error_message == "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -731,7 +720,6 @@ class RSSUtils {
|
|||||||
]);
|
]);
|
||||||
|
|
||||||
$feed_obj->save();
|
$feed_obj->save();
|
||||||
$span->end();
|
|
||||||
return true; // no articles
|
return true; // no articles
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -740,8 +728,6 @@ class RSSUtils {
|
|||||||
$tstart = time();
|
$tstart = time();
|
||||||
|
|
||||||
foreach ($items as $item) {
|
foreach ($items as $item) {
|
||||||
$a_span = Tracer::start('article');
|
|
||||||
|
|
||||||
$pdo->beginTransaction();
|
$pdo->beginTransaction();
|
||||||
|
|
||||||
Debug::log(Debug::SEPARATOR, Debug::LOG_VERBOSE);
|
Debug::log(Debug::SEPARATOR, Debug::LOG_VERBOSE);
|
||||||
@ -1327,7 +1313,6 @@ class RSSUtils {
|
|||||||
Debug::log("article processed.", Debug::LOG_VERBOSE);
|
Debug::log("article processed.", Debug::LOG_VERBOSE);
|
||||||
|
|
||||||
$pdo->commit();
|
$pdo->commit();
|
||||||
$a_span->end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Debug::log(Debug::SEPARATOR, Debug::LOG_VERBOSE);
|
Debug::log(Debug::SEPARATOR, Debug::LOG_VERBOSE);
|
||||||
@ -1368,12 +1353,10 @@ class RSSUtils {
|
|||||||
unset($rss);
|
unset($rss);
|
||||||
|
|
||||||
Debug::log("update failed.", Debug::LOG_VERBOSE);
|
Debug::log("update failed.", Debug::LOG_VERBOSE);
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Debug::log("update done.", Debug::LOG_VERBOSE);
|
Debug::log("update done.", Debug::LOG_VERBOSE);
|
||||||
$span->end();
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1446,6 +1429,7 @@ class RSSUtils {
|
|||||||
|
|
||||||
$entries = $xpath->query('(//img[@src]|//source[@src|@srcset]|//video[@poster|@src])');
|
$entries = $xpath->query('(//img[@src]|//source[@src|@srcset]|//video[@poster|@src])');
|
||||||
|
|
||||||
|
/** @var DOMElement $entry */
|
||||||
foreach ($entries as $entry) {
|
foreach ($entries as $entry) {
|
||||||
foreach (array('src', 'poster') as $attr) {
|
foreach (array('src', 'poster') as $attr) {
|
||||||
if ($entry->hasAttribute($attr) && strpos($entry->getAttribute($attr), "data:") !== 0) {
|
if ($entry->hasAttribute($attr) && strpos($entry->getAttribute($attr), "data:") !== 0) {
|
||||||
@ -1538,8 +1522,6 @@ class RSSUtils {
|
|||||||
* @return array<int, array<string, string>> An array of filter action arrays with keys "type" and "param"
|
* @return array<int, array<string, string>> An array of filter action arrays with keys "type" and "param"
|
||||||
*/
|
*/
|
||||||
static function get_article_filters(array $filters, string $title, string $content, string $link, string $author, array $tags, ?array &$matched_rules = null, ?array &$matched_filters = null): array {
|
static function get_article_filters(array $filters, string $title, string $content, string $link, string $author, array $tags, ?array &$matched_rules = null, ?array &$matched_filters = null): array {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
|
|
||||||
$matches = array();
|
$matches = array();
|
||||||
|
|
||||||
foreach ($filters as $filter) {
|
foreach ($filters as $filter) {
|
||||||
@ -1626,8 +1608,6 @@ class RSSUtils {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return $matches;
|
return $matches;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2033,20 +2013,21 @@ class RSSUtils {
|
|||||||
$xpath = new DOMXPath($doc);
|
$xpath = new DOMXPath($doc);
|
||||||
|
|
||||||
$base = $xpath->query('/html/head/base[@href]');
|
$base = $xpath->query('/html/head/base[@href]');
|
||||||
|
|
||||||
|
/** @var DOMElement $b */
|
||||||
foreach ($base as $b) {
|
foreach ($base as $b) {
|
||||||
$url = UrlHelper::rewrite_relative($url, $b->getAttribute("href"));
|
$url = UrlHelper::rewrite_relative($url, $b->getAttribute("href"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$entries = $xpath->query('/html/head/link[@rel="shortcut icon" or @rel="icon" or @rel="alternate icon"]');
|
$entries = $xpath->query('/html/head/link[@rel="shortcut icon" or @rel="icon" or @rel="alternate icon"]');
|
||||||
if (count($entries) > 0) {
|
|
||||||
|
/** @var DOMElement $entry */
|
||||||
foreach ($entries as $entry) {
|
foreach ($entries as $entry) {
|
||||||
$favicon_url = UrlHelper::rewrite_relative($url, $entry->getAttribute("href"));
|
$favicon_url = UrlHelper::rewrite_relative($url, $entry->getAttribute("href"));
|
||||||
|
|
||||||
if ($favicon_url)
|
if ($favicon_url)
|
||||||
array_push($favicon_urls, $favicon_url);
|
array_push($favicon_urls, $favicon_url);
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,6 +9,8 @@ class Sanitizer {
|
|||||||
$entries = $xpath->query('//*');
|
$entries = $xpath->query('//*');
|
||||||
|
|
||||||
foreach ($entries as $entry) {
|
foreach ($entries as $entry) {
|
||||||
|
/** @var DOMElement $entry */
|
||||||
|
|
||||||
if (!in_array($entry->nodeName, $allowed_elements)) {
|
if (!in_array($entry->nodeName, $allowed_elements)) {
|
||||||
$entry->parentNode->removeChild($entry);
|
$entry->parentNode->removeChild($entry);
|
||||||
}
|
}
|
||||||
@ -63,9 +65,6 @@ class Sanitizer {
|
|||||||
* @return false|string The HTML, or false if an error occurred.
|
* @return false|string The HTML, or false if an error occurred.
|
||||||
*/
|
*/
|
||||||
public static function sanitize(string $str, ?bool $force_remove_images = false, ?int $owner = null, ?string $site_url = null, ?array $highlight_words = null, ?int $article_id = null) {
|
public static function sanitize(string $str, ?bool $force_remove_images = false, ?int $owner = null, ?string $site_url = null, ?array $highlight_words = null, ?int $article_id = null) {
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
$span->addEvent("Sanitizer::sanitize");
|
|
||||||
|
|
||||||
if (!$owner && isset($_SESSION["uid"]))
|
if (!$owner && isset($_SESSION["uid"]))
|
||||||
$owner = $_SESSION["uid"];
|
$owner = $_SESSION["uid"];
|
||||||
|
|
||||||
@ -81,6 +80,7 @@ class Sanitizer {
|
|||||||
|
|
||||||
$entries = $xpath->query('(//a[@href]|//img[@src]|//source[@srcset|@src]|//video[@poster])');
|
$entries = $xpath->query('(//a[@href]|//img[@src]|//source[@srcset|@src]|//video[@poster])');
|
||||||
|
|
||||||
|
/** @var DOMElement $entry */
|
||||||
foreach ($entries as $entry) {
|
foreach ($entries as $entry) {
|
||||||
|
|
||||||
if ($entry->hasAttribute('href')) {
|
if ($entry->hasAttribute('href')) {
|
||||||
@ -143,6 +143,8 @@ class Sanitizer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$entries = $xpath->query('//iframe');
|
$entries = $xpath->query('//iframe');
|
||||||
|
|
||||||
|
/** @var DOMElement $entry */
|
||||||
foreach ($entries as $entry) {
|
foreach ($entries as $entry) {
|
||||||
if (!self::iframe_whitelisted($entry)) {
|
if (!self::iframe_whitelisted($entry)) {
|
||||||
$entry->setAttribute('sandbox', 'allow-scripts');
|
$entry->setAttribute('sandbox', 'allow-scripts');
|
||||||
|
|||||||
@ -1,216 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
use OpenTelemetry\API\Trace\Propagation\TraceContextPropagator;
|
|
||||||
use OpenTelemetry\API\Trace\SpanContextInterface;
|
|
||||||
use OpenTelemetry\API\Trace\SpanInterface;
|
|
||||||
use OpenTelemetry\API\Trace\SpanKind;
|
|
||||||
use OpenTelemetry\API\Trace\TraceFlags;
|
|
||||||
use OpenTelemetry\API\Trace\TraceStateInterface;
|
|
||||||
use OpenTelemetry\Context\ContextInterface;
|
|
||||||
use OpenTelemetry\Context\ContextKey;
|
|
||||||
use OpenTelemetry\Context\ContextKeyInterface;
|
|
||||||
use OpenTelemetry\Context\ImplicitContextKeyedInterface;
|
|
||||||
use OpenTelemetry\Context\ScopeInterface;
|
|
||||||
use OpenTelemetry\Contrib\Otlp\OtlpHttpTransportFactory;
|
|
||||||
use OpenTelemetry\Contrib\Otlp\SpanExporter;
|
|
||||||
use OpenTelemetry\SDK\Common\Attribute\Attributes;
|
|
||||||
use OpenTelemetry\SDK\Resource\ResourceInfo;
|
|
||||||
use OpenTelemetry\SDK\Resource\ResourceInfoFactory;
|
|
||||||
use OpenTelemetry\SDK\Trace\Sampler\AlwaysOnSampler;
|
|
||||||
use OpenTelemetry\SDK\Trace\Sampler\ParentBased;
|
|
||||||
use OpenTelemetry\SDK\Trace\SpanProcessor\SimpleSpanProcessor;
|
|
||||||
use OpenTelemetry\SDK\Trace\TracerProvider;
|
|
||||||
use OpenTelemetry\SemConv\ResourceAttributes;
|
|
||||||
|
|
||||||
class DummyContextInterface implements ContextInterface {
|
|
||||||
|
|
||||||
/** @var DummyContextInterface */
|
|
||||||
private static $instance;
|
|
||||||
|
|
||||||
public function __construct() {
|
|
||||||
self::$instance = $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** @phpstan-ignore-next-line */
|
|
||||||
public static function createKey(string $key): ContextKeyInterface { return new ContextKey(); }
|
|
||||||
|
|
||||||
public static function getCurrent(): ContextInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public function activate(): ScopeInterface { return new DummyScopeInterface(); }
|
|
||||||
|
|
||||||
public function with(ContextKeyInterface $key, $value): ContextInterface { return $this; }
|
|
||||||
|
|
||||||
public function withContextValue(ImplicitContextKeyedInterface $value): ContextInterface { return $this; }
|
|
||||||
|
|
||||||
public function get(ContextKeyInterface $key) { return new ContextKey(); }
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
class DummySpanContextInterface implements SpanContextInterface {
|
|
||||||
|
|
||||||
/** @var DummySpanContextInterface $instance */
|
|
||||||
private static $instance;
|
|
||||||
|
|
||||||
public function __construct() {
|
|
||||||
self::$instance = $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function createFromRemoteParent(string $traceId, string $spanId, int $traceFlags = TraceFlags::DEFAULT, ?TraceStateInterface $traceState = null): SpanContextInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public static function getInvalid(): SpanContextInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public static function create(string $traceId, string $spanId, int $traceFlags = TraceFlags::DEFAULT, ?TraceStateInterface $traceState = null): SpanContextInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public function getTraceId(): string { return ""; }
|
|
||||||
|
|
||||||
public function getTraceIdBinary(): string { return ""; }
|
|
||||||
|
|
||||||
public function getSpanId(): string { return ""; }
|
|
||||||
|
|
||||||
public function getSpanIdBinary(): string { return ""; }
|
|
||||||
|
|
||||||
public function getTraceFlags(): int { return 0; }
|
|
||||||
|
|
||||||
public function getTraceState(): ?TraceStateInterface { return null; }
|
|
||||||
|
|
||||||
public function isValid(): bool { return false; }
|
|
||||||
|
|
||||||
public function isRemote(): bool { return false; }
|
|
||||||
|
|
||||||
public function isSampled(): bool { return false; }
|
|
||||||
}
|
|
||||||
|
|
||||||
class DummyScopeInterface implements ScopeInterface {
|
|
||||||
public function detach(): int { return 0; }
|
|
||||||
}
|
|
||||||
|
|
||||||
class DummySpanInterface implements SpanInterface {
|
|
||||||
|
|
||||||
/** @var DummySpanInterface $instance */
|
|
||||||
private static $instance;
|
|
||||||
|
|
||||||
public function __construct() {
|
|
||||||
self::$instance = $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function fromContext(ContextInterface $context): SpanInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public static function getCurrent(): SpanInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public static function getInvalid(): SpanInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public static function wrap(SpanContextInterface $spanContext): SpanInterface { return self::$instance; }
|
|
||||||
|
|
||||||
public function getContext(): SpanContextInterface { return new DummySpanContextInterface(); }
|
|
||||||
|
|
||||||
public function isRecording(): bool { return false; }
|
|
||||||
|
|
||||||
/** @phpstan-ignore-next-line */
|
|
||||||
public function setAttribute(string $key, $value): SpanInterface { return self::$instance; }
|
|
||||||
|
|
||||||
/** @phpstan-ignore-next-line */
|
|
||||||
public function setAttributes(iterable $attributes): SpanInterface { return self::$instance; }
|
|
||||||
|
|
||||||
/** @phpstan-ignore-next-line */
|
|
||||||
public function addEvent(string $name, iterable $attributes = [], ?int $timestamp = null): SpanInterface { return $this; }
|
|
||||||
|
|
||||||
/** @phpstan-ignore-next-line */
|
|
||||||
public function recordException(Throwable $exception, iterable $attributes = []): SpanInterface { return $this; }
|
|
||||||
|
|
||||||
public function updateName(string $name): SpanInterface { return $this; }
|
|
||||||
|
|
||||||
public function setStatus(string $code, ?string $description = null): SpanInterface { return $this; }
|
|
||||||
|
|
||||||
public function end(?int $endEpochNanos = null): void { }
|
|
||||||
|
|
||||||
public function activate(): ScopeInterface { return new DummyScopeInterface(); }
|
|
||||||
|
|
||||||
public function storeInContext(ContextInterface $context): ContextInterface { return new DummyContextInterface(); }
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
class Tracer {
|
|
||||||
/** @var Tracer $instance */
|
|
||||||
private static $instance = null;
|
|
||||||
|
|
||||||
/** @var OpenTelemetry\SDK\Trace\TracerProviderInterface $tracerProvider */
|
|
||||||
private $tracerProvider = null;
|
|
||||||
|
|
||||||
/** @var OpenTelemetry\API\Trace\TracerInterface $tracer */
|
|
||||||
private $tracer = null;
|
|
||||||
|
|
||||||
public function __construct() {
|
|
||||||
$OPENTELEMETRY_ENDPOINT = Config::get(Config::OPENTELEMETRY_ENDPOINT);
|
|
||||||
|
|
||||||
if ($OPENTELEMETRY_ENDPOINT) {
|
|
||||||
$transport = (new OtlpHttpTransportFactory())->create($OPENTELEMETRY_ENDPOINT, 'application/x-protobuf');
|
|
||||||
$exporter = new SpanExporter($transport);
|
|
||||||
|
|
||||||
$resource = ResourceInfoFactory::emptyResource()->merge(
|
|
||||||
ResourceInfo::create(Attributes::create(
|
|
||||||
[ResourceAttributes::SERVICE_NAME => Config::get(Config::OPENTELEMETRY_SERVICE)]
|
|
||||||
), ResourceAttributes::SCHEMA_URL),
|
|
||||||
);
|
|
||||||
|
|
||||||
$this->tracerProvider = TracerProvider::builder()
|
|
||||||
->addSpanProcessor(new SimpleSpanProcessor($exporter))
|
|
||||||
->setResource($resource)
|
|
||||||
->setSampler(new ParentBased(new AlwaysOnSampler()))
|
|
||||||
->build();
|
|
||||||
|
|
||||||
$this->tracer = $this->tracerProvider->getTracer('io.opentelemetry.contrib.php');
|
|
||||||
|
|
||||||
$context = TraceContextPropagator::getInstance()->extract(getallheaders());
|
|
||||||
|
|
||||||
$span = $this->tracer->spanBuilder($_SESSION['name'] ?? 'not logged in')
|
|
||||||
->setParent($context)
|
|
||||||
->setSpanKind(SpanKind::KIND_SERVER)
|
|
||||||
->setAttribute('php.request', json_encode($_REQUEST))
|
|
||||||
->setAttribute('php.server', json_encode($_SERVER))
|
|
||||||
->setAttribute('php.session', json_encode($_SESSION ?? []))
|
|
||||||
->startSpan();
|
|
||||||
|
|
||||||
$scope = $span->activate();
|
|
||||||
|
|
||||||
register_shutdown_function(function() use ($span, $scope) {
|
|
||||||
$span->end();
|
|
||||||
$scope->detach();
|
|
||||||
$this->tracerProvider->shutdown();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param string $name
|
|
||||||
* @return OpenTelemetry\API\Trace\SpanInterface
|
|
||||||
*/
|
|
||||||
private function _start(string $name) {
|
|
||||||
if ($this->tracer != null) {
|
|
||||||
$span = $this->tracer
|
|
||||||
->spanBuilder($name)
|
|
||||||
->setSpanKind(SpanKind::KIND_SERVER)
|
|
||||||
->startSpan();
|
|
||||||
|
|
||||||
$span->activate();
|
|
||||||
} else {
|
|
||||||
$span = new DummySpanInterface();
|
|
||||||
}
|
|
||||||
|
|
||||||
return $span;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param string $name
|
|
||||||
* @return OpenTelemetry\API\Trace\SpanInterface
|
|
||||||
*/
|
|
||||||
public static function start(string $name) {
|
|
||||||
return self::get_instance()->_start($name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function get_instance() : Tracer {
|
|
||||||
if (self::$instance == null)
|
|
||||||
self::$instance = new self();
|
|
||||||
|
|
||||||
return self::$instance;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -202,8 +202,6 @@ class UrlHelper {
|
|||||||
* @return false|string
|
* @return false|string
|
||||||
*/
|
*/
|
||||||
static function resolve_redirects(string $url, int $timeout) {
|
static function resolve_redirects(string $url, int $timeout) {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('func.args', json_encode(func_get_args()));
|
|
||||||
$client = self::get_client();
|
$client = self::get_client();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -218,14 +216,11 @@ class UrlHelper {
|
|||||||
],
|
],
|
||||||
]);
|
]);
|
||||||
} catch (Exception $ex) {
|
} catch (Exception $ex) {
|
||||||
$span->setAttribute('error', (string) $ex);
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// If a history header value doesn't exist there was no redirection and the original URL is fine.
|
// If a history header value doesn't exist there was no redirection and the original URL is fine.
|
||||||
$history_header = $response->getHeader(GuzzleHttp\RedirectMiddleware::HISTORY_HEADER);
|
$history_header = $response->getHeader(GuzzleHttp\RedirectMiddleware::HISTORY_HEADER);
|
||||||
$span->end();
|
|
||||||
return ($history_header ? end($history_header) : $url);
|
return ($history_header ? end($history_header) : $url);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -238,8 +233,6 @@ class UrlHelper {
|
|||||||
public static function fetch($options /* previously: 0: $url , 1: $type = false, 2: $login = false, 3: $pass = false,
|
public static function fetch($options /* previously: 0: $url , 1: $type = false, 2: $login = false, 3: $pass = false,
|
||||||
4: $post_query = false, 5: $timeout = false, 6: $timestamp = 0, 7: $useragent = false, 8: $encoding = false,
|
4: $post_query = false, 5: $timeout = false, 6: $timestamp = 0, 7: $useragent = false, 8: $encoding = false,
|
||||||
9: $auth_type = "basic" */) {
|
9: $auth_type = "basic" */) {
|
||||||
$span = Tracer::start(__METHOD__);
|
|
||||||
$span->setAttribute('func.args', json_encode(func_get_args()));
|
|
||||||
|
|
||||||
self::$fetch_last_error = "";
|
self::$fetch_last_error = "";
|
||||||
self::$fetch_last_error_code = -1;
|
self::$fetch_last_error_code = -1;
|
||||||
@ -299,8 +292,6 @@ class UrlHelper {
|
|||||||
|
|
||||||
if (!$url) {
|
if (!$url) {
|
||||||
self::$fetch_last_error = 'Requested URL failed extended validation.';
|
self::$fetch_last_error = 'Requested URL failed extended validation.';
|
||||||
$span->setAttribute('error', self::$fetch_last_error);
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -309,8 +300,6 @@ class UrlHelper {
|
|||||||
|
|
||||||
if (!$ip_addr || strpos($ip_addr, '127.') === 0) {
|
if (!$ip_addr || strpos($ip_addr, '127.') === 0) {
|
||||||
self::$fetch_last_error = "URL hostname failed to resolve or resolved to a loopback address ($ip_addr)";
|
self::$fetch_last_error = "URL hostname failed to resolve or resolved to a loopback address ($ip_addr)";
|
||||||
$span->setAttribute('error', self::$fetch_last_error);
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -392,8 +381,6 @@ class UrlHelper {
|
|||||||
} catch (\LengthException $ex) {
|
} catch (\LengthException $ex) {
|
||||||
// Either 'Content-Length' indicated the download limit would be exceeded, or the transfer actually exceeded the download limit.
|
// Either 'Content-Length' indicated the download limit would be exceeded, or the transfer actually exceeded the download limit.
|
||||||
self::$fetch_last_error = $ex->getMessage();
|
self::$fetch_last_error = $ex->getMessage();
|
||||||
$span->setAttribute('error', self::$fetch_last_error);
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
} catch (GuzzleHttp\Exception\GuzzleException $ex) {
|
} catch (GuzzleHttp\Exception\GuzzleException $ex) {
|
||||||
self::$fetch_last_error = $ex->getMessage();
|
self::$fetch_last_error = $ex->getMessage();
|
||||||
@ -407,7 +394,6 @@ class UrlHelper {
|
|||||||
// to attempt compatibility with unusual configurations.
|
// to attempt compatibility with unusual configurations.
|
||||||
if ($login && $pass && self::$fetch_last_error_code === 403 && $auth_type !== 'any') {
|
if ($login && $pass && self::$fetch_last_error_code === 403 && $auth_type !== 'any') {
|
||||||
$options['auth_type'] = 'any';
|
$options['auth_type'] = 'any';
|
||||||
$span->end();
|
|
||||||
return self::fetch($options);
|
return self::fetch($options);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -424,15 +410,11 @@ class UrlHelper {
|
|||||||
if (($errno === \CURLE_WRITE_ERROR || $errno === \CURLE_BAD_CONTENT_ENCODING) &&
|
if (($errno === \CURLE_WRITE_ERROR || $errno === \CURLE_BAD_CONTENT_ENCODING) &&
|
||||||
$ex->getRequest()->getHeaderLine('accept-encoding') !== 'none') {
|
$ex->getRequest()->getHeaderLine('accept-encoding') !== 'none') {
|
||||||
$options['encoding'] = 'none';
|
$options['encoding'] = 'none';
|
||||||
$span->end();
|
|
||||||
return self::fetch($options);
|
return self::fetch($options);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->setAttribute('error', self::$fetch_last_error);
|
|
||||||
$span->end();
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -449,8 +431,6 @@ class UrlHelper {
|
|||||||
// This shouldn't be necessary given the checks that occur during potential redirects, but we'll do it anyway.
|
// This shouldn't be necessary given the checks that occur during potential redirects, but we'll do it anyway.
|
||||||
if (!self::validate(self::$fetch_effective_url, true)) {
|
if (!self::validate(self::$fetch_effective_url, true)) {
|
||||||
self::$fetch_last_error = "URL received after redirection failed extended validation.";
|
self::$fetch_last_error = "URL received after redirection failed extended validation.";
|
||||||
$span->setAttribute('error', self::$fetch_last_error);
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -459,8 +439,6 @@ class UrlHelper {
|
|||||||
if (!self::$fetch_effective_ip_addr || strpos(self::$fetch_effective_ip_addr, '127.') === 0) {
|
if (!self::$fetch_effective_ip_addr || strpos(self::$fetch_effective_ip_addr, '127.') === 0) {
|
||||||
self::$fetch_last_error = 'URL hostname received after redirection failed to resolve or resolved to a loopback address (' .
|
self::$fetch_last_error = 'URL hostname received after redirection failed to resolve or resolved to a loopback address (' .
|
||||||
self::$fetch_effective_ip_addr . ')';
|
self::$fetch_effective_ip_addr . ')';
|
||||||
$span->setAttribute('error', self::$fetch_last_error);
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -468,12 +446,9 @@ class UrlHelper {
|
|||||||
|
|
||||||
if (!$body) {
|
if (!$body) {
|
||||||
self::$fetch_last_error = 'Successful response, but no content was received.';
|
self::$fetch_last_error = 'Successful response, but no content was received.';
|
||||||
$span->setAttribute('error', self::$fetch_last_error);
|
|
||||||
$span->end();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
$span->end();
|
|
||||||
return $body;
|
return $body;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
{
|
{
|
||||||
"name": "j4mie/idiorm",
|
"name": "j4mie/idiorm",
|
||||||
"type": "vcs",
|
"type": "vcs",
|
||||||
"url": "https://dev.tt-rss.org/fox/idiorm.git"
|
"url": "https://git.tt-rss.org/fox/idiorm.git"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"autoload": {
|
"autoload": {
|
||||||
@ -25,7 +25,6 @@
|
|||||||
"chillerlan/php-qrcode": "^4.3.3",
|
"chillerlan/php-qrcode": "^4.3.3",
|
||||||
"mervick/material-design-icons": "^2.2",
|
"mervick/material-design-icons": "^2.2",
|
||||||
"j4mie/idiorm": "dev-master",
|
"j4mie/idiorm": "dev-master",
|
||||||
"open-telemetry/exporter-otlp": "^1.0",
|
|
||||||
"php-http/guzzle7-adapter": "^1.0",
|
"php-http/guzzle7-adapter": "^1.0",
|
||||||
"soundasleep/html2text": "^2.1",
|
"soundasleep/html2text": "^2.1",
|
||||||
"guzzlehttp/guzzle": "^7.0"
|
"guzzlehttp/guzzle": "^7.0"
|
||||||
|
|||||||
892
composer.lock
generated
892
composer.lock
generated
@ -4,7 +4,7 @@
|
|||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "a0465ea624d9e79bc5d8b04a345b1ad6",
|
"content-hash": "74c91680c7bc99c8ee087408620b2fa5",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "beberlei/assert",
|
"name": "beberlei/assert",
|
||||||
@ -215,50 +215,6 @@
|
|||||||
],
|
],
|
||||||
"time": "2022-07-05T22:32:14+00:00"
|
"time": "2022-07-05T22:32:14+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "google/protobuf",
|
|
||||||
"version": "v3.24.4",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/protocolbuffers/protobuf-php.git",
|
|
||||||
"reference": "672d69e25f71b9364fdf1810eb8a8573defdc404"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/protocolbuffers/protobuf-php/zipball/672d69e25f71b9364fdf1810eb8a8573defdc404",
|
|
||||||
"reference": "672d69e25f71b9364fdf1810eb8a8573defdc404",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.0.0"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": ">=5.0.0"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-bcmath": "Need to support JSON deserialization"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Google\\Protobuf\\": "src/Google/Protobuf",
|
|
||||||
"GPBMetadata\\Google\\Protobuf\\": "src/GPBMetadata/Google/Protobuf"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"BSD-3-Clause"
|
|
||||||
],
|
|
||||||
"description": "proto library for PHP",
|
|
||||||
"homepage": "https://developers.google.com/protocol-buffers/",
|
|
||||||
"keywords": [
|
|
||||||
"proto"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/protocolbuffers/protobuf-php/tree/v3.24.4"
|
|
||||||
},
|
|
||||||
"time": "2023-10-04T17:22:47+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "guzzlehttp/guzzle",
|
"name": "guzzlehttp/guzzle",
|
||||||
"version": "7.8.1",
|
"version": "7.8.1",
|
||||||
@ -692,398 +648,6 @@
|
|||||||
},
|
},
|
||||||
"time": "2016-02-22T01:05:40+00:00"
|
"time": "2016-02-22T01:05:40+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "open-telemetry/api",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/api.git",
|
|
||||||
"reference": "d577d732333d38a9a6c16936363ee25f1e3f1c3c"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/api/zipball/d577d732333d38a9a6c16936363ee25f1e3f1c3c",
|
|
||||||
"reference": "d577d732333d38a9a6c16936363ee25f1e3f1c3c",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"open-telemetry/context": "^1.0",
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"psr/log": "^1.1|^2.0|^3.0",
|
|
||||||
"symfony/polyfill-php80": "^1.26",
|
|
||||||
"symfony/polyfill-php81": "^1.26",
|
|
||||||
"symfony/polyfill-php82": "^1.26"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"Trace/functions.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\API\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "API for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"api",
|
|
||||||
"apm",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"time": "2023-09-27T23:15:51+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/context",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/context.git",
|
|
||||||
"reference": "99f3d54fa9f9ff67421774feeef5e5b1f209ea21"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/context/zipball/99f3d54fa9f9ff67421774feeef5e5b1f209ea21",
|
|
||||||
"reference": "99f3d54fa9f9ff67421774feeef5e5b1f209ea21",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"symfony/polyfill-php80": "^1.26",
|
|
||||||
"symfony/polyfill-php81": "^1.26",
|
|
||||||
"symfony/polyfill-php82": "^1.26"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-ffi": "To allow context switching in Fibers"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"fiber/initialize_fiber_handler.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\Context\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Context implementation for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Context",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"time": "2023-09-05T03:38:44+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/exporter-otlp",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/exporter-otlp.git",
|
|
||||||
"reference": "756092bdff472ea49adb7843c74011606d065b36"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/exporter-otlp/zipball/756092bdff472ea49adb7843c74011606d065b36",
|
|
||||||
"reference": "756092bdff472ea49adb7843c74011606d065b36",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"open-telemetry/api": "^1.0",
|
|
||||||
"open-telemetry/gen-otlp-protobuf": "^1.0",
|
|
||||||
"open-telemetry/sdk": "^1.0",
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"php-http/discovery": "^1.14"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"_register.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\Contrib\\Otlp\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "OTLP exporter for OpenTelemetry.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"exporter",
|
|
||||||
"gRPC",
|
|
||||||
"http",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"otlp",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"time": "2023-10-13T00:48:23+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/gen-otlp-protobuf",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/gen-otlp-protobuf.git",
|
|
||||||
"reference": "30fe95f10c2ec1a577f78257c86fbbebe739ca5e"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/gen-otlp-protobuf/zipball/30fe95f10c2ec1a577f78257c86fbbebe739ca5e",
|
|
||||||
"reference": "30fe95f10c2ec1a577f78257c86fbbebe739ca5e",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"google/protobuf": "^3.3.0",
|
|
||||||
"php": "^7.4 || ^8.0"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-protobuf": "For better performance, when dealing with the protobuf format"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Opentelemetry\\Proto\\": "Opentelemetry/Proto/",
|
|
||||||
"GPBMetadata\\Opentelemetry\\": "GPBMetadata/Opentelemetry/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "PHP protobuf files for communication with OpenTelemetry OTLP collectors/servers.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"apm",
|
|
||||||
"gRPC",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"otlp",
|
|
||||||
"protobuf",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"time": "2023-09-05T03:38:44+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/sdk",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/sdk.git",
|
|
||||||
"reference": "1c6020b4f1b85fdd647538ee46f6c83360d7c11e"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/sdk/zipball/1c6020b4f1b85fdd647538ee46f6c83360d7c11e",
|
|
||||||
"reference": "1c6020b4f1b85fdd647538ee46f6c83360d7c11e",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"ext-json": "*",
|
|
||||||
"open-telemetry/api": "^1.0",
|
|
||||||
"open-telemetry/context": "^1.0",
|
|
||||||
"open-telemetry/sem-conv": "^1.0",
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"php-http/discovery": "^1.14",
|
|
||||||
"psr/http-client": "^1.0",
|
|
||||||
"psr/http-client-implementation": "^1.0",
|
|
||||||
"psr/http-factory-implementation": "^1.0",
|
|
||||||
"psr/http-message": "^1.0.1|^2.0",
|
|
||||||
"psr/log": "^1.1|^2.0|^3.0",
|
|
||||||
"symfony/polyfill-mbstring": "^1.23",
|
|
||||||
"symfony/polyfill-php80": "^1.26",
|
|
||||||
"symfony/polyfill-php81": "^1.26",
|
|
||||||
"symfony/polyfill-php82": "^1.26"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-gmp": "To support unlimited number of synchronous metric readers",
|
|
||||||
"ext-mbstring": "To increase performance of string operations"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"Common/Util/functions.php",
|
|
||||||
"Logs/Exporter/_register.php",
|
|
||||||
"Metrics/MetricExporter/_register.php",
|
|
||||||
"Propagation/_register.php",
|
|
||||||
"Trace/SpanExporter/_register.php",
|
|
||||||
"Common/Dev/Compatibility/_load.php",
|
|
||||||
"_autoload.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\SDK\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "SDK for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"apm",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"sdk",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"time": "2023-10-18T20:53:08+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/sem-conv",
|
|
||||||
"version": "1.22.1",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/sem-conv.git",
|
|
||||||
"reference": "e582b874ee89bec544f962db212b3966fe9310a7"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/sem-conv/zipball/e582b874ee89bec544f962db212b3966fe9310a7",
|
|
||||||
"reference": "e582b874ee89bec544f962db212b3966fe9310a7",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": "^7.4 || ^8.0"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\SemConv\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Semantic conventions for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"apm",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"semantic conventions",
|
|
||||||
"semconv",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"time": "2023-10-19T20:10:44+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "paragonie/constant_time_encoding",
|
"name": "paragonie/constant_time_encoding",
|
||||||
"version": "v2.6.3",
|
"version": "v2.6.3",
|
||||||
@ -1151,84 +715,6 @@
|
|||||||
},
|
},
|
||||||
"time": "2022-06-14T06:56:20+00:00"
|
"time": "2022-06-14T06:56:20+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "php-http/discovery",
|
|
||||||
"version": "1.19.1",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/php-http/discovery.git",
|
|
||||||
"reference": "57f3de01d32085fea20865f9b16fb0e69347c39e"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/php-http/discovery/zipball/57f3de01d32085fea20865f9b16fb0e69347c39e",
|
|
||||||
"reference": "57f3de01d32085fea20865f9b16fb0e69347c39e",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"composer-plugin-api": "^1.0|^2.0",
|
|
||||||
"php": "^7.1 || ^8.0"
|
|
||||||
},
|
|
||||||
"conflict": {
|
|
||||||
"nyholm/psr7": "<1.0",
|
|
||||||
"zendframework/zend-diactoros": "*"
|
|
||||||
},
|
|
||||||
"provide": {
|
|
||||||
"php-http/async-client-implementation": "*",
|
|
||||||
"php-http/client-implementation": "*",
|
|
||||||
"psr/http-client-implementation": "*",
|
|
||||||
"psr/http-factory-implementation": "*",
|
|
||||||
"psr/http-message-implementation": "*"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"composer/composer": "^1.0.2|^2.0",
|
|
||||||
"graham-campbell/phpspec-skip-example-extension": "^5.0",
|
|
||||||
"php-http/httplug": "^1.0 || ^2.0",
|
|
||||||
"php-http/message-factory": "^1.0",
|
|
||||||
"phpspec/phpspec": "^5.1 || ^6.1 || ^7.3",
|
|
||||||
"symfony/phpunit-bridge": "^6.2"
|
|
||||||
},
|
|
||||||
"type": "composer-plugin",
|
|
||||||
"extra": {
|
|
||||||
"class": "Http\\Discovery\\Composer\\Plugin",
|
|
||||||
"plugin-optional": true
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Http\\Discovery\\": "src/"
|
|
||||||
},
|
|
||||||
"exclude-from-classmap": [
|
|
||||||
"src/Composer/Plugin.php"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Márk Sági-Kazár",
|
|
||||||
"email": "mark.sagikazar@gmail.com"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations",
|
|
||||||
"homepage": "http://php-http.org",
|
|
||||||
"keywords": [
|
|
||||||
"adapter",
|
|
||||||
"client",
|
|
||||||
"discovery",
|
|
||||||
"factory",
|
|
||||||
"http",
|
|
||||||
"message",
|
|
||||||
"psr17",
|
|
||||||
"psr7"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/php-http/discovery/issues",
|
|
||||||
"source": "https://github.com/php-http/discovery/tree/1.19.1"
|
|
||||||
},
|
|
||||||
"time": "2023-07-11T07:02:26+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "php-http/guzzle7-adapter",
|
"name": "php-http/guzzle7-adapter",
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
@ -1565,56 +1051,6 @@
|
|||||||
},
|
},
|
||||||
"time": "2023-04-04T09:54:51+00:00"
|
"time": "2023-04-04T09:54:51+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "psr/log",
|
|
||||||
"version": "3.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/php-fig/log.git",
|
|
||||||
"reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001",
|
|
||||||
"reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=8.0.0"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-master": "3.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Psr\\Log\\": "src"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "PHP-FIG",
|
|
||||||
"homepage": "https://www.php-fig.org/"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Common interface for logging libraries",
|
|
||||||
"homepage": "https://github.com/php-fig/log",
|
|
||||||
"keywords": [
|
|
||||||
"log",
|
|
||||||
"psr",
|
|
||||||
"psr-3"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/php-fig/log/tree/3.0.0"
|
|
||||||
},
|
|
||||||
"time": "2021-07-14T16:46:02+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "ralouphie/getallheaders",
|
"name": "ralouphie/getallheaders",
|
||||||
"version": "3.0.3",
|
"version": "3.0.3",
|
||||||
@ -1856,330 +1292,6 @@
|
|||||||
],
|
],
|
||||||
"time": "2022-01-02T09:55:41+00:00"
|
"time": "2022-01-02T09:55:41+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-mbstring",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
|
||||||
"reference": "42292d99c55abe617799667f454222c54c60e229"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
|
|
||||||
"reference": "42292d99c55abe617799667f454222c54c60e229",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"provide": {
|
|
||||||
"ext-mbstring": "*"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-mbstring": "For best performance"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Mbstring\\": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill for the Mbstring extension",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"mbstring",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"time": "2023-07-28T09:04:16+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-php80",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-php80.git",
|
|
||||||
"reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
|
|
||||||
"reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Php80\\": ""
|
|
||||||
},
|
|
||||||
"classmap": [
|
|
||||||
"Resources/stubs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Ion Bazan",
|
|
||||||
"email": "ion.bazan@gmail.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"time": "2023-01-26T09:26:14+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-php81",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-php81.git",
|
|
||||||
"reference": "7581cd600fa9fd681b797d00b02f068e2f13263b"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/7581cd600fa9fd681b797d00b02f068e2f13263b",
|
|
||||||
"reference": "7581cd600fa9fd681b797d00b02f068e2f13263b",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Php81\\": ""
|
|
||||||
},
|
|
||||||
"classmap": [
|
|
||||||
"Resources/stubs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php81/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"time": "2023-01-26T09:26:14+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-php82",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-php82.git",
|
|
||||||
"reference": "7716bea9c86776fb3362d6b52fe1fc9471056a49"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php82/zipball/7716bea9c86776fb3362d6b52fe1fc9471056a49",
|
|
||||||
"reference": "7716bea9c86776fb3362d6b52fe1fc9471056a49",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Php82\\": ""
|
|
||||||
},
|
|
||||||
"classmap": [
|
|
||||||
"Resources/stubs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill backporting some PHP 8.2+ features to lower PHP versions",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php82/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"time": "2023-08-25T17:27:25+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "thecodingmachine/safe",
|
"name": "thecodingmachine/safe",
|
||||||
"version": "v2.2.2",
|
"version": "v2.2.2",
|
||||||
@ -4405,5 +3517,5 @@
|
|||||||
"prefer-lowest": false,
|
"prefer-lowest": false,
|
||||||
"platform": [],
|
"platform": [],
|
||||||
"platform-dev": [],
|
"platform-dev": [],
|
||||||
"plugin-api-version": "2.6.0"
|
"plugin-api-version": "2.3.0"
|
||||||
}
|
}
|
||||||
|
|||||||
14
public.php
14
public.php
@ -11,8 +11,6 @@
|
|||||||
|
|
||||||
if (!init_plugins()) return;
|
if (!init_plugins()) return;
|
||||||
|
|
||||||
$span = OpenTelemetry\API\Trace\Span::getCurrent();
|
|
||||||
|
|
||||||
$method = (string)clean($_REQUEST["op"]);
|
$method = (string)clean($_REQUEST["op"]);
|
||||||
|
|
||||||
// shortcut syntax for public (exposed) methods (?op=plugin--pmethod&...params)
|
// shortcut syntax for public (exposed) methods (?op=plugin--pmethod&...params)
|
||||||
@ -38,34 +36,30 @@
|
|||||||
user_error("Refusing to invoke method $method which starts with underscore.", E_USER_WARNING);
|
user_error("Refusing to invoke method $method which starts with underscore.", E_USER_WARNING);
|
||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
||||||
$span->setAttribute('error', Errors::E_UNAUTHORIZED);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (implements_interface($handler, "IHandler") && $handler->before($method)) {
|
if (implements_interface($handler, "IHandler") && $handler->before($method)) {
|
||||||
$span->addEvent("construct/$method");
|
|
||||||
if ($method && method_exists($handler, $method)) {
|
if ($method && method_exists($handler, $method)) {
|
||||||
$reflection = new ReflectionMethod($handler, $method);
|
$reflection = new ReflectionMethod($handler, $method);
|
||||||
|
|
||||||
if ($reflection->getNumberOfRequiredParameters() == 0) {
|
if ($reflection->getNumberOfRequiredParameters() == 0) {
|
||||||
$span->addEvent("invoke/$method");
|
|
||||||
$handler->$method();
|
$handler->$method();
|
||||||
} else {
|
} else {
|
||||||
user_error("Refusing to invoke method $method which has required parameters.", E_USER_WARNING);
|
user_error("Refusing to invoke method $method which has required parameters.", E_USER_WARNING);
|
||||||
header("Content-Type: text/json");
|
header("Content-Type: text/json");
|
||||||
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
print Errors::to_json(Errors::E_UNAUTHORIZED);
|
||||||
$span->setAttribute('error', Errors::E_UNAUTHORIZED);
|
|
||||||
}
|
}
|
||||||
} else if (method_exists($handler, 'index')) {
|
} else if (method_exists($handler, 'index')) {
|
||||||
$span->addEvent("index");
|
|
||||||
$handler->index();
|
$handler->index();
|
||||||
}
|
}
|
||||||
$span->addEvent("after/$method");
|
|
||||||
$handler->after();
|
$handler->after();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
header("Content-Type: text/plain");
|
header("Content-Type: text/plain");
|
||||||
print Errors::to_json(Errors::E_UNKNOWN_METHOD);
|
print Errors::to_json(Errors::E_UNKNOWN_METHOD);
|
||||||
$span->setAttribute('error', Errors::E_UNKNOWN_METHOD);
|
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
export PHP_IMAGE=registry.fakecake.org/infra/php8.3-alpine:3.19
|
export PHP_IMAGE=registry.fakecake.org/infra/php8.3-alpine3.20
|
||||||
|
|
||||||
docker run --rm -v $(pwd):/app -v /tmp/phpstan:/tmp/phpstan \
|
docker run --rm -v $(pwd):/app -v /tmp/phpstan:/tmp/phpstan \
|
||||||
--workdir /app ${PHP_IMAGE} \
|
--workdir /app ${PHP_IMAGE} \
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
export PHP_IMAGE=registry.fakecake.org/infra/php8.3-alpine3.20
|
||||||
|
|
||||||
docker run --rm -v $(pwd):/app -e API_URL=${API_URL} \
|
docker run --rm -v $(pwd):/app -e API_URL=${API_URL} \
|
||||||
--workdir /app registry.fakecake.org/infra/php8.3-alpine:3.19 \
|
--workdir /app ${PHP_IMAGE} \
|
||||||
php83 -d memory_limit=-1 ./vendor/bin/phpunit --group integration
|
php83 -d memory_limit=-1 ./vendor/bin/phpunit --group integration
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
export PHP_IMAGE=registry.fakecake.org/infra/php8.3-alpine3.20
|
||||||
|
|
||||||
docker run --rm -v $(pwd):/app \
|
docker run --rm -v $(pwd):/app \
|
||||||
--workdir /app registry.fakecake.org/infra/php-fpm8.3-alpine3.19:latest \
|
--workdir /app ${PHP_IMAGE} \
|
||||||
php83 -d memory_limit=-1 ./vendor/bin/phpunit --exclude integration
|
php83 -d memory_limit=-1 ./vendor/bin/phpunit --exclude integration
|
||||||
|
|||||||
1364
vendor/composer/autoload_classmap.php
vendored
1364
vendor/composer/autoload_classmap.php
vendored
File diff suppressed because it is too large
Load Diff
14
vendor/composer/autoload_files.php
vendored
14
vendor/composer/autoload_files.php
vendored
@ -6,24 +6,11 @@ $vendorDir = dirname(__DIR__);
|
|||||||
$baseDir = dirname($vendorDir);
|
$baseDir = dirname($vendorDir);
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
'a4a119a56e50fbb293281d9a48007e0e' => $vendorDir . '/symfony/polyfill-php80/bootstrap.php',
|
|
||||||
'23c18046f52bef3eea034657bafda50f' => $vendorDir . '/symfony/polyfill-php81/bootstrap.php',
|
|
||||||
'5897ea0ac4cccf14d323035e65887801' => $vendorDir . '/symfony/polyfill-php82/bootstrap.php',
|
|
||||||
'8e92226780215d0ec758aa7b73e0ede9' => $vendorDir . '/open-telemetry/context/fiber/initialize_fiber_handler.php',
|
|
||||||
'c7b4a5d8b94d270f0f9a84f81e1dd63d' => $vendorDir . '/open-telemetry/api/Trace/functions.php',
|
|
||||||
'7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php',
|
'7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php',
|
||||||
'6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php',
|
'6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php',
|
||||||
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
|
|
||||||
'a4ecaeafb8cfb009ad0e052c90355e98' => $vendorDir . '/beberlei/assert/lib/Assert/functions.php',
|
'a4ecaeafb8cfb009ad0e052c90355e98' => $vendorDir . '/beberlei/assert/lib/Assert/functions.php',
|
||||||
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
|
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
|
||||||
'6124b4c8570aa390c21fafd04a26c69f' => $vendorDir . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php',
|
'6124b4c8570aa390c21fafd04a26c69f' => $vendorDir . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php',
|
||||||
'c695cb998ba36e4bafc3d028efc7d113' => $vendorDir . '/open-telemetry/sdk/Common/Util/functions.php',
|
|
||||||
'd991bdbfe253499825156f17c4a721db' => $vendorDir . '/open-telemetry/sdk/Logs/Exporter/_register.php',
|
|
||||||
'01d424d2624f29a2eef00b09eb00935e' => $vendorDir . '/open-telemetry/sdk/Metrics/MetricExporter/_register.php',
|
|
||||||
'063d0a0034c5e2149209c15208de47e4' => $vendorDir . '/open-telemetry/sdk/Propagation/_register.php',
|
|
||||||
'2cc49ecec7e065b3a5423e964c0275e6' => $vendorDir . '/open-telemetry/sdk/Trace/SpanExporter/_register.php',
|
|
||||||
'062120a429d7568eacd495a8c34fcf09' => $vendorDir . '/open-telemetry/sdk/Common/Dev/Compatibility/_load.php',
|
|
||||||
'88e3b63cfb48eb8ea316a8a85a5f5c5f' => $vendorDir . '/open-telemetry/sdk/_autoload.php',
|
|
||||||
'51fcf4e06c07cc00c920b44bcd900e7a' => $vendorDir . '/thecodingmachine/safe/deprecated/apc.php',
|
'51fcf4e06c07cc00c920b44bcd900e7a' => $vendorDir . '/thecodingmachine/safe/deprecated/apc.php',
|
||||||
'288267919fedd3829a7732b5fb202197' => $vendorDir . '/thecodingmachine/safe/deprecated/array.php',
|
'288267919fedd3829a7732b5fb202197' => $vendorDir . '/thecodingmachine/safe/deprecated/array.php',
|
||||||
'a88cd08cfbf1600f7d5de6e587eee1fa' => $vendorDir . '/thecodingmachine/safe/deprecated/datetime.php',
|
'a88cd08cfbf1600f7d5de6e587eee1fa' => $vendorDir . '/thecodingmachine/safe/deprecated/datetime.php',
|
||||||
@ -111,7 +98,6 @@ return array(
|
|||||||
'4af1dca6db8c527c6eed27bff85ff0e5' => $vendorDir . '/thecodingmachine/safe/generated/yaz.php',
|
'4af1dca6db8c527c6eed27bff85ff0e5' => $vendorDir . '/thecodingmachine/safe/generated/yaz.php',
|
||||||
'fe43ca06499ac37bc2dedd823af71eb5' => $vendorDir . '/thecodingmachine/safe/generated/zip.php',
|
'fe43ca06499ac37bc2dedd823af71eb5' => $vendorDir . '/thecodingmachine/safe/generated/zip.php',
|
||||||
'356736db98a6834f0a886b8d509b0ecd' => $vendorDir . '/thecodingmachine/safe/generated/zlib.php',
|
'356736db98a6834f0a886b8d509b0ecd' => $vendorDir . '/thecodingmachine/safe/generated/zlib.php',
|
||||||
'157bbd0180425c7142fbaf1b1646bec3' => $vendorDir . '/open-telemetry/exporter-otlp/_register.php',
|
|
||||||
'9b38cf48e83f5d8f60375221cd213eee' => $vendorDir . '/phpstan/phpstan/bootstrap.php',
|
'9b38cf48e83f5d8f60375221cd213eee' => $vendorDir . '/phpstan/phpstan/bootstrap.php',
|
||||||
'ec07570ca5a812141189b1fa81503674' => $vendorDir . '/phpunit/phpunit/src/Framework/Assert/Functions.php',
|
'ec07570ca5a812141189b1fa81503674' => $vendorDir . '/phpunit/phpunit/src/Framework/Assert/Functions.php',
|
||||||
'1c27df0e838db1c8a6427db7c5db3db2' => $baseDir . '/include/functions.php',
|
'1c27df0e838db1c8a6427db7c5db3db2' => $baseDir . '/include/functions.php',
|
||||||
|
|||||||
15
vendor/composer/autoload_psr4.php
vendored
15
vendor/composer/autoload_psr4.php
vendored
@ -10,34 +10,19 @@ return array(
|
|||||||
'chillerlan\\Settings\\' => array($vendorDir . '/chillerlan/php-settings-container/src'),
|
'chillerlan\\Settings\\' => array($vendorDir . '/chillerlan/php-settings-container/src'),
|
||||||
'chillerlan\\QRCode\\' => array($vendorDir . '/chillerlan/php-qrcode/src'),
|
'chillerlan\\QRCode\\' => array($vendorDir . '/chillerlan/php-qrcode/src'),
|
||||||
'Webmozart\\Assert\\' => array($vendorDir . '/webmozart/assert/src'),
|
'Webmozart\\Assert\\' => array($vendorDir . '/webmozart/assert/src'),
|
||||||
'Symfony\\Polyfill\\Php82\\' => array($vendorDir . '/symfony/polyfill-php82'),
|
|
||||||
'Symfony\\Polyfill\\Php81\\' => array($vendorDir . '/symfony/polyfill-php81'),
|
|
||||||
'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'),
|
|
||||||
'Symfony\\Polyfill\\Mbstring\\' => array($vendorDir . '/symfony/polyfill-mbstring'),
|
|
||||||
'Soundasleep\\' => array($vendorDir . '/soundasleep/html2text/src'),
|
'Soundasleep\\' => array($vendorDir . '/soundasleep/html2text/src'),
|
||||||
'Psr\\Log\\' => array($vendorDir . '/psr/log/src'),
|
|
||||||
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'),
|
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'),
|
||||||
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
|
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
|
||||||
'Prophecy\\' => array($vendorDir . '/phpspec/prophecy/src/Prophecy'),
|
'Prophecy\\' => array($vendorDir . '/phpspec/prophecy/src/Prophecy'),
|
||||||
'PhpParser\\' => array($vendorDir . '/nikic/php-parser/lib/PhpParser'),
|
'PhpParser\\' => array($vendorDir . '/nikic/php-parser/lib/PhpParser'),
|
||||||
'ParagonIE\\ConstantTime\\' => array($vendorDir . '/paragonie/constant_time_encoding/src'),
|
'ParagonIE\\ConstantTime\\' => array($vendorDir . '/paragonie/constant_time_encoding/src'),
|
||||||
'Opentelemetry\\Proto\\' => array($vendorDir . '/open-telemetry/gen-otlp-protobuf/Opentelemetry/Proto'),
|
|
||||||
'OpenTelemetry\\SemConv\\' => array($vendorDir . '/open-telemetry/sem-conv'),
|
|
||||||
'OpenTelemetry\\SDK\\' => array($vendorDir . '/open-telemetry/sdk'),
|
|
||||||
'OpenTelemetry\\Contrib\\Otlp\\' => array($vendorDir . '/open-telemetry/exporter-otlp'),
|
|
||||||
'OpenTelemetry\\Context\\' => array($vendorDir . '/open-telemetry/context'),
|
|
||||||
'OpenTelemetry\\API\\' => array($vendorDir . '/open-telemetry/api'),
|
|
||||||
'OTPHP\\' => array($vendorDir . '/spomky-labs/otphp/src'),
|
'OTPHP\\' => array($vendorDir . '/spomky-labs/otphp/src'),
|
||||||
'Http\\Promise\\' => array($vendorDir . '/php-http/promise/src'),
|
'Http\\Promise\\' => array($vendorDir . '/php-http/promise/src'),
|
||||||
'Http\\Discovery\\' => array($vendorDir . '/php-http/discovery/src'),
|
|
||||||
'Http\\Client\\' => array($vendorDir . '/php-http/httplug/src'),
|
'Http\\Client\\' => array($vendorDir . '/php-http/httplug/src'),
|
||||||
'Http\\Adapter\\Guzzle7\\' => array($vendorDir . '/php-http/guzzle7-adapter/src'),
|
'Http\\Adapter\\Guzzle7\\' => array($vendorDir . '/php-http/guzzle7-adapter/src'),
|
||||||
'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'),
|
'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'),
|
||||||
'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
|
'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
|
||||||
'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
|
'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
|
||||||
'Google\\Protobuf\\' => array($vendorDir . '/google/protobuf/src/Google/Protobuf'),
|
|
||||||
'GPBMetadata\\Opentelemetry\\' => array($vendorDir . '/open-telemetry/gen-otlp-protobuf/GPBMetadata/Opentelemetry'),
|
|
||||||
'GPBMetadata\\Google\\Protobuf\\' => array($vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf'),
|
|
||||||
'Doctrine\\Instantiator\\' => array($vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator'),
|
'Doctrine\\Instantiator\\' => array($vendorDir . '/doctrine/instantiator/src/Doctrine/Instantiator'),
|
||||||
'DeepCopy\\' => array($vendorDir . '/myclabs/deep-copy/src/DeepCopy'),
|
'DeepCopy\\' => array($vendorDir . '/myclabs/deep-copy/src/DeepCopy'),
|
||||||
'Assert\\' => array($vendorDir . '/beberlei/assert/lib/Assert'),
|
'Assert\\' => array($vendorDir . '/beberlei/assert/lib/Assert'),
|
||||||
|
|||||||
1453
vendor/composer/autoload_static.php
vendored
1453
vendor/composer/autoload_static.php
vendored
File diff suppressed because it is too large
Load Diff
927
vendor/composer/installed.json
vendored
927
vendor/composer/installed.json
vendored
@ -291,53 +291,6 @@
|
|||||||
],
|
],
|
||||||
"install-path": "../doctrine/instantiator"
|
"install-path": "../doctrine/instantiator"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "google/protobuf",
|
|
||||||
"version": "v3.24.4",
|
|
||||||
"version_normalized": "3.24.4.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/protocolbuffers/protobuf-php.git",
|
|
||||||
"reference": "672d69e25f71b9364fdf1810eb8a8573defdc404"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/protocolbuffers/protobuf-php/zipball/672d69e25f71b9364fdf1810eb8a8573defdc404",
|
|
||||||
"reference": "672d69e25f71b9364fdf1810eb8a8573defdc404",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.0.0"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": ">=5.0.0"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-bcmath": "Need to support JSON deserialization"
|
|
||||||
},
|
|
||||||
"time": "2023-10-04T17:22:47+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Google\\Protobuf\\": "src/Google/Protobuf",
|
|
||||||
"GPBMetadata\\Google\\Protobuf\\": "src/GPBMetadata/Google/Protobuf"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"BSD-3-Clause"
|
|
||||||
],
|
|
||||||
"description": "proto library for PHP",
|
|
||||||
"homepage": "https://developers.google.com/protocol-buffers/",
|
|
||||||
"keywords": [
|
|
||||||
"proto"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/protocolbuffers/protobuf-php/tree/v3.24.4"
|
|
||||||
},
|
|
||||||
"install-path": "../google/protobuf"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "guzzlehttp/guzzle",
|
"name": "guzzlehttp/guzzle",
|
||||||
"version": "7.8.1",
|
"version": "7.8.1",
|
||||||
@ -907,416 +860,6 @@
|
|||||||
},
|
},
|
||||||
"install-path": "../nikic/php-parser"
|
"install-path": "../nikic/php-parser"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "open-telemetry/api",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"version_normalized": "1.0.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/api.git",
|
|
||||||
"reference": "d577d732333d38a9a6c16936363ee25f1e3f1c3c"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/api/zipball/d577d732333d38a9a6c16936363ee25f1e3f1c3c",
|
|
||||||
"reference": "d577d732333d38a9a6c16936363ee25f1e3f1c3c",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"open-telemetry/context": "^1.0",
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"psr/log": "^1.1|^2.0|^3.0",
|
|
||||||
"symfony/polyfill-php80": "^1.26",
|
|
||||||
"symfony/polyfill-php81": "^1.26",
|
|
||||||
"symfony/polyfill-php82": "^1.26"
|
|
||||||
},
|
|
||||||
"time": "2023-09-27T23:15:51+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"Trace/functions.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\API\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "API for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"api",
|
|
||||||
"apm",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"install-path": "../open-telemetry/api"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/context",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"version_normalized": "1.0.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/context.git",
|
|
||||||
"reference": "99f3d54fa9f9ff67421774feeef5e5b1f209ea21"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/context/zipball/99f3d54fa9f9ff67421774feeef5e5b1f209ea21",
|
|
||||||
"reference": "99f3d54fa9f9ff67421774feeef5e5b1f209ea21",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"symfony/polyfill-php80": "^1.26",
|
|
||||||
"symfony/polyfill-php81": "^1.26",
|
|
||||||
"symfony/polyfill-php82": "^1.26"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-ffi": "To allow context switching in Fibers"
|
|
||||||
},
|
|
||||||
"time": "2023-09-05T03:38:44+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"fiber/initialize_fiber_handler.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\Context\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Context implementation for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Context",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"install-path": "../open-telemetry/context"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/exporter-otlp",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"version_normalized": "1.0.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/exporter-otlp.git",
|
|
||||||
"reference": "756092bdff472ea49adb7843c74011606d065b36"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/exporter-otlp/zipball/756092bdff472ea49adb7843c74011606d065b36",
|
|
||||||
"reference": "756092bdff472ea49adb7843c74011606d065b36",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"open-telemetry/api": "^1.0",
|
|
||||||
"open-telemetry/gen-otlp-protobuf": "^1.0",
|
|
||||||
"open-telemetry/sdk": "^1.0",
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"php-http/discovery": "^1.14"
|
|
||||||
},
|
|
||||||
"time": "2023-10-13T00:48:23+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"_register.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\Contrib\\Otlp\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "OTLP exporter for OpenTelemetry.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"exporter",
|
|
||||||
"gRPC",
|
|
||||||
"http",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"otlp",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"install-path": "../open-telemetry/exporter-otlp"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/gen-otlp-protobuf",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"version_normalized": "1.0.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/gen-otlp-protobuf.git",
|
|
||||||
"reference": "30fe95f10c2ec1a577f78257c86fbbebe739ca5e"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/gen-otlp-protobuf/zipball/30fe95f10c2ec1a577f78257c86fbbebe739ca5e",
|
|
||||||
"reference": "30fe95f10c2ec1a577f78257c86fbbebe739ca5e",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"google/protobuf": "^3.3.0",
|
|
||||||
"php": "^7.4 || ^8.0"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-protobuf": "For better performance, when dealing with the protobuf format"
|
|
||||||
},
|
|
||||||
"time": "2023-09-05T03:38:44+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Opentelemetry\\Proto\\": "Opentelemetry/Proto/",
|
|
||||||
"GPBMetadata\\Opentelemetry\\": "GPBMetadata/Opentelemetry/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "PHP protobuf files for communication with OpenTelemetry OTLP collectors/servers.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"apm",
|
|
||||||
"gRPC",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"otlp",
|
|
||||||
"protobuf",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"install-path": "../open-telemetry/gen-otlp-protobuf"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/sdk",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"version_normalized": "1.0.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/sdk.git",
|
|
||||||
"reference": "1c6020b4f1b85fdd647538ee46f6c83360d7c11e"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/sdk/zipball/1c6020b4f1b85fdd647538ee46f6c83360d7c11e",
|
|
||||||
"reference": "1c6020b4f1b85fdd647538ee46f6c83360d7c11e",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"ext-json": "*",
|
|
||||||
"open-telemetry/api": "^1.0",
|
|
||||||
"open-telemetry/context": "^1.0",
|
|
||||||
"open-telemetry/sem-conv": "^1.0",
|
|
||||||
"php": "^7.4 || ^8.0",
|
|
||||||
"php-http/discovery": "^1.14",
|
|
||||||
"psr/http-client": "^1.0",
|
|
||||||
"psr/http-client-implementation": "^1.0",
|
|
||||||
"psr/http-factory-implementation": "^1.0",
|
|
||||||
"psr/http-message": "^1.0.1|^2.0",
|
|
||||||
"psr/log": "^1.1|^2.0|^3.0",
|
|
||||||
"symfony/polyfill-mbstring": "^1.23",
|
|
||||||
"symfony/polyfill-php80": "^1.26",
|
|
||||||
"symfony/polyfill-php81": "^1.26",
|
|
||||||
"symfony/polyfill-php82": "^1.26"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-gmp": "To support unlimited number of synchronous metric readers",
|
|
||||||
"ext-mbstring": "To increase performance of string operations"
|
|
||||||
},
|
|
||||||
"time": "2023-10-18T20:53:08+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.0.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"Common/Util/functions.php",
|
|
||||||
"Logs/Exporter/_register.php",
|
|
||||||
"Metrics/MetricExporter/_register.php",
|
|
||||||
"Propagation/_register.php",
|
|
||||||
"Trace/SpanExporter/_register.php",
|
|
||||||
"Common/Dev/Compatibility/_load.php",
|
|
||||||
"_autoload.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\SDK\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "SDK for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"apm",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"sdk",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"install-path": "../open-telemetry/sdk"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "open-telemetry/sem-conv",
|
|
||||||
"version": "1.22.1",
|
|
||||||
"version_normalized": "1.22.1.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/opentelemetry-php/sem-conv.git",
|
|
||||||
"reference": "e582b874ee89bec544f962db212b3966fe9310a7"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/opentelemetry-php/sem-conv/zipball/e582b874ee89bec544f962db212b3966fe9310a7",
|
|
||||||
"reference": "e582b874ee89bec544f962db212b3966fe9310a7",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": "^7.4 || ^8.0"
|
|
||||||
},
|
|
||||||
"time": "2023-10-19T20:10:44+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"OpenTelemetry\\SemConv\\": "."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"Apache-2.0"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "opentelemetry-php contributors",
|
|
||||||
"homepage": "https://github.com/open-telemetry/opentelemetry-php/graphs/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Semantic conventions for OpenTelemetry PHP.",
|
|
||||||
"keywords": [
|
|
||||||
"Metrics",
|
|
||||||
"apm",
|
|
||||||
"logging",
|
|
||||||
"opentelemetry",
|
|
||||||
"otel",
|
|
||||||
"semantic conventions",
|
|
||||||
"semconv",
|
|
||||||
"tracing"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"chat": "https://app.slack.com/client/T08PSQ7BQ/C01NFPCV44V",
|
|
||||||
"docs": "https://opentelemetry.io/docs/php",
|
|
||||||
"issues": "https://github.com/open-telemetry/opentelemetry-php/issues",
|
|
||||||
"source": "https://github.com/open-telemetry/opentelemetry-php"
|
|
||||||
},
|
|
||||||
"install-path": "../open-telemetry/sem-conv"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "paragonie/constant_time_encoding",
|
"name": "paragonie/constant_time_encoding",
|
||||||
"version": "v2.6.3",
|
"version": "v2.6.3",
|
||||||
@ -1504,87 +1047,6 @@
|
|||||||
},
|
},
|
||||||
"install-path": "../phar-io/version"
|
"install-path": "../phar-io/version"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "php-http/discovery",
|
|
||||||
"version": "1.19.1",
|
|
||||||
"version_normalized": "1.19.1.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/php-http/discovery.git",
|
|
||||||
"reference": "57f3de01d32085fea20865f9b16fb0e69347c39e"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/php-http/discovery/zipball/57f3de01d32085fea20865f9b16fb0e69347c39e",
|
|
||||||
"reference": "57f3de01d32085fea20865f9b16fb0e69347c39e",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"composer-plugin-api": "^1.0|^2.0",
|
|
||||||
"php": "^7.1 || ^8.0"
|
|
||||||
},
|
|
||||||
"conflict": {
|
|
||||||
"nyholm/psr7": "<1.0",
|
|
||||||
"zendframework/zend-diactoros": "*"
|
|
||||||
},
|
|
||||||
"provide": {
|
|
||||||
"php-http/async-client-implementation": "*",
|
|
||||||
"php-http/client-implementation": "*",
|
|
||||||
"psr/http-client-implementation": "*",
|
|
||||||
"psr/http-factory-implementation": "*",
|
|
||||||
"psr/http-message-implementation": "*"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"composer/composer": "^1.0.2|^2.0",
|
|
||||||
"graham-campbell/phpspec-skip-example-extension": "^5.0",
|
|
||||||
"php-http/httplug": "^1.0 || ^2.0",
|
|
||||||
"php-http/message-factory": "^1.0",
|
|
||||||
"phpspec/phpspec": "^5.1 || ^6.1 || ^7.3",
|
|
||||||
"symfony/phpunit-bridge": "^6.2"
|
|
||||||
},
|
|
||||||
"time": "2023-07-11T07:02:26+00:00",
|
|
||||||
"type": "composer-plugin",
|
|
||||||
"extra": {
|
|
||||||
"class": "Http\\Discovery\\Composer\\Plugin",
|
|
||||||
"plugin-optional": true
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Http\\Discovery\\": "src/"
|
|
||||||
},
|
|
||||||
"exclude-from-classmap": [
|
|
||||||
"src/Composer/Plugin.php"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Márk Sági-Kazár",
|
|
||||||
"email": "mark.sagikazar@gmail.com"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations",
|
|
||||||
"homepage": "http://php-http.org",
|
|
||||||
"keywords": [
|
|
||||||
"adapter",
|
|
||||||
"client",
|
|
||||||
"discovery",
|
|
||||||
"factory",
|
|
||||||
"http",
|
|
||||||
"message",
|
|
||||||
"psr17",
|
|
||||||
"psr7"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/php-http/discovery/issues",
|
|
||||||
"source": "https://github.com/php-http/discovery/tree/1.19.1"
|
|
||||||
},
|
|
||||||
"install-path": "../php-http/discovery"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "php-http/guzzle7-adapter",
|
"name": "php-http/guzzle7-adapter",
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
@ -2679,59 +2141,6 @@
|
|||||||
},
|
},
|
||||||
"install-path": "../psr/http-message"
|
"install-path": "../psr/http-message"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "psr/log",
|
|
||||||
"version": "3.0.0",
|
|
||||||
"version_normalized": "3.0.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/php-fig/log.git",
|
|
||||||
"reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001",
|
|
||||||
"reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=8.0.0"
|
|
||||||
},
|
|
||||||
"time": "2021-07-14T16:46:02+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-master": "3.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Psr\\Log\\": "src"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "PHP-FIG",
|
|
||||||
"homepage": "https://www.php-fig.org/"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Common interface for logging libraries",
|
|
||||||
"homepage": "https://github.com/php-fig/log",
|
|
||||||
"keywords": [
|
|
||||||
"log",
|
|
||||||
"psr",
|
|
||||||
"psr-3"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/php-fig/log/tree/3.0.0"
|
|
||||||
},
|
|
||||||
"install-path": "../psr/log"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "ralouphie/getallheaders",
|
"name": "ralouphie/getallheaders",
|
||||||
"version": "3.0.3",
|
"version": "3.0.3",
|
||||||
@ -3997,342 +3406,6 @@
|
|||||||
],
|
],
|
||||||
"install-path": "../symfony/deprecation-contracts"
|
"install-path": "../symfony/deprecation-contracts"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-mbstring",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"version_normalized": "1.28.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
|
||||||
"reference": "42292d99c55abe617799667f454222c54c60e229"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
|
|
||||||
"reference": "42292d99c55abe617799667f454222c54c60e229",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"provide": {
|
|
||||||
"ext-mbstring": "*"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-mbstring": "For best performance"
|
|
||||||
},
|
|
||||||
"time": "2023-07-28T09:04:16+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Mbstring\\": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill for the Mbstring extension",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"mbstring",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"install-path": "../symfony/polyfill-mbstring"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-php80",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"version_normalized": "1.28.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-php80.git",
|
|
||||||
"reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
|
|
||||||
"reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"time": "2023-01-26T09:26:14+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Php80\\": ""
|
|
||||||
},
|
|
||||||
"classmap": [
|
|
||||||
"Resources/stubs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Ion Bazan",
|
|
||||||
"email": "ion.bazan@gmail.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"install-path": "../symfony/polyfill-php80"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-php81",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"version_normalized": "1.28.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-php81.git",
|
|
||||||
"reference": "7581cd600fa9fd681b797d00b02f068e2f13263b"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/7581cd600fa9fd681b797d00b02f068e2f13263b",
|
|
||||||
"reference": "7581cd600fa9fd681b797d00b02f068e2f13263b",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"time": "2023-01-26T09:26:14+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Php81\\": ""
|
|
||||||
},
|
|
||||||
"classmap": [
|
|
||||||
"Resources/stubs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php81/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"install-path": "../symfony/polyfill-php81"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "symfony/polyfill-php82",
|
|
||||||
"version": "v1.28.0",
|
|
||||||
"version_normalized": "1.28.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/polyfill-php82.git",
|
|
||||||
"reference": "7716bea9c86776fb3362d6b52fe1fc9471056a49"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/symfony/polyfill-php82/zipball/7716bea9c86776fb3362d6b52fe1fc9471056a49",
|
|
||||||
"reference": "7716bea9c86776fb3362d6b52fe1fc9471056a49",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.1"
|
|
||||||
},
|
|
||||||
"time": "2023-08-25T17:27:25+00:00",
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-main": "1.28-dev"
|
|
||||||
},
|
|
||||||
"thanks": {
|
|
||||||
"name": "symfony/polyfill",
|
|
||||||
"url": "https://github.com/symfony/polyfill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"installation-source": "dist",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Polyfill\\Php82\\": ""
|
|
||||||
},
|
|
||||||
"classmap": [
|
|
||||||
"Resources/stubs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Nicolas Grekas",
|
|
||||||
"email": "p@tchwork.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony polyfill backporting some PHP 8.2+ features to lower PHP versions",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"keywords": [
|
|
||||||
"compatibility",
|
|
||||||
"polyfill",
|
|
||||||
"portable",
|
|
||||||
"shim"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"source": "https://github.com/symfony/polyfill-php82/tree/v1.28.0"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://symfony.com/sponsor",
|
|
||||||
"type": "custom"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://github.com/fabpot",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"install-path": "../symfony/polyfill-php82"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "thecodingmachine/safe",
|
"name": "thecodingmachine/safe",
|
||||||
"version": "v2.2.2",
|
"version": "v2.2.2",
|
||||||
|
|||||||
132
vendor/composer/installed.php
vendored
132
vendor/composer/installed.php
vendored
@ -3,7 +3,7 @@
|
|||||||
'name' => '__root__',
|
'name' => '__root__',
|
||||||
'pretty_version' => 'dev-master',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => 'dev-master',
|
'version' => 'dev-master',
|
||||||
'reference' => 'd4ae6c67db8c966ab4998fda6df14072b103106b',
|
'reference' => '8fcc68baf5b0ff964a0a4a045353462586e0e316',
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
@ -13,7 +13,7 @@
|
|||||||
'__root__' => array(
|
'__root__' => array(
|
||||||
'pretty_version' => 'dev-master',
|
'pretty_version' => 'dev-master',
|
||||||
'version' => 'dev-master',
|
'version' => 'dev-master',
|
||||||
'reference' => 'd4ae6c67db8c966ab4998fda6df14072b103106b',
|
'reference' => '8fcc68baf5b0ff964a0a4a045353462586e0e316',
|
||||||
'type' => 'library',
|
'type' => 'library',
|
||||||
'install_path' => __DIR__ . '/../../',
|
'install_path' => __DIR__ . '/../../',
|
||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
@ -55,15 +55,6 @@
|
|||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
'dev_requirement' => true,
|
'dev_requirement' => true,
|
||||||
),
|
),
|
||||||
'google/protobuf' => array(
|
|
||||||
'pretty_version' => 'v3.24.4',
|
|
||||||
'version' => '3.24.4.0',
|
|
||||||
'reference' => '672d69e25f71b9364fdf1810eb8a8573defdc404',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../google/protobuf',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'guzzlehttp/guzzle' => array(
|
'guzzlehttp/guzzle' => array(
|
||||||
'pretty_version' => '7.8.1',
|
'pretty_version' => '7.8.1',
|
||||||
'version' => '7.8.1.0',
|
'version' => '7.8.1.0',
|
||||||
@ -129,60 +120,6 @@
|
|||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
'dev_requirement' => true,
|
'dev_requirement' => true,
|
||||||
),
|
),
|
||||||
'open-telemetry/api' => array(
|
|
||||||
'pretty_version' => '1.0.0',
|
|
||||||
'version' => '1.0.0.0',
|
|
||||||
'reference' => 'd577d732333d38a9a6c16936363ee25f1e3f1c3c',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../open-telemetry/api',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'open-telemetry/context' => array(
|
|
||||||
'pretty_version' => '1.0.0',
|
|
||||||
'version' => '1.0.0.0',
|
|
||||||
'reference' => '99f3d54fa9f9ff67421774feeef5e5b1f209ea21',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../open-telemetry/context',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'open-telemetry/exporter-otlp' => array(
|
|
||||||
'pretty_version' => '1.0.0',
|
|
||||||
'version' => '1.0.0.0',
|
|
||||||
'reference' => '756092bdff472ea49adb7843c74011606d065b36',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../open-telemetry/exporter-otlp',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'open-telemetry/gen-otlp-protobuf' => array(
|
|
||||||
'pretty_version' => '1.0.0',
|
|
||||||
'version' => '1.0.0.0',
|
|
||||||
'reference' => '30fe95f10c2ec1a577f78257c86fbbebe739ca5e',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../open-telemetry/gen-otlp-protobuf',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'open-telemetry/sdk' => array(
|
|
||||||
'pretty_version' => '1.0.0',
|
|
||||||
'version' => '1.0.0.0',
|
|
||||||
'reference' => '1c6020b4f1b85fdd647538ee46f6c83360d7c11e',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../open-telemetry/sdk',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'open-telemetry/sem-conv' => array(
|
|
||||||
'pretty_version' => '1.22.1',
|
|
||||||
'version' => '1.22.1.0',
|
|
||||||
'reference' => 'e582b874ee89bec544f962db212b3966fe9310a7',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../open-telemetry/sem-conv',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'paragonie/constant_time_encoding' => array(
|
'paragonie/constant_time_encoding' => array(
|
||||||
'pretty_version' => 'v2.6.3',
|
'pretty_version' => 'v2.6.3',
|
||||||
'version' => '2.6.3.0',
|
'version' => '2.6.3.0',
|
||||||
@ -213,26 +150,15 @@
|
|||||||
'php-http/async-client-implementation' => array(
|
'php-http/async-client-implementation' => array(
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
'provided' => array(
|
'provided' => array(
|
||||||
0 => '*',
|
0 => '1.0',
|
||||||
1 => '1.0',
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'php-http/client-implementation' => array(
|
'php-http/client-implementation' => array(
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
'provided' => array(
|
'provided' => array(
|
||||||
0 => '*',
|
0 => '1.0',
|
||||||
1 => '1.0',
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'php-http/discovery' => array(
|
|
||||||
'pretty_version' => '1.19.1',
|
|
||||||
'version' => '1.19.1.0',
|
|
||||||
'reference' => '57f3de01d32085fea20865f9b16fb0e69347c39e',
|
|
||||||
'type' => 'composer-plugin',
|
|
||||||
'install_path' => __DIR__ . '/../php-http/discovery',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'php-http/guzzle7-adapter' => array(
|
'php-http/guzzle7-adapter' => array(
|
||||||
'pretty_version' => '1.0.0',
|
'pretty_version' => '1.0.0',
|
||||||
'version' => '1.0.0.0',
|
'version' => '1.0.0.0',
|
||||||
@ -371,8 +297,7 @@
|
|||||||
'psr/http-client-implementation' => array(
|
'psr/http-client-implementation' => array(
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
'provided' => array(
|
'provided' => array(
|
||||||
0 => '*',
|
0 => '1.0',
|
||||||
1 => '1.0',
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'psr/http-factory' => array(
|
'psr/http-factory' => array(
|
||||||
@ -388,7 +313,6 @@
|
|||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
'provided' => array(
|
'provided' => array(
|
||||||
0 => '1.0',
|
0 => '1.0',
|
||||||
1 => '*',
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'psr/http-message' => array(
|
'psr/http-message' => array(
|
||||||
@ -404,18 +328,8 @@
|
|||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
'provided' => array(
|
'provided' => array(
|
||||||
0 => '1.0',
|
0 => '1.0',
|
||||||
1 => '*',
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'psr/log' => array(
|
|
||||||
'pretty_version' => '3.0.0',
|
|
||||||
'version' => '3.0.0.0',
|
|
||||||
'reference' => 'fe5ea303b0887d5caefd3d431c3e61ad47037001',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../psr/log',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'ralouphie/getallheaders' => array(
|
'ralouphie/getallheaders' => array(
|
||||||
'pretty_version' => '3.0.3',
|
'pretty_version' => '3.0.3',
|
||||||
'version' => '3.0.3.0',
|
'version' => '3.0.3.0',
|
||||||
@ -596,42 +510,6 @@
|
|||||||
'aliases' => array(),
|
'aliases' => array(),
|
||||||
'dev_requirement' => false,
|
'dev_requirement' => false,
|
||||||
),
|
),
|
||||||
'symfony/polyfill-mbstring' => array(
|
|
||||||
'pretty_version' => 'v1.28.0',
|
|
||||||
'version' => '1.28.0.0',
|
|
||||||
'reference' => '42292d99c55abe617799667f454222c54c60e229',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../symfony/polyfill-mbstring',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'symfony/polyfill-php80' => array(
|
|
||||||
'pretty_version' => 'v1.28.0',
|
|
||||||
'version' => '1.28.0.0',
|
|
||||||
'reference' => '6caa57379c4aec19c0a12a38b59b26487dcfe4b5',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../symfony/polyfill-php80',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'symfony/polyfill-php81' => array(
|
|
||||||
'pretty_version' => 'v1.28.0',
|
|
||||||
'version' => '1.28.0.0',
|
|
||||||
'reference' => '7581cd600fa9fd681b797d00b02f068e2f13263b',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../symfony/polyfill-php81',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'symfony/polyfill-php82' => array(
|
|
||||||
'pretty_version' => 'v1.28.0',
|
|
||||||
'version' => '1.28.0.0',
|
|
||||||
'reference' => '7716bea9c86776fb3362d6b52fe1fc9471056a49',
|
|
||||||
'type' => 'library',
|
|
||||||
'install_path' => __DIR__ . '/../symfony/polyfill-php82',
|
|
||||||
'aliases' => array(),
|
|
||||||
'dev_requirement' => false,
|
|
||||||
),
|
|
||||||
'thecodingmachine/safe' => array(
|
'thecodingmachine/safe' => array(
|
||||||
'pretty_version' => 'v2.2.2',
|
'pretty_version' => 'v2.2.2',
|
||||||
'version' => '2.2.2.0',
|
'version' => '2.2.2.0',
|
||||||
|
|||||||
29
vendor/google/protobuf/LICENSE
vendored
29
vendor/google/protobuf/LICENSE
vendored
@ -1,29 +0,0 @@
|
|||||||
BSD 3-Clause License
|
|
||||||
|
|
||||||
Copyright (c) 2019, Protocol Buffers
|
|
||||||
All rights reserved.
|
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
|
||||||
modification, are permitted provided that the following conditions are met:
|
|
||||||
|
|
||||||
* Redistributions of source code must retain the above copyright notice, this
|
|
||||||
list of conditions and the following disclaimer.
|
|
||||||
|
|
||||||
* Redistributions in binary form must reproduce the above copyright notice,
|
|
||||||
this list of conditions and the following disclaimer in the documentation
|
|
||||||
and/or other materials provided with the distribution.
|
|
||||||
|
|
||||||
* Neither the name of the copyright holder nor the names of its
|
|
||||||
contributors may be used to endorse or promote products derived from
|
|
||||||
this software without specific prior written permission.
|
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
||||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
||||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
||||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
||||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
||||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
||||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
||||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
||||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
2
vendor/google/protobuf/README.md
vendored
2
vendor/google/protobuf/README.md
vendored
@ -1,2 +0,0 @@
|
|||||||
# protobuf-php
|
|
||||||
This repository contains only PHP files to support Composer installation. This repository is a mirror of [protobuf](https://github.com/protocolbuffers/protobuf). Any support requests, bug reports, or development contributions should be directed to that project. To install protobuf for PHP, please see https://github.com/protocolbuffers/protobuf/tree/master/php
|
|
||||||
23
vendor/google/protobuf/composer.json
vendored
23
vendor/google/protobuf/composer.json
vendored
@ -1,23 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "google/protobuf",
|
|
||||||
"type": "library",
|
|
||||||
"description": "proto library for PHP",
|
|
||||||
"keywords": ["proto"],
|
|
||||||
"homepage": "https://developers.google.com/protocol-buffers/",
|
|
||||||
"license": "BSD-3-Clause",
|
|
||||||
"require": {
|
|
||||||
"php": ">=7.0.0"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": ">=5.0.0"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-bcmath": "Need to support JSON deserialization"
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Google\\Protobuf\\": "src/Google/Protobuf",
|
|
||||||
"GPBMetadata\\Google\\Protobuf\\": "src/GPBMetadata/Google/Protobuf"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,30 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/any.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class Any
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
Ô
|
|
||||||
google/protobuf/any.protogoogle.protobuf"&
|
|
||||||
Any
|
|
||||||
type_url (
|
|
||||||
value (Bv
|
|
||||||
com.google.protobufBAnyProtoPZ,google.golang.org/protobuf/types/known/anypb˘GPBŞGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,48 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/api.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class Api
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
\GPBMetadata\Google\Protobuf\SourceContext::initOnce();
|
|
||||||
\GPBMetadata\Google\Protobuf\Type::initOnce();
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
É
|
|
||||||
google/protobuf/api.protogoogle.protobufgoogle/protobuf/type.proto"<EFBFBD>
|
|
||||||
Api
|
|
||||||
name ( (
|
|
||||||
methods (2.google.protobuf.Method(
|
|
||||||
options (2.google.protobuf.Option
|
|
||||||
version ( 6
|
|
||||||
source_context (2.google.protobuf.SourceContext&
|
|
||||||
mixins (2.google.protobuf.Mixin\'
|
|
||||||
syntax (2.google.protobuf.Syntax"Ő
|
|
||||||
Method
|
|
||||||
name (
|
|
||||||
request_type_url (
|
|
||||||
request_streaming (
|
|
||||||
response_type_url (
|
|
||||||
response_streaming ((
|
|
||||||
options (2.google.protobuf.Option\'
|
|
||||||
syntax (2.google.protobuf.Syntax"#
|
|
||||||
Mixin
|
|
||||||
name (
|
|
||||||
root ( Bv
|
|
||||||
com.google.protobufBApiProtoPZ,google.golang.org/protobuf/types/known/apipb˘GPBŞGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,30 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/duration.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class Duration
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
ë
|
|
||||||
google/protobuf/duration.protogoogle.protobuf"*
|
|
||||||
Duration
|
|
||||||
seconds (
|
|
||||||
nanos (Bƒ
|
|
||||||
com.google.protobufB
DurationProtoPZ1google.golang.org/protobuf/types/known/durationpbø¢GPBªGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/field_mask.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class FieldMask
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
ß
|
|
||||||
google/protobuf/field_mask.protogoogle.protobuf"
|
|
||||||
FieldMask
|
|
||||||
paths ( B…
|
|
||||||
com.google.protobufBFieldMaskProtoPZ2google.golang.org/protobuf/types/known/fieldmaskpbř˘GPBŞGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/empty.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class GPBEmpty
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
ž
|
|
||||||
google/protobuf/empty.protogoogle.protobuf"
|
|
||||||
EmptyB}
|
|
||||||
com.google.protobufB
|
|
||||||
EmptyProtoPZ.google.golang.org/protobuf/types/known/emptypbř˘GPBŞGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,282 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
class Descriptor
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->addMessage('google.protobuf.internal.FileDescriptorSet', \Google\Protobuf\Internal\FileDescriptorSet::class)
|
|
||||||
->repeated('file', \Google\Protobuf\Internal\GPBType::MESSAGE, 1, 'google.protobuf.internal.FileDescriptorProto')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.FileDescriptorProto', \Google\Protobuf\Internal\FileDescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->optional('package', \Google\Protobuf\Internal\GPBType::STRING, 2)
|
|
||||||
->repeated('dependency', \Google\Protobuf\Internal\GPBType::STRING, 3)
|
|
||||||
->repeated('public_dependency', \Google\Protobuf\Internal\GPBType::INT32, 10)
|
|
||||||
->repeated('weak_dependency', \Google\Protobuf\Internal\GPBType::INT32, 11)
|
|
||||||
->repeated('message_type', \Google\Protobuf\Internal\GPBType::MESSAGE, 4, 'google.protobuf.internal.DescriptorProto')
|
|
||||||
->repeated('enum_type', \Google\Protobuf\Internal\GPBType::MESSAGE, 5, 'google.protobuf.internal.EnumDescriptorProto')
|
|
||||||
->repeated('service', \Google\Protobuf\Internal\GPBType::MESSAGE, 6, 'google.protobuf.internal.ServiceDescriptorProto')
|
|
||||||
->repeated('extension', \Google\Protobuf\Internal\GPBType::MESSAGE, 7, 'google.protobuf.internal.FieldDescriptorProto')
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 8, 'google.protobuf.internal.FileOptions')
|
|
||||||
->optional('source_code_info', \Google\Protobuf\Internal\GPBType::MESSAGE, 9, 'google.protobuf.internal.SourceCodeInfo')
|
|
||||||
->optional('syntax', \Google\Protobuf\Internal\GPBType::STRING, 12)
|
|
||||||
->optional('edition', \Google\Protobuf\Internal\GPBType::STRING, 13)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.DescriptorProto', \Google\Protobuf\Internal\DescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->repeated('field', \Google\Protobuf\Internal\GPBType::MESSAGE, 2, 'google.protobuf.internal.FieldDescriptorProto')
|
|
||||||
->repeated('extension', \Google\Protobuf\Internal\GPBType::MESSAGE, 6, 'google.protobuf.internal.FieldDescriptorProto')
|
|
||||||
->repeated('nested_type', \Google\Protobuf\Internal\GPBType::MESSAGE, 3, 'google.protobuf.internal.DescriptorProto')
|
|
||||||
->repeated('enum_type', \Google\Protobuf\Internal\GPBType::MESSAGE, 4, 'google.protobuf.internal.EnumDescriptorProto')
|
|
||||||
->repeated('extension_range', \Google\Protobuf\Internal\GPBType::MESSAGE, 5, 'google.protobuf.internal.DescriptorProto.ExtensionRange')
|
|
||||||
->repeated('oneof_decl', \Google\Protobuf\Internal\GPBType::MESSAGE, 8, 'google.protobuf.internal.OneofDescriptorProto')
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 7, 'google.protobuf.internal.MessageOptions')
|
|
||||||
->repeated('reserved_range', \Google\Protobuf\Internal\GPBType::MESSAGE, 9, 'google.protobuf.internal.DescriptorProto.ReservedRange')
|
|
||||||
->repeated('reserved_name', \Google\Protobuf\Internal\GPBType::STRING, 10)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.DescriptorProto.ExtensionRange', \Google\Protobuf\Internal\DescriptorProto\ExtensionRange::class)
|
|
||||||
->optional('start', \Google\Protobuf\Internal\GPBType::INT32, 1)
|
|
||||||
->optional('end', \Google\Protobuf\Internal\GPBType::INT32, 2)
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 3, 'google.protobuf.internal.ExtensionRangeOptions')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.DescriptorProto.ReservedRange', \Google\Protobuf\Internal\DescriptorProto\ReservedRange::class)
|
|
||||||
->optional('start', \Google\Protobuf\Internal\GPBType::INT32, 1)
|
|
||||||
->optional('end', \Google\Protobuf\Internal\GPBType::INT32, 2)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.ExtensionRangeOptions', \Google\Protobuf\Internal\ExtensionRangeOptions::class)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.FieldDescriptorProto', \Google\Protobuf\Internal\FieldDescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->optional('number', \Google\Protobuf\Internal\GPBType::INT32, 3)
|
|
||||||
->optional('label', \Google\Protobuf\Internal\GPBType::ENUM, 4, 'google.protobuf.internal.FieldDescriptorProto.Label')
|
|
||||||
->optional('type', \Google\Protobuf\Internal\GPBType::ENUM, 5, 'google.protobuf.internal.FieldDescriptorProto.Type')
|
|
||||||
->optional('type_name', \Google\Protobuf\Internal\GPBType::STRING, 6)
|
|
||||||
->optional('extendee', \Google\Protobuf\Internal\GPBType::STRING, 2)
|
|
||||||
->optional('default_value', \Google\Protobuf\Internal\GPBType::STRING, 7)
|
|
||||||
->optional('oneof_index', \Google\Protobuf\Internal\GPBType::INT32, 9)
|
|
||||||
->optional('json_name', \Google\Protobuf\Internal\GPBType::STRING, 10)
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 8, 'google.protobuf.internal.FieldOptions')
|
|
||||||
->optional('proto3_optional', \Google\Protobuf\Internal\GPBType::BOOL, 17)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addEnum('google.protobuf.internal.FieldDescriptorProto.Type', \Google\Protobuf\Internal\Type::class)
|
|
||||||
->value("TYPE_DOUBLE", 1)
|
|
||||||
->value("TYPE_FLOAT", 2)
|
|
||||||
->value("TYPE_INT64", 3)
|
|
||||||
->value("TYPE_UINT64", 4)
|
|
||||||
->value("TYPE_INT32", 5)
|
|
||||||
->value("TYPE_FIXED64", 6)
|
|
||||||
->value("TYPE_FIXED32", 7)
|
|
||||||
->value("TYPE_BOOL", 8)
|
|
||||||
->value("TYPE_STRING", 9)
|
|
||||||
->value("TYPE_GROUP", 10)
|
|
||||||
->value("TYPE_MESSAGE", 11)
|
|
||||||
->value("TYPE_BYTES", 12)
|
|
||||||
->value("TYPE_UINT32", 13)
|
|
||||||
->value("TYPE_ENUM", 14)
|
|
||||||
->value("TYPE_SFIXED32", 15)
|
|
||||||
->value("TYPE_SFIXED64", 16)
|
|
||||||
->value("TYPE_SINT32", 17)
|
|
||||||
->value("TYPE_SINT64", 18)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addEnum('google.protobuf.internal.FieldDescriptorProto.Label', \Google\Protobuf\Internal\Label::class)
|
|
||||||
->value("LABEL_OPTIONAL", 1)
|
|
||||||
->value("LABEL_REQUIRED", 2)
|
|
||||||
->value("LABEL_REPEATED", 3)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.OneofDescriptorProto', \Google\Protobuf\Internal\OneofDescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 2, 'google.protobuf.internal.OneofOptions')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.EnumDescriptorProto', \Google\Protobuf\Internal\EnumDescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->repeated('value', \Google\Protobuf\Internal\GPBType::MESSAGE, 2, 'google.protobuf.internal.EnumValueDescriptorProto')
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 3, 'google.protobuf.internal.EnumOptions')
|
|
||||||
->repeated('reserved_range', \Google\Protobuf\Internal\GPBType::MESSAGE, 4, 'google.protobuf.internal.EnumDescriptorProto.EnumReservedRange')
|
|
||||||
->repeated('reserved_name', \Google\Protobuf\Internal\GPBType::STRING, 5)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.EnumDescriptorProto.EnumReservedRange', \Google\Protobuf\Internal\EnumDescriptorProto\EnumReservedRange::class)
|
|
||||||
->optional('start', \Google\Protobuf\Internal\GPBType::INT32, 1)
|
|
||||||
->optional('end', \Google\Protobuf\Internal\GPBType::INT32, 2)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.EnumValueDescriptorProto', \Google\Protobuf\Internal\EnumValueDescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->optional('number', \Google\Protobuf\Internal\GPBType::INT32, 2)
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 3, 'google.protobuf.internal.EnumValueOptions')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.ServiceDescriptorProto', \Google\Protobuf\Internal\ServiceDescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->repeated('method', \Google\Protobuf\Internal\GPBType::MESSAGE, 2, 'google.protobuf.internal.MethodDescriptorProto')
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 3, 'google.protobuf.internal.ServiceOptions')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.MethodDescriptorProto', \Google\Protobuf\Internal\MethodDescriptorProto::class)
|
|
||||||
->optional('name', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->optional('input_type', \Google\Protobuf\Internal\GPBType::STRING, 2)
|
|
||||||
->optional('output_type', \Google\Protobuf\Internal\GPBType::STRING, 3)
|
|
||||||
->optional('options', \Google\Protobuf\Internal\GPBType::MESSAGE, 4, 'google.protobuf.internal.MethodOptions')
|
|
||||||
->optional('client_streaming', \Google\Protobuf\Internal\GPBType::BOOL, 5)
|
|
||||||
->optional('server_streaming', \Google\Protobuf\Internal\GPBType::BOOL, 6)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.FileOptions', \Google\Protobuf\Internal\FileOptions::class)
|
|
||||||
->optional('java_package', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->optional('java_outer_classname', \Google\Protobuf\Internal\GPBType::STRING, 8)
|
|
||||||
->optional('java_multiple_files', \Google\Protobuf\Internal\GPBType::BOOL, 10)
|
|
||||||
->optional('java_generate_equals_and_hash', \Google\Protobuf\Internal\GPBType::BOOL, 20)
|
|
||||||
->optional('java_string_check_utf8', \Google\Protobuf\Internal\GPBType::BOOL, 27)
|
|
||||||
->optional('optimize_for', \Google\Protobuf\Internal\GPBType::ENUM, 9, 'google.protobuf.internal.FileOptions.OptimizeMode')
|
|
||||||
->optional('go_package', \Google\Protobuf\Internal\GPBType::STRING, 11)
|
|
||||||
->optional('cc_generic_services', \Google\Protobuf\Internal\GPBType::BOOL, 16)
|
|
||||||
->optional('java_generic_services', \Google\Protobuf\Internal\GPBType::BOOL, 17)
|
|
||||||
->optional('py_generic_services', \Google\Protobuf\Internal\GPBType::BOOL, 18)
|
|
||||||
->optional('php_generic_services', \Google\Protobuf\Internal\GPBType::BOOL, 42)
|
|
||||||
->optional('deprecated', \Google\Protobuf\Internal\GPBType::BOOL, 23)
|
|
||||||
->optional('cc_enable_arenas', \Google\Protobuf\Internal\GPBType::BOOL, 31)
|
|
||||||
->optional('objc_class_prefix', \Google\Protobuf\Internal\GPBType::STRING, 36)
|
|
||||||
->optional('csharp_namespace', \Google\Protobuf\Internal\GPBType::STRING, 37)
|
|
||||||
->optional('swift_prefix', \Google\Protobuf\Internal\GPBType::STRING, 39)
|
|
||||||
->optional('php_class_prefix', \Google\Protobuf\Internal\GPBType::STRING, 40)
|
|
||||||
->optional('php_namespace', \Google\Protobuf\Internal\GPBType::STRING, 41)
|
|
||||||
->optional('php_metadata_namespace', \Google\Protobuf\Internal\GPBType::STRING, 44)
|
|
||||||
->optional('ruby_package', \Google\Protobuf\Internal\GPBType::STRING, 45)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addEnum('google.protobuf.internal.FileOptions.OptimizeMode', \Google\Protobuf\Internal\OptimizeMode::class)
|
|
||||||
->value("SPEED", 1)
|
|
||||||
->value("CODE_SIZE", 2)
|
|
||||||
->value("LITE_RUNTIME", 3)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.MessageOptions', \Google\Protobuf\Internal\MessageOptions::class)
|
|
||||||
->optional('message_set_wire_format', \Google\Protobuf\Internal\GPBType::BOOL, 1)
|
|
||||||
->optional('no_standard_descriptor_accessor', \Google\Protobuf\Internal\GPBType::BOOL, 2)
|
|
||||||
->optional('deprecated', \Google\Protobuf\Internal\GPBType::BOOL, 3)
|
|
||||||
->optional('map_entry', \Google\Protobuf\Internal\GPBType::BOOL, 7)
|
|
||||||
->optional('deprecated_legacy_json_field_conflicts', \Google\Protobuf\Internal\GPBType::BOOL, 11)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.FieldOptions', \Google\Protobuf\Internal\FieldOptions::class)
|
|
||||||
->optional('ctype', \Google\Protobuf\Internal\GPBType::ENUM, 1, 'google.protobuf.internal.FieldOptions.CType')
|
|
||||||
->optional('packed', \Google\Protobuf\Internal\GPBType::BOOL, 2)
|
|
||||||
->optional('jstype', \Google\Protobuf\Internal\GPBType::ENUM, 6, 'google.protobuf.internal.FieldOptions.JSType')
|
|
||||||
->optional('lazy', \Google\Protobuf\Internal\GPBType::BOOL, 5)
|
|
||||||
->optional('unverified_lazy', \Google\Protobuf\Internal\GPBType::BOOL, 15)
|
|
||||||
->optional('deprecated', \Google\Protobuf\Internal\GPBType::BOOL, 3)
|
|
||||||
->optional('weak', \Google\Protobuf\Internal\GPBType::BOOL, 10)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addEnum('google.protobuf.internal.FieldOptions.CType', \Google\Protobuf\Internal\CType::class)
|
|
||||||
->value("STRING", 0)
|
|
||||||
->value("CORD", 1)
|
|
||||||
->value("STRING_PIECE", 2)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addEnum('google.protobuf.internal.FieldOptions.JSType', \Google\Protobuf\Internal\JSType::class)
|
|
||||||
->value("JS_NORMAL", 0)
|
|
||||||
->value("JS_STRING", 1)
|
|
||||||
->value("JS_NUMBER", 2)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.OneofOptions', \Google\Protobuf\Internal\OneofOptions::class)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.EnumOptions', \Google\Protobuf\Internal\EnumOptions::class)
|
|
||||||
->optional('allow_alias', \Google\Protobuf\Internal\GPBType::BOOL, 2)
|
|
||||||
->optional('deprecated', \Google\Protobuf\Internal\GPBType::BOOL, 3)
|
|
||||||
->optional('deprecated_legacy_json_field_conflicts', \Google\Protobuf\Internal\GPBType::BOOL, 6)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.EnumValueOptions', \Google\Protobuf\Internal\EnumValueOptions::class)
|
|
||||||
->optional('deprecated', \Google\Protobuf\Internal\GPBType::BOOL, 1)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.ServiceOptions', \Google\Protobuf\Internal\ServiceOptions::class)
|
|
||||||
->optional('deprecated', \Google\Protobuf\Internal\GPBType::BOOL, 33)
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.MethodOptions', \Google\Protobuf\Internal\MethodOptions::class)
|
|
||||||
->optional('deprecated', \Google\Protobuf\Internal\GPBType::BOOL, 33)
|
|
||||||
->optional('idempotency_level', \Google\Protobuf\Internal\GPBType::ENUM, 34, 'google.protobuf.internal.MethodOptions.IdempotencyLevel')
|
|
||||||
->repeated('uninterpreted_option', \Google\Protobuf\Internal\GPBType::MESSAGE, 999, 'google.protobuf.internal.UninterpretedOption')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addEnum('google.protobuf.internal.MethodOptions.IdempotencyLevel', \Google\Protobuf\Internal\IdempotencyLevel::class)
|
|
||||||
->value("IDEMPOTENCY_UNKNOWN", 0)
|
|
||||||
->value("NO_SIDE_EFFECTS", 1)
|
|
||||||
->value("IDEMPOTENT", 2)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.UninterpretedOption', \Google\Protobuf\Internal\UninterpretedOption::class)
|
|
||||||
->repeated('name', \Google\Protobuf\Internal\GPBType::MESSAGE, 2, 'google.protobuf.internal.UninterpretedOption.NamePart')
|
|
||||||
->optional('identifier_value', \Google\Protobuf\Internal\GPBType::STRING, 3)
|
|
||||||
->optional('positive_int_value', \Google\Protobuf\Internal\GPBType::UINT64, 4)
|
|
||||||
->optional('negative_int_value', \Google\Protobuf\Internal\GPBType::INT64, 5)
|
|
||||||
->optional('double_value', \Google\Protobuf\Internal\GPBType::DOUBLE, 6)
|
|
||||||
->optional('string_value', \Google\Protobuf\Internal\GPBType::BYTES, 7)
|
|
||||||
->optional('aggregate_value', \Google\Protobuf\Internal\GPBType::STRING, 8)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.UninterpretedOption.NamePart', \Google\Protobuf\Internal\UninterpretedOption\NamePart::class)
|
|
||||||
->required('name_part', \Google\Protobuf\Internal\GPBType::STRING, 1)
|
|
||||||
->required('is_extension', \Google\Protobuf\Internal\GPBType::BOOL, 2)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.SourceCodeInfo', \Google\Protobuf\Internal\SourceCodeInfo::class)
|
|
||||||
->repeated('location', \Google\Protobuf\Internal\GPBType::MESSAGE, 1, 'google.protobuf.internal.SourceCodeInfo.Location')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.SourceCodeInfo.Location', \Google\Protobuf\Internal\SourceCodeInfo\Location::class)
|
|
||||||
->repeated('path', \Google\Protobuf\Internal\GPBType::INT32, 1)
|
|
||||||
->repeated('span', \Google\Protobuf\Internal\GPBType::INT32, 2)
|
|
||||||
->optional('leading_comments', \Google\Protobuf\Internal\GPBType::STRING, 3)
|
|
||||||
->optional('trailing_comments', \Google\Protobuf\Internal\GPBType::STRING, 4)
|
|
||||||
->repeated('leading_detached_comments', \Google\Protobuf\Internal\GPBType::STRING, 6)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.GeneratedCodeInfo', \Google\Protobuf\Internal\GeneratedCodeInfo::class)
|
|
||||||
->repeated('annotation', \Google\Protobuf\Internal\GPBType::MESSAGE, 1, 'google.protobuf.internal.GeneratedCodeInfo.Annotation')
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->addMessage('google.protobuf.internal.GeneratedCodeInfo.Annotation', \Google\Protobuf\Internal\GeneratedCodeInfo\Annotation::class)
|
|
||||||
->repeated('path', \Google\Protobuf\Internal\GPBType::INT32, 1)
|
|
||||||
->optional('source_file', \Google\Protobuf\Internal\GPBType::STRING, 2)
|
|
||||||
->optional('begin', \Google\Protobuf\Internal\GPBType::INT32, 3)
|
|
||||||
->optional('end', \Google\Protobuf\Internal\GPBType::INT32, 4)
|
|
||||||
->finalizeToPool();
|
|
||||||
|
|
||||||
$pool->finish();
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/source_context.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class SourceContext
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
ð
|
|
||||||
$google/protobuf/source_context.protogoogle.protobuf""
|
|
||||||
SourceContext
|
|
||||||
file_name ( BŠ
|
|
||||||
com.google.protobufBSourceContextProtoPZ6google.golang.org/protobuf/types/known/sourcecontextpb¢GPBªGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Binary file not shown.
@ -1,30 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/timestamp.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class Timestamp
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
ď
|
|
||||||
google/protobuf/timestamp.protogoogle.protobuf"+
|
|
||||||
Timestamp
|
|
||||||
seconds (
|
|
||||||
nanos (B…
|
|
||||||
com.google.protobufBTimestampProtoPZ2google.golang.org/protobuf/types/known/timestamppbř˘GPBŞGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Binary file not shown.
@ -1,49 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/wrappers.proto
|
|
||||||
|
|
||||||
namespace GPBMetadata\Google\Protobuf;
|
|
||||||
|
|
||||||
class Wrappers
|
|
||||||
{
|
|
||||||
public static $is_initialized = false;
|
|
||||||
|
|
||||||
public static function initOnce() {
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
|
|
||||||
if (static::$is_initialized == true) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$pool->internalAddGeneratedFile(
|
|
||||||
'
|
|
||||||
Ç
|
|
||||||
google/protobuf/wrappers.protogoogle.protobuf"
|
|
||||||
DoubleValue
|
|
||||||
value ("
|
|
||||||
|
|
||||||
FloatValue
|
|
||||||
value ("
|
|
||||||
|
|
||||||
Int64Value
|
|
||||||
value ("
|
|
||||||
UInt64Value
|
|
||||||
value ("
|
|
||||||
|
|
||||||
Int32Value
|
|
||||||
value ("
|
|
||||||
UInt32Value
|
|
||||||
value (
"
|
|
||||||
BoolValue
|
|
||||||
value ("
|
|
||||||
StringValue
|
|
||||||
value ( "
|
|
||||||
|
|
||||||
BytesValue
|
|
||||||
value (Bƒ
|
|
||||||
com.google.protobufB
WrappersProtoPZ1google.golang.org/protobuf/types/known/wrapperspbø¢GPBªGoogle.Protobuf.WellKnownTypesbproto3'
|
|
||||||
, true);
|
|
||||||
|
|
||||||
static::$is_initialized = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
257
vendor/google/protobuf/src/Google/Protobuf/Any.php
vendored
257
vendor/google/protobuf/src/Google/Protobuf/Any.php
vendored
@ -1,257 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/any.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* `Any` contains an arbitrary serialized protocol buffer message along with a
|
|
||||||
* URL that describes the type of the serialized message.
|
|
||||||
* Protobuf library provides support to pack/unpack Any values in the form
|
|
||||||
* of utility functions or additional generated methods of the Any type.
|
|
||||||
* Example 1: Pack and unpack a message in C++.
|
|
||||||
* Foo foo = ...;
|
|
||||||
* Any any;
|
|
||||||
* any.PackFrom(foo);
|
|
||||||
* ...
|
|
||||||
* if (any.UnpackTo(&foo)) {
|
|
||||||
* ...
|
|
||||||
* }
|
|
||||||
* Example 2: Pack and unpack a message in Java.
|
|
||||||
* Foo foo = ...;
|
|
||||||
* Any any = Any.pack(foo);
|
|
||||||
* ...
|
|
||||||
* if (any.is(Foo.class)) {
|
|
||||||
* foo = any.unpack(Foo.class);
|
|
||||||
* }
|
|
||||||
* // or ...
|
|
||||||
* if (any.isSameTypeAs(Foo.getDefaultInstance())) {
|
|
||||||
* foo = any.unpack(Foo.getDefaultInstance());
|
|
||||||
* }
|
|
||||||
* Example 3: Pack and unpack a message in Python.
|
|
||||||
* foo = Foo(...)
|
|
||||||
* any = Any()
|
|
||||||
* any.Pack(foo)
|
|
||||||
* ...
|
|
||||||
* if any.Is(Foo.DESCRIPTOR):
|
|
||||||
* any.Unpack(foo)
|
|
||||||
* ...
|
|
||||||
* Example 4: Pack and unpack a message in Go
|
|
||||||
* foo := &pb.Foo{...}
|
|
||||||
* any, err := anypb.New(foo)
|
|
||||||
* if err != nil {
|
|
||||||
* ...
|
|
||||||
* }
|
|
||||||
* ...
|
|
||||||
* foo := &pb.Foo{}
|
|
||||||
* if err := any.UnmarshalTo(foo); err != nil {
|
|
||||||
* ...
|
|
||||||
* }
|
|
||||||
* The pack methods provided by protobuf library will by default use
|
|
||||||
* 'type.googleapis.com/full.type.name' as the type URL and the unpack
|
|
||||||
* methods only use the fully qualified type name after the last '/'
|
|
||||||
* in the type URL, for example "foo.bar.com/x/y.z" will yield type
|
|
||||||
* name "y.z".
|
|
||||||
* JSON
|
|
||||||
* The JSON representation of an `Any` value uses the regular
|
|
||||||
* representation of the deserialized, embedded message, with an
|
|
||||||
* additional field `@type` which contains the type URL. Example:
|
|
||||||
* package google.profile;
|
|
||||||
* message Person {
|
|
||||||
* string first_name = 1;
|
|
||||||
* string last_name = 2;
|
|
||||||
* }
|
|
||||||
* {
|
|
||||||
* "@type": "type.googleapis.com/google.profile.Person",
|
|
||||||
* "firstName": <string>,
|
|
||||||
* "lastName": <string>
|
|
||||||
* }
|
|
||||||
* If the embedded message type is well-known and has a custom JSON
|
|
||||||
* representation, that representation will be embedded adding a field
|
|
||||||
* `value` which holds the custom JSON in addition to the `@type`
|
|
||||||
* field. Example (for message [google.protobuf.Duration][]):
|
|
||||||
* {
|
|
||||||
* "@type": "type.googleapis.com/google.protobuf.Duration",
|
|
||||||
* "value": "1.212s"
|
|
||||||
* }
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Any</code>
|
|
||||||
*/
|
|
||||||
class Any extends \Google\Protobuf\Internal\AnyBase
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* A URL/resource name that uniquely identifies the type of the serialized
|
|
||||||
* protocol buffer message. This string must contain at least
|
|
||||||
* one "/" character. The last segment of the URL's path must represent
|
|
||||||
* the fully qualified name of the type (as in
|
|
||||||
* `path/google.protobuf.Duration`). The name should be in a canonical form
|
|
||||||
* (e.g., leading "." is not accepted).
|
|
||||||
* In practice, teams usually precompile into the binary all types that they
|
|
||||||
* expect it to use in the context of Any. However, for URLs which use the
|
|
||||||
* scheme `http`, `https`, or no scheme, one can optionally set up a type
|
|
||||||
* server that maps type URLs to message definitions as follows:
|
|
||||||
* * If no scheme is provided, `https` is assumed.
|
|
||||||
* * An HTTP GET on the URL must yield a [google.protobuf.Type][]
|
|
||||||
* value in binary format, or produce an error.
|
|
||||||
* * Applications are allowed to cache lookup results based on the
|
|
||||||
* URL, or have them precompiled into a binary to avoid any
|
|
||||||
* lookup. Therefore, binary compatibility needs to be preserved
|
|
||||||
* on changes to types. (Use versioned type names to manage
|
|
||||||
* breaking changes.)
|
|
||||||
* Note: this functionality is not currently available in the official
|
|
||||||
* protobuf release, and it is not used for type URLs beginning with
|
|
||||||
* type.googleapis.com.
|
|
||||||
* Schemes other than `http`, `https` (or the empty scheme) might be
|
|
||||||
* used with implementation specific semantics.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string type_url = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $type_url = '';
|
|
||||||
/**
|
|
||||||
* Must be a valid serialized protocol buffer of the above specified type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bytes value = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $value = '';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $type_url
|
|
||||||
* A URL/resource name that uniquely identifies the type of the serialized
|
|
||||||
* protocol buffer message. This string must contain at least
|
|
||||||
* one "/" character. The last segment of the URL's path must represent
|
|
||||||
* the fully qualified name of the type (as in
|
|
||||||
* `path/google.protobuf.Duration`). The name should be in a canonical form
|
|
||||||
* (e.g., leading "." is not accepted).
|
|
||||||
* In practice, teams usually precompile into the binary all types that they
|
|
||||||
* expect it to use in the context of Any. However, for URLs which use the
|
|
||||||
* scheme `http`, `https`, or no scheme, one can optionally set up a type
|
|
||||||
* server that maps type URLs to message definitions as follows:
|
|
||||||
* * If no scheme is provided, `https` is assumed.
|
|
||||||
* * An HTTP GET on the URL must yield a [google.protobuf.Type][]
|
|
||||||
* value in binary format, or produce an error.
|
|
||||||
* * Applications are allowed to cache lookup results based on the
|
|
||||||
* URL, or have them precompiled into a binary to avoid any
|
|
||||||
* lookup. Therefore, binary compatibility needs to be preserved
|
|
||||||
* on changes to types. (Use versioned type names to manage
|
|
||||||
* breaking changes.)
|
|
||||||
* Note: this functionality is not currently available in the official
|
|
||||||
* protobuf release, and it is not used for type URLs beginning with
|
|
||||||
* type.googleapis.com.
|
|
||||||
* Schemes other than `http`, `https` (or the empty scheme) might be
|
|
||||||
* used with implementation specific semantics.
|
|
||||||
* @type string $value
|
|
||||||
* Must be a valid serialized protocol buffer of the above specified type.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Any::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A URL/resource name that uniquely identifies the type of the serialized
|
|
||||||
* protocol buffer message. This string must contain at least
|
|
||||||
* one "/" character. The last segment of the URL's path must represent
|
|
||||||
* the fully qualified name of the type (as in
|
|
||||||
* `path/google.protobuf.Duration`). The name should be in a canonical form
|
|
||||||
* (e.g., leading "." is not accepted).
|
|
||||||
* In practice, teams usually precompile into the binary all types that they
|
|
||||||
* expect it to use in the context of Any. However, for URLs which use the
|
|
||||||
* scheme `http`, `https`, or no scheme, one can optionally set up a type
|
|
||||||
* server that maps type URLs to message definitions as follows:
|
|
||||||
* * If no scheme is provided, `https` is assumed.
|
|
||||||
* * An HTTP GET on the URL must yield a [google.protobuf.Type][]
|
|
||||||
* value in binary format, or produce an error.
|
|
||||||
* * Applications are allowed to cache lookup results based on the
|
|
||||||
* URL, or have them precompiled into a binary to avoid any
|
|
||||||
* lookup. Therefore, binary compatibility needs to be preserved
|
|
||||||
* on changes to types. (Use versioned type names to manage
|
|
||||||
* breaking changes.)
|
|
||||||
* Note: this functionality is not currently available in the official
|
|
||||||
* protobuf release, and it is not used for type URLs beginning with
|
|
||||||
* type.googleapis.com.
|
|
||||||
* Schemes other than `http`, `https` (or the empty scheme) might be
|
|
||||||
* used with implementation specific semantics.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string type_url = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getTypeUrl()
|
|
||||||
{
|
|
||||||
return $this->type_url;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A URL/resource name that uniquely identifies the type of the serialized
|
|
||||||
* protocol buffer message. This string must contain at least
|
|
||||||
* one "/" character. The last segment of the URL's path must represent
|
|
||||||
* the fully qualified name of the type (as in
|
|
||||||
* `path/google.protobuf.Duration`). The name should be in a canonical form
|
|
||||||
* (e.g., leading "." is not accepted).
|
|
||||||
* In practice, teams usually precompile into the binary all types that they
|
|
||||||
* expect it to use in the context of Any. However, for URLs which use the
|
|
||||||
* scheme `http`, `https`, or no scheme, one can optionally set up a type
|
|
||||||
* server that maps type URLs to message definitions as follows:
|
|
||||||
* * If no scheme is provided, `https` is assumed.
|
|
||||||
* * An HTTP GET on the URL must yield a [google.protobuf.Type][]
|
|
||||||
* value in binary format, or produce an error.
|
|
||||||
* * Applications are allowed to cache lookup results based on the
|
|
||||||
* URL, or have them precompiled into a binary to avoid any
|
|
||||||
* lookup. Therefore, binary compatibility needs to be preserved
|
|
||||||
* on changes to types. (Use versioned type names to manage
|
|
||||||
* breaking changes.)
|
|
||||||
* Note: this functionality is not currently available in the official
|
|
||||||
* protobuf release, and it is not used for type URLs beginning with
|
|
||||||
* type.googleapis.com.
|
|
||||||
* Schemes other than `http`, `https` (or the empty scheme) might be
|
|
||||||
* used with implementation specific semantics.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string type_url = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setTypeUrl($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->type_url = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Must be a valid serialized protocol buffer of the above specified type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bytes value = 2;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Must be a valid serialized protocol buffer of the above specified type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bytes value = 2;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, False);
|
|
||||||
$this->value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
360
vendor/google/protobuf/src/Google/Protobuf/Api.php
vendored
360
vendor/google/protobuf/src/Google/Protobuf/Api.php
vendored
@ -1,360 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/api.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Api is a light-weight descriptor for an API Interface.
|
|
||||||
* Interfaces are also described as "protocol buffer services" in some contexts,
|
|
||||||
* such as by the "service" keyword in a .proto file, but they are different
|
|
||||||
* from API Services, which represent a concrete implementation of an interface
|
|
||||||
* as opposed to simply a description of methods and bindings. They are also
|
|
||||||
* sometimes simply referred to as "APIs" in other contexts, such as the name of
|
|
||||||
* this message itself. See https://cloud.google.com/apis/design/glossary for
|
|
||||||
* detailed terminology.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Api</code>
|
|
||||||
*/
|
|
||||||
class Api extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The fully qualified name of this interface, including package name
|
|
||||||
* followed by the interface's simple name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = '';
|
|
||||||
/**
|
|
||||||
* The methods of this interface, in unspecified order.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Method methods = 2;</code>
|
|
||||||
*/
|
|
||||||
private $methods;
|
|
||||||
/**
|
|
||||||
* Any metadata attached to the interface.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
*/
|
|
||||||
private $options;
|
|
||||||
/**
|
|
||||||
* A version string for this interface. If specified, must have the form
|
|
||||||
* `major-version.minor-version`, as in `1.10`. If the minor version is
|
|
||||||
* omitted, it defaults to zero. If the entire version field is empty, the
|
|
||||||
* major version is derived from the package name, as outlined below. If the
|
|
||||||
* field is not empty, the version in the package name will be verified to be
|
|
||||||
* consistent with what is provided here.
|
|
||||||
* The versioning schema uses [semantic
|
|
||||||
* versioning](http://semver.org) where the major version number
|
|
||||||
* indicates a breaking change and the minor version an additive,
|
|
||||||
* non-breaking change. Both version numbers are signals to users
|
|
||||||
* what to expect from different versions, and should be carefully
|
|
||||||
* chosen based on the product plan.
|
|
||||||
* The major version is also reflected in the package name of the
|
|
||||||
* interface, which must end in `v<major-version>`, as in
|
|
||||||
* `google.feature.v1`. For major versions 0 and 1, the suffix can
|
|
||||||
* be omitted. Zero major versions must only be used for
|
|
||||||
* experimental, non-GA interfaces.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string version = 4;</code>
|
|
||||||
*/
|
|
||||||
protected $version = '';
|
|
||||||
/**
|
|
||||||
* Source context for the protocol buffer service represented by this
|
|
||||||
* message.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.SourceContext source_context = 5;</code>
|
|
||||||
*/
|
|
||||||
protected $source_context = null;
|
|
||||||
/**
|
|
||||||
* Included interfaces. See [Mixin][].
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Mixin mixins = 6;</code>
|
|
||||||
*/
|
|
||||||
private $mixins;
|
|
||||||
/**
|
|
||||||
* The source syntax of the service.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Syntax syntax = 7;</code>
|
|
||||||
*/
|
|
||||||
protected $syntax = 0;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* The fully qualified name of this interface, including package name
|
|
||||||
* followed by the interface's simple name.
|
|
||||||
* @type array<\Google\Protobuf\Method>|\Google\Protobuf\Internal\RepeatedField $methods
|
|
||||||
* The methods of this interface, in unspecified order.
|
|
||||||
* @type array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $options
|
|
||||||
* Any metadata attached to the interface.
|
|
||||||
* @type string $version
|
|
||||||
* A version string for this interface. If specified, must have the form
|
|
||||||
* `major-version.minor-version`, as in `1.10`. If the minor version is
|
|
||||||
* omitted, it defaults to zero. If the entire version field is empty, the
|
|
||||||
* major version is derived from the package name, as outlined below. If the
|
|
||||||
* field is not empty, the version in the package name will be verified to be
|
|
||||||
* consistent with what is provided here.
|
|
||||||
* The versioning schema uses [semantic
|
|
||||||
* versioning](http://semver.org) where the major version number
|
|
||||||
* indicates a breaking change and the minor version an additive,
|
|
||||||
* non-breaking change. Both version numbers are signals to users
|
|
||||||
* what to expect from different versions, and should be carefully
|
|
||||||
* chosen based on the product plan.
|
|
||||||
* The major version is also reflected in the package name of the
|
|
||||||
* interface, which must end in `v<major-version>`, as in
|
|
||||||
* `google.feature.v1`. For major versions 0 and 1, the suffix can
|
|
||||||
* be omitted. Zero major versions must only be used for
|
|
||||||
* experimental, non-GA interfaces.
|
|
||||||
* @type \Google\Protobuf\SourceContext $source_context
|
|
||||||
* Source context for the protocol buffer service represented by this
|
|
||||||
* message.
|
|
||||||
* @type array<\Google\Protobuf\Mixin>|\Google\Protobuf\Internal\RepeatedField $mixins
|
|
||||||
* Included interfaces. See [Mixin][].
|
|
||||||
* @type int $syntax
|
|
||||||
* The source syntax of the service.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Api::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The fully qualified name of this interface, including package name
|
|
||||||
* followed by the interface's simple name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return $this->name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The fully qualified name of this interface, including package name
|
|
||||||
* followed by the interface's simple name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The methods of this interface, in unspecified order.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Method methods = 2;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getMethods()
|
|
||||||
{
|
|
||||||
return $this->methods;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The methods of this interface, in unspecified order.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Method methods = 2;</code>
|
|
||||||
* @param array<\Google\Protobuf\Method>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setMethods($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Method::class);
|
|
||||||
$this->methods = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Any metadata attached to the interface.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Any metadata attached to the interface.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
* @param array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Option::class);
|
|
||||||
$this->options = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A version string for this interface. If specified, must have the form
|
|
||||||
* `major-version.minor-version`, as in `1.10`. If the minor version is
|
|
||||||
* omitted, it defaults to zero. If the entire version field is empty, the
|
|
||||||
* major version is derived from the package name, as outlined below. If the
|
|
||||||
* field is not empty, the version in the package name will be verified to be
|
|
||||||
* consistent with what is provided here.
|
|
||||||
* The versioning schema uses [semantic
|
|
||||||
* versioning](http://semver.org) where the major version number
|
|
||||||
* indicates a breaking change and the minor version an additive,
|
|
||||||
* non-breaking change. Both version numbers are signals to users
|
|
||||||
* what to expect from different versions, and should be carefully
|
|
||||||
* chosen based on the product plan.
|
|
||||||
* The major version is also reflected in the package name of the
|
|
||||||
* interface, which must end in `v<major-version>`, as in
|
|
||||||
* `google.feature.v1`. For major versions 0 and 1, the suffix can
|
|
||||||
* be omitted. Zero major versions must only be used for
|
|
||||||
* experimental, non-GA interfaces.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string version = 4;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getVersion()
|
|
||||||
{
|
|
||||||
return $this->version;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A version string for this interface. If specified, must have the form
|
|
||||||
* `major-version.minor-version`, as in `1.10`. If the minor version is
|
|
||||||
* omitted, it defaults to zero. If the entire version field is empty, the
|
|
||||||
* major version is derived from the package name, as outlined below. If the
|
|
||||||
* field is not empty, the version in the package name will be verified to be
|
|
||||||
* consistent with what is provided here.
|
|
||||||
* The versioning schema uses [semantic
|
|
||||||
* versioning](http://semver.org) where the major version number
|
|
||||||
* indicates a breaking change and the minor version an additive,
|
|
||||||
* non-breaking change. Both version numbers are signals to users
|
|
||||||
* what to expect from different versions, and should be carefully
|
|
||||||
* chosen based on the product plan.
|
|
||||||
* The major version is also reflected in the package name of the
|
|
||||||
* interface, which must end in `v<major-version>`, as in
|
|
||||||
* `google.feature.v1`. For major versions 0 and 1, the suffix can
|
|
||||||
* be omitted. Zero major versions must only be used for
|
|
||||||
* experimental, non-GA interfaces.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string version = 4;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setVersion($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->version = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Source context for the protocol buffer service represented by this
|
|
||||||
* message.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.SourceContext source_context = 5;</code>
|
|
||||||
* @return \Google\Protobuf\SourceContext|null
|
|
||||||
*/
|
|
||||||
public function getSourceContext()
|
|
||||||
{
|
|
||||||
return $this->source_context;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasSourceContext()
|
|
||||||
{
|
|
||||||
return isset($this->source_context);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearSourceContext()
|
|
||||||
{
|
|
||||||
unset($this->source_context);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Source context for the protocol buffer service represented by this
|
|
||||||
* message.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.SourceContext source_context = 5;</code>
|
|
||||||
* @param \Google\Protobuf\SourceContext $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setSourceContext($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\SourceContext::class);
|
|
||||||
$this->source_context = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Included interfaces. See [Mixin][].
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Mixin mixins = 6;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getMixins()
|
|
||||||
{
|
|
||||||
return $this->mixins;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Included interfaces. See [Mixin][].
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Mixin mixins = 6;</code>
|
|
||||||
* @param array<\Google\Protobuf\Mixin>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setMixins($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Mixin::class);
|
|
||||||
$this->mixins = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The source syntax of the service.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Syntax syntax = 7;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getSyntax()
|
|
||||||
{
|
|
||||||
return $this->syntax;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The source syntax of the service.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Syntax syntax = 7;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setSyntax($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Syntax::class);
|
|
||||||
$this->syntax = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/wrappers.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrapper message for `bool`.
|
|
||||||
* The JSON representation for `BoolValue` is JSON `true` and `false`.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.BoolValue</code>
|
|
||||||
*/
|
|
||||||
class BoolValue extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The bool value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bool value = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $value = false;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type bool $value
|
|
||||||
* The bool value.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Wrappers::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The bool value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bool value = 1;</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The bool value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bool value = 1;</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/wrappers.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrapper message for `bytes`.
|
|
||||||
* The JSON representation for `BytesValue` is JSON string.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.BytesValue</code>
|
|
||||||
*/
|
|
||||||
class BytesValue extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The bytes value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bytes value = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $value = '';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $value
|
|
||||||
* The bytes value.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Wrappers::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The bytes value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bytes value = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The bytes value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bytes value = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, False);
|
|
||||||
$this->value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,108 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2017 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GetPublicDescriptorTrait;
|
|
||||||
|
|
||||||
class Descriptor
|
|
||||||
{
|
|
||||||
use GetPublicDescriptorTrait;
|
|
||||||
|
|
||||||
private $internal_desc;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @internal
|
|
||||||
*/
|
|
||||||
public function __construct($internal_desc)
|
|
||||||
{
|
|
||||||
$this->internal_desc = $internal_desc;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return string Full protobuf message name
|
|
||||||
*/
|
|
||||||
public function getFullName()
|
|
||||||
{
|
|
||||||
return trim($this->internal_desc->getFullName(), ".");
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return string PHP class name
|
|
||||||
*/
|
|
||||||
public function getClass()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getClass();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param int $index Must be >= 0 and < getFieldCount()
|
|
||||||
* @return FieldDescriptor
|
|
||||||
*/
|
|
||||||
public function getField($index)
|
|
||||||
{
|
|
||||||
return $this->getPublicDescriptor($this->internal_desc->getFieldByIndex($index));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int Number of fields in message
|
|
||||||
*/
|
|
||||||
public function getFieldCount()
|
|
||||||
{
|
|
||||||
return count($this->internal_desc->getField());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param int $index Must be >= 0 and < getOneofDeclCount()
|
|
||||||
* @return OneofDescriptor
|
|
||||||
*/
|
|
||||||
public function getOneofDecl($index)
|
|
||||||
{
|
|
||||||
return $this->getPublicDescriptor($this->internal_desc->getOneofDecl()[$index]);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int Number of oneofs in message
|
|
||||||
*/
|
|
||||||
public function getOneofDeclCount()
|
|
||||||
{
|
|
||||||
return count($this->internal_desc->getOneofDecl());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int Number of real oneofs in message
|
|
||||||
*/
|
|
||||||
public function getRealOneofDeclCount()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getRealOneofDeclCount();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,76 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2017 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
class DescriptorPool
|
|
||||||
{
|
|
||||||
private static $pool;
|
|
||||||
|
|
||||||
private $internal_pool;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return DescriptorPool
|
|
||||||
*/
|
|
||||||
public static function getGeneratedPool()
|
|
||||||
{
|
|
||||||
if (!isset(self::$pool)) {
|
|
||||||
self::$pool = new DescriptorPool(\Google\Protobuf\Internal\DescriptorPool::getGeneratedPool());
|
|
||||||
}
|
|
||||||
return self::$pool;
|
|
||||||
}
|
|
||||||
|
|
||||||
private function __construct($internal_pool)
|
|
||||||
{
|
|
||||||
$this->internal_pool = $internal_pool;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param string $className A fully qualified protobuf class name
|
|
||||||
* @return Descriptor
|
|
||||||
*/
|
|
||||||
public function getDescriptorByClassName($className)
|
|
||||||
{
|
|
||||||
$desc = $this->internal_pool->getDescriptorByClassName($className);
|
|
||||||
return is_null($desc) ? null : $desc->getPublicDescriptor();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param string $className A fully qualified protobuf class name
|
|
||||||
* @return EnumDescriptor
|
|
||||||
*/
|
|
||||||
public function getEnumDescriptorByClassName($className)
|
|
||||||
{
|
|
||||||
$desc = $this->internal_pool->getEnumDescriptorByClassName($className);
|
|
||||||
return is_null($desc) ? null : $desc->getPublicDescriptor();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/wrappers.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrapper message for `double`.
|
|
||||||
* The JSON representation for `DoubleValue` is JSON number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.DoubleValue</code>
|
|
||||||
*/
|
|
||||||
class DoubleValue extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The double value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>double value = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $value = 0.0;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type float $value
|
|
||||||
* The double value.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Wrappers::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The double value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>double value = 1;</code>
|
|
||||||
* @return float
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The double value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>double value = 1;</code>
|
|
||||||
* @param float $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkDouble($var);
|
|
||||||
$this->value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,173 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/duration.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A Duration represents a signed, fixed-length span of time represented
|
|
||||||
* as a count of seconds and fractions of seconds at nanosecond
|
|
||||||
* resolution. It is independent of any calendar and concepts like "day"
|
|
||||||
* or "month". It is related to Timestamp in that the difference between
|
|
||||||
* two Timestamp values is a Duration and it can be added or subtracted
|
|
||||||
* from a Timestamp. Range is approximately +-10,000 years.
|
|
||||||
* # Examples
|
|
||||||
* Example 1: Compute Duration from two Timestamps in pseudo code.
|
|
||||||
* Timestamp start = ...;
|
|
||||||
* Timestamp end = ...;
|
|
||||||
* Duration duration = ...;
|
|
||||||
* duration.seconds = end.seconds - start.seconds;
|
|
||||||
* duration.nanos = end.nanos - start.nanos;
|
|
||||||
* if (duration.seconds < 0 && duration.nanos > 0) {
|
|
||||||
* duration.seconds += 1;
|
|
||||||
* duration.nanos -= 1000000000;
|
|
||||||
* } else if (duration.seconds > 0 && duration.nanos < 0) {
|
|
||||||
* duration.seconds -= 1;
|
|
||||||
* duration.nanos += 1000000000;
|
|
||||||
* }
|
|
||||||
* Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
|
|
||||||
* Timestamp start = ...;
|
|
||||||
* Duration duration = ...;
|
|
||||||
* Timestamp end = ...;
|
|
||||||
* end.seconds = start.seconds + duration.seconds;
|
|
||||||
* end.nanos = start.nanos + duration.nanos;
|
|
||||||
* if (end.nanos < 0) {
|
|
||||||
* end.seconds -= 1;
|
|
||||||
* end.nanos += 1000000000;
|
|
||||||
* } else if (end.nanos >= 1000000000) {
|
|
||||||
* end.seconds += 1;
|
|
||||||
* end.nanos -= 1000000000;
|
|
||||||
* }
|
|
||||||
* Example 3: Compute Duration from datetime.timedelta in Python.
|
|
||||||
* td = datetime.timedelta(days=3, minutes=10)
|
|
||||||
* duration = Duration()
|
|
||||||
* duration.FromTimedelta(td)
|
|
||||||
* # JSON Mapping
|
|
||||||
* In JSON format, the Duration type is encoded as a string rather than an
|
|
||||||
* object, where the string ends in the suffix "s" (indicating seconds) and
|
|
||||||
* is preceded by the number of seconds, with nanoseconds expressed as
|
|
||||||
* fractional seconds. For example, 3 seconds with 0 nanoseconds should be
|
|
||||||
* encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should
|
|
||||||
* be expressed in JSON format as "3.000000001s", and 3 seconds and 1
|
|
||||||
* microsecond should be expressed in JSON format as "3.000001s".
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Duration</code>
|
|
||||||
*/
|
|
||||||
class Duration extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Signed seconds of the span of time. Must be from -315,576,000,000
|
|
||||||
* to +315,576,000,000 inclusive. Note: these bounds are computed from:
|
|
||||||
* 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int64 seconds = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $seconds = 0;
|
|
||||||
/**
|
|
||||||
* Signed fractions of a second at nanosecond resolution of the span
|
|
||||||
* of time. Durations less than one second are represented with a 0
|
|
||||||
* `seconds` field and a positive or negative `nanos` field. For durations
|
|
||||||
* of one second or more, a non-zero value for the `nanos` field must be
|
|
||||||
* of the same sign as the `seconds` field. Must be from -999,999,999
|
|
||||||
* to +999,999,999 inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 nanos = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $nanos = 0;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int|string $seconds
|
|
||||||
* Signed seconds of the span of time. Must be from -315,576,000,000
|
|
||||||
* to +315,576,000,000 inclusive. Note: these bounds are computed from:
|
|
||||||
* 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
|
|
||||||
* @type int $nanos
|
|
||||||
* Signed fractions of a second at nanosecond resolution of the span
|
|
||||||
* of time. Durations less than one second are represented with a 0
|
|
||||||
* `seconds` field and a positive or negative `nanos` field. For durations
|
|
||||||
* of one second or more, a non-zero value for the `nanos` field must be
|
|
||||||
* of the same sign as the `seconds` field. Must be from -999,999,999
|
|
||||||
* to +999,999,999 inclusive.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Duration::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Signed seconds of the span of time. Must be from -315,576,000,000
|
|
||||||
* to +315,576,000,000 inclusive. Note: these bounds are computed from:
|
|
||||||
* 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int64 seconds = 1;</code>
|
|
||||||
* @return int|string
|
|
||||||
*/
|
|
||||||
public function getSeconds()
|
|
||||||
{
|
|
||||||
return $this->seconds;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Signed seconds of the span of time. Must be from -315,576,000,000
|
|
||||||
* to +315,576,000,000 inclusive. Note: these bounds are computed from:
|
|
||||||
* 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int64 seconds = 1;</code>
|
|
||||||
* @param int|string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setSeconds($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt64($var);
|
|
||||||
$this->seconds = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Signed fractions of a second at nanosecond resolution of the span
|
|
||||||
* of time. Durations less than one second are represented with a 0
|
|
||||||
* `seconds` field and a positive or negative `nanos` field. For durations
|
|
||||||
* of one second or more, a non-zero value for the `nanos` field must be
|
|
||||||
* of the same sign as the `seconds` field. Must be from -999,999,999
|
|
||||||
* to +999,999,999 inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 nanos = 2;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getNanos()
|
|
||||||
{
|
|
||||||
return $this->nanos;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Signed fractions of a second at nanosecond resolution of the span
|
|
||||||
* of time. Durations less than one second are represented with a 0
|
|
||||||
* `seconds` field and a positive or negative `nanos` field. For durations
|
|
||||||
* of one second or more, a non-zero value for the `nanos` field must be
|
|
||||||
* of the same sign as the `seconds` field. Must be from -999,999,999
|
|
||||||
* to +999,999,999 inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 nanos = 2;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setNanos($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->nanos = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
213
vendor/google/protobuf/src/Google/Protobuf/Enum.php
vendored
213
vendor/google/protobuf/src/Google/Protobuf/Enum.php
vendored
@ -1,213 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/type.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum type definition.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Enum</code>
|
|
||||||
*/
|
|
||||||
class Enum extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Enum type name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = '';
|
|
||||||
/**
|
|
||||||
* Enum value definitions.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumValue enumvalue = 2;</code>
|
|
||||||
*/
|
|
||||||
private $enumvalue;
|
|
||||||
/**
|
|
||||||
* Protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
*/
|
|
||||||
private $options;
|
|
||||||
/**
|
|
||||||
* The source context.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.SourceContext source_context = 4;</code>
|
|
||||||
*/
|
|
||||||
protected $source_context = null;
|
|
||||||
/**
|
|
||||||
* The source syntax.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Syntax syntax = 5;</code>
|
|
||||||
*/
|
|
||||||
protected $syntax = 0;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* Enum type name.
|
|
||||||
* @type array<\Google\Protobuf\EnumValue>|\Google\Protobuf\Internal\RepeatedField $enumvalue
|
|
||||||
* Enum value definitions.
|
|
||||||
* @type array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $options
|
|
||||||
* Protocol buffer options.
|
|
||||||
* @type \Google\Protobuf\SourceContext $source_context
|
|
||||||
* The source context.
|
|
||||||
* @type int $syntax
|
|
||||||
* The source syntax.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Type::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum type name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return $this->name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum type name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum value definitions.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumValue enumvalue = 2;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getEnumvalue()
|
|
||||||
{
|
|
||||||
return $this->enumvalue;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum value definitions.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumValue enumvalue = 2;</code>
|
|
||||||
* @param array<\Google\Protobuf\EnumValue>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setEnumvalue($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\EnumValue::class);
|
|
||||||
$this->enumvalue = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
* @param array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Option::class);
|
|
||||||
$this->options = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The source context.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.SourceContext source_context = 4;</code>
|
|
||||||
* @return \Google\Protobuf\SourceContext|null
|
|
||||||
*/
|
|
||||||
public function getSourceContext()
|
|
||||||
{
|
|
||||||
return $this->source_context;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasSourceContext()
|
|
||||||
{
|
|
||||||
return isset($this->source_context);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearSourceContext()
|
|
||||||
{
|
|
||||||
unset($this->source_context);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The source context.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.SourceContext source_context = 4;</code>
|
|
||||||
* @param \Google\Protobuf\SourceContext $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setSourceContext($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\SourceContext::class);
|
|
||||||
$this->source_context = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The source syntax.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Syntax syntax = 5;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getSyntax()
|
|
||||||
{
|
|
||||||
return $this->syntax;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The source syntax.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Syntax syntax = 5;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setSyntax($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Syntax::class);
|
|
||||||
$this->syntax = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,79 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2017 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
class EnumDescriptor
|
|
||||||
{
|
|
||||||
private $internal_desc;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @internal
|
|
||||||
*/
|
|
||||||
public function __construct($internal_desc)
|
|
||||||
{
|
|
||||||
$this->internal_desc = $internal_desc;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return string Full protobuf message name
|
|
||||||
*/
|
|
||||||
public function getFullName()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getFullName();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return string PHP class name
|
|
||||||
*/
|
|
||||||
public function getClass()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getClass();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param int $index Must be >= 0 and < getValueCount()
|
|
||||||
* @return EnumValueDescriptor
|
|
||||||
*/
|
|
||||||
public function getValue($index)
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getValueDescriptorByIndex($index);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int Number of values in enum
|
|
||||||
*/
|
|
||||||
public function getValueCount()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getValueCount();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,135 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/type.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum value definition.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.EnumValue</code>
|
|
||||||
*/
|
|
||||||
class EnumValue extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Enum value name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = '';
|
|
||||||
/**
|
|
||||||
* Enum value number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 number = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $number = 0;
|
|
||||||
/**
|
|
||||||
* Protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
*/
|
|
||||||
private $options;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* Enum value name.
|
|
||||||
* @type int $number
|
|
||||||
* Enum value number.
|
|
||||||
* @type array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $options
|
|
||||||
* Protocol buffer options.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Type::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum value name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return $this->name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum value name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum value number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 number = 2;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getNumber()
|
|
||||||
{
|
|
||||||
return $this->number;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enum value number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 number = 2;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setNumber($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->number = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 3;</code>
|
|
||||||
* @param array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Option::class);
|
|
||||||
$this->options = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,64 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
class EnumValueDescriptor
|
|
||||||
{
|
|
||||||
private $name;
|
|
||||||
private $number;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @internal
|
|
||||||
*/
|
|
||||||
public function __construct($name, $number)
|
|
||||||
{
|
|
||||||
$this->name = $name;
|
|
||||||
$this->number = $number;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return $this->name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getNumber()
|
|
||||||
{
|
|
||||||
return $this->number;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
381
vendor/google/protobuf/src/Google/Protobuf/Field.php
vendored
381
vendor/google/protobuf/src/Google/Protobuf/Field.php
vendored
@ -1,381 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/type.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A single field of a message type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Field</code>
|
|
||||||
*/
|
|
||||||
class Field extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The field type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Field.Kind kind = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $kind = 0;
|
|
||||||
/**
|
|
||||||
* The field cardinality.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Field.Cardinality cardinality = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $cardinality = 0;
|
|
||||||
/**
|
|
||||||
* The field number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 number = 3;</code>
|
|
||||||
*/
|
|
||||||
protected $number = 0;
|
|
||||||
/**
|
|
||||||
* The field name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 4;</code>
|
|
||||||
*/
|
|
||||||
protected $name = '';
|
|
||||||
/**
|
|
||||||
* The field type URL, without the scheme, for message or enumeration
|
|
||||||
* types. Example: `"type.googleapis.com/google.protobuf.Timestamp"`.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string type_url = 6;</code>
|
|
||||||
*/
|
|
||||||
protected $type_url = '';
|
|
||||||
/**
|
|
||||||
* The index of the field type in `Type.oneofs`, for message or enumeration
|
|
||||||
* types. The first type has index 1; zero means the type is not in the list.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 oneof_index = 7;</code>
|
|
||||||
*/
|
|
||||||
protected $oneof_index = 0;
|
|
||||||
/**
|
|
||||||
* Whether to use alternative packed wire representation.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bool packed = 8;</code>
|
|
||||||
*/
|
|
||||||
protected $packed = false;
|
|
||||||
/**
|
|
||||||
* The protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 9;</code>
|
|
||||||
*/
|
|
||||||
private $options;
|
|
||||||
/**
|
|
||||||
* The field JSON name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string json_name = 10;</code>
|
|
||||||
*/
|
|
||||||
protected $json_name = '';
|
|
||||||
/**
|
|
||||||
* The string value of the default value of this field. Proto2 syntax only.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string default_value = 11;</code>
|
|
||||||
*/
|
|
||||||
protected $default_value = '';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int $kind
|
|
||||||
* The field type.
|
|
||||||
* @type int $cardinality
|
|
||||||
* The field cardinality.
|
|
||||||
* @type int $number
|
|
||||||
* The field number.
|
|
||||||
* @type string $name
|
|
||||||
* The field name.
|
|
||||||
* @type string $type_url
|
|
||||||
* The field type URL, without the scheme, for message or enumeration
|
|
||||||
* types. Example: `"type.googleapis.com/google.protobuf.Timestamp"`.
|
|
||||||
* @type int $oneof_index
|
|
||||||
* The index of the field type in `Type.oneofs`, for message or enumeration
|
|
||||||
* types. The first type has index 1; zero means the type is not in the list.
|
|
||||||
* @type bool $packed
|
|
||||||
* Whether to use alternative packed wire representation.
|
|
||||||
* @type array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $options
|
|
||||||
* The protocol buffer options.
|
|
||||||
* @type string $json_name
|
|
||||||
* The field JSON name.
|
|
||||||
* @type string $default_value
|
|
||||||
* The string value of the default value of this field. Proto2 syntax only.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Type::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Field.Kind kind = 1;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getKind()
|
|
||||||
{
|
|
||||||
return $this->kind;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Field.Kind kind = 1;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setKind($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Field\Kind::class);
|
|
||||||
$this->kind = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field cardinality.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Field.Cardinality cardinality = 2;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getCardinality()
|
|
||||||
{
|
|
||||||
return $this->cardinality;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field cardinality.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>.google.protobuf.Field.Cardinality cardinality = 2;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setCardinality($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Field\Cardinality::class);
|
|
||||||
$this->cardinality = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 number = 3;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getNumber()
|
|
||||||
{
|
|
||||||
return $this->number;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 number = 3;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setNumber($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->number = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 4;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return $this->name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string name = 4;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field type URL, without the scheme, for message or enumeration
|
|
||||||
* types. Example: `"type.googleapis.com/google.protobuf.Timestamp"`.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string type_url = 6;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getTypeUrl()
|
|
||||||
{
|
|
||||||
return $this->type_url;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field type URL, without the scheme, for message or enumeration
|
|
||||||
* types. Example: `"type.googleapis.com/google.protobuf.Timestamp"`.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string type_url = 6;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setTypeUrl($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->type_url = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The index of the field type in `Type.oneofs`, for message or enumeration
|
|
||||||
* types. The first type has index 1; zero means the type is not in the list.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 oneof_index = 7;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getOneofIndex()
|
|
||||||
{
|
|
||||||
return $this->oneof_index;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The index of the field type in `Type.oneofs`, for message or enumeration
|
|
||||||
* types. The first type has index 1; zero means the type is not in the list.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 oneof_index = 7;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOneofIndex($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->oneof_index = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Whether to use alternative packed wire representation.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bool packed = 8;</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getPacked()
|
|
||||||
{
|
|
||||||
return $this->packed;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Whether to use alternative packed wire representation.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>bool packed = 8;</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setPacked($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->packed = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 9;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The protocol buffer options.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.Option options = 9;</code>
|
|
||||||
* @param array<\Google\Protobuf\Option>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Option::class);
|
|
||||||
$this->options = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field JSON name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string json_name = 10;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getJsonName()
|
|
||||||
{
|
|
||||||
return $this->json_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The field JSON name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string json_name = 10;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setJsonName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->json_name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The string value of the default value of this field. Proto2 syntax only.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string default_value = 11;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getDefaultValue()
|
|
||||||
{
|
|
||||||
return $this->default_value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The string value of the default value of this field. Proto2 syntax only.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>string default_value = 11;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setDefaultValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->default_value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,71 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/type.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Field;
|
|
||||||
|
|
||||||
use UnexpectedValueException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Whether a field is optional, required, or repeated.
|
|
||||||
*
|
|
||||||
* Protobuf type <code>google.protobuf.Field.Cardinality</code>
|
|
||||||
*/
|
|
||||||
class Cardinality
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* For fields with unknown cardinality.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>CARDINALITY_UNKNOWN = 0;</code>
|
|
||||||
*/
|
|
||||||
const CARDINALITY_UNKNOWN = 0;
|
|
||||||
/**
|
|
||||||
* For optional fields.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>CARDINALITY_OPTIONAL = 1;</code>
|
|
||||||
*/
|
|
||||||
const CARDINALITY_OPTIONAL = 1;
|
|
||||||
/**
|
|
||||||
* For required fields. Proto2 syntax only.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>CARDINALITY_REQUIRED = 2;</code>
|
|
||||||
*/
|
|
||||||
const CARDINALITY_REQUIRED = 2;
|
|
||||||
/**
|
|
||||||
* For repeated fields.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>CARDINALITY_REPEATED = 3;</code>
|
|
||||||
*/
|
|
||||||
const CARDINALITY_REPEATED = 3;
|
|
||||||
|
|
||||||
private static $valueToName = [
|
|
||||||
self::CARDINALITY_UNKNOWN => 'CARDINALITY_UNKNOWN',
|
|
||||||
self::CARDINALITY_OPTIONAL => 'CARDINALITY_OPTIONAL',
|
|
||||||
self::CARDINALITY_REQUIRED => 'CARDINALITY_REQUIRED',
|
|
||||||
self::CARDINALITY_REPEATED => 'CARDINALITY_REPEATED',
|
|
||||||
];
|
|
||||||
|
|
||||||
public static function name($value)
|
|
||||||
{
|
|
||||||
if (!isset(self::$valueToName[$value])) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
||||||
}
|
|
||||||
return self::$valueToName[$value];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static function value($name)
|
|
||||||
{
|
|
||||||
$const = __CLASS__ . '::' . strtoupper($name);
|
|
||||||
if (!defined($const)) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
||||||
}
|
|
||||||
return constant($const);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(Cardinality::class, \Google\Protobuf\Field_Cardinality::class);
|
|
||||||
|
|
||||||
@ -1,176 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/type.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Field;
|
|
||||||
|
|
||||||
use UnexpectedValueException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Basic field types.
|
|
||||||
*
|
|
||||||
* Protobuf type <code>google.protobuf.Field.Kind</code>
|
|
||||||
*/
|
|
||||||
class Kind
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Field type unknown.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_UNKNOWN = 0;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_UNKNOWN = 0;
|
|
||||||
/**
|
|
||||||
* Field type double.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_DOUBLE = 1;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_DOUBLE = 1;
|
|
||||||
/**
|
|
||||||
* Field type float.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_FLOAT = 2;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_FLOAT = 2;
|
|
||||||
/**
|
|
||||||
* Field type int64.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_INT64 = 3;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_INT64 = 3;
|
|
||||||
/**
|
|
||||||
* Field type uint64.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_UINT64 = 4;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_UINT64 = 4;
|
|
||||||
/**
|
|
||||||
* Field type int32.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_INT32 = 5;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_INT32 = 5;
|
|
||||||
/**
|
|
||||||
* Field type fixed64.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_FIXED64 = 6;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_FIXED64 = 6;
|
|
||||||
/**
|
|
||||||
* Field type fixed32.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_FIXED32 = 7;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_FIXED32 = 7;
|
|
||||||
/**
|
|
||||||
* Field type bool.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_BOOL = 8;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_BOOL = 8;
|
|
||||||
/**
|
|
||||||
* Field type string.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_STRING = 9;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_STRING = 9;
|
|
||||||
/**
|
|
||||||
* Field type group. Proto2 syntax only, and deprecated.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_GROUP = 10;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_GROUP = 10;
|
|
||||||
/**
|
|
||||||
* Field type message.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_MESSAGE = 11;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_MESSAGE = 11;
|
|
||||||
/**
|
|
||||||
* Field type bytes.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_BYTES = 12;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_BYTES = 12;
|
|
||||||
/**
|
|
||||||
* Field type uint32.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_UINT32 = 13;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_UINT32 = 13;
|
|
||||||
/**
|
|
||||||
* Field type enum.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_ENUM = 14;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_ENUM = 14;
|
|
||||||
/**
|
|
||||||
* Field type sfixed32.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_SFIXED32 = 15;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SFIXED32 = 15;
|
|
||||||
/**
|
|
||||||
* Field type sfixed64.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_SFIXED64 = 16;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SFIXED64 = 16;
|
|
||||||
/**
|
|
||||||
* Field type sint32.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_SINT32 = 17;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SINT32 = 17;
|
|
||||||
/**
|
|
||||||
* Field type sint64.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_SINT64 = 18;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SINT64 = 18;
|
|
||||||
|
|
||||||
private static $valueToName = [
|
|
||||||
self::TYPE_UNKNOWN => 'TYPE_UNKNOWN',
|
|
||||||
self::TYPE_DOUBLE => 'TYPE_DOUBLE',
|
|
||||||
self::TYPE_FLOAT => 'TYPE_FLOAT',
|
|
||||||
self::TYPE_INT64 => 'TYPE_INT64',
|
|
||||||
self::TYPE_UINT64 => 'TYPE_UINT64',
|
|
||||||
self::TYPE_INT32 => 'TYPE_INT32',
|
|
||||||
self::TYPE_FIXED64 => 'TYPE_FIXED64',
|
|
||||||
self::TYPE_FIXED32 => 'TYPE_FIXED32',
|
|
||||||
self::TYPE_BOOL => 'TYPE_BOOL',
|
|
||||||
self::TYPE_STRING => 'TYPE_STRING',
|
|
||||||
self::TYPE_GROUP => 'TYPE_GROUP',
|
|
||||||
self::TYPE_MESSAGE => 'TYPE_MESSAGE',
|
|
||||||
self::TYPE_BYTES => 'TYPE_BYTES',
|
|
||||||
self::TYPE_UINT32 => 'TYPE_UINT32',
|
|
||||||
self::TYPE_ENUM => 'TYPE_ENUM',
|
|
||||||
self::TYPE_SFIXED32 => 'TYPE_SFIXED32',
|
|
||||||
self::TYPE_SFIXED64 => 'TYPE_SFIXED64',
|
|
||||||
self::TYPE_SINT32 => 'TYPE_SINT32',
|
|
||||||
self::TYPE_SINT64 => 'TYPE_SINT64',
|
|
||||||
];
|
|
||||||
|
|
||||||
public static function name($value)
|
|
||||||
{
|
|
||||||
if (!isset(self::$valueToName[$value])) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
||||||
}
|
|
||||||
return self::$valueToName[$value];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static function value($name)
|
|
||||||
{
|
|
||||||
$const = __CLASS__ . '::' . strtoupper($name);
|
|
||||||
if (!defined($const)) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
||||||
}
|
|
||||||
return constant($const);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(Kind::class, \Google\Protobuf\Field_Kind::class);
|
|
||||||
|
|
||||||
@ -1,144 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2017 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GetPublicDescriptorTrait;
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
|
|
||||||
class FieldDescriptor
|
|
||||||
{
|
|
||||||
use GetPublicDescriptorTrait;
|
|
||||||
|
|
||||||
/** @var \Google\Protobuf\Internal\FieldDescriptor $internal_desc */
|
|
||||||
private $internal_desc;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @internal
|
|
||||||
*/
|
|
||||||
public function __construct($internal_desc)
|
|
||||||
{
|
|
||||||
$this->internal_desc = $internal_desc;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return string Field name
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getName();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int Protobuf field number
|
|
||||||
*/
|
|
||||||
public function getNumber()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getNumber();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getLabel()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getLabel();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getType()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->getType();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return OneofDescriptor
|
|
||||||
*/
|
|
||||||
public function getContainingOneof()
|
|
||||||
{
|
|
||||||
return $this->getPublicDescriptor($this->internal_desc->getContainingOneof());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets the field's containing oneof, only if non-synthetic.
|
|
||||||
*
|
|
||||||
* @return null|OneofDescriptor
|
|
||||||
*/
|
|
||||||
public function getRealContainingOneof()
|
|
||||||
{
|
|
||||||
return $this->getPublicDescriptor($this->internal_desc->getRealContainingOneof());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return boolean
|
|
||||||
*/
|
|
||||||
public function hasOptionalKeyword()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->hasOptionalKeyword();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return Descriptor Returns a descriptor for the field type if the field type is a message, otherwise throws \Exception
|
|
||||||
* @throws \Exception
|
|
||||||
*/
|
|
||||||
public function getMessageType()
|
|
||||||
{
|
|
||||||
if ($this->getType() == GPBType::MESSAGE) {
|
|
||||||
return $this->getPublicDescriptor($this->internal_desc->getMessageType());
|
|
||||||
} else {
|
|
||||||
throw new \Exception("Cannot get message type for non-message field '" . $this->getName() . "'");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return EnumDescriptor Returns an enum descriptor if the field type is an enum, otherwise throws \Exception
|
|
||||||
* @throws \Exception
|
|
||||||
*/
|
|
||||||
public function getEnumType()
|
|
||||||
{
|
|
||||||
if ($this->getType() == GPBType::ENUM) {
|
|
||||||
return $this->getPublicDescriptor($this->internal_desc->getEnumType());
|
|
||||||
} else {
|
|
||||||
throw new \Exception("Cannot get enum type for non-enum field '" . $this->getName() . "'");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return boolean
|
|
||||||
*/
|
|
||||||
public function isMap()
|
|
||||||
{
|
|
||||||
return $this->internal_desc->isMap();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,217 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/field_mask.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* `FieldMask` represents a set of symbolic field paths, for example:
|
|
||||||
* paths: "f.a"
|
|
||||||
* paths: "f.b.d"
|
|
||||||
* Here `f` represents a field in some root message, `a` and `b`
|
|
||||||
* fields in the message found in `f`, and `d` a field found in the
|
|
||||||
* message in `f.b`.
|
|
||||||
* Field masks are used to specify a subset of fields that should be
|
|
||||||
* returned by a get operation or modified by an update operation.
|
|
||||||
* Field masks also have a custom JSON encoding (see below).
|
|
||||||
* # Field Masks in Projections
|
|
||||||
* When used in the context of a projection, a response message or
|
|
||||||
* sub-message is filtered by the API to only contain those fields as
|
|
||||||
* specified in the mask. For example, if the mask in the previous
|
|
||||||
* example is applied to a response message as follows:
|
|
||||||
* f {
|
|
||||||
* a : 22
|
|
||||||
* b {
|
|
||||||
* d : 1
|
|
||||||
* x : 2
|
|
||||||
* }
|
|
||||||
* y : 13
|
|
||||||
* }
|
|
||||||
* z: 8
|
|
||||||
* The result will not contain specific values for fields x,y and z
|
|
||||||
* (their value will be set to the default, and omitted in proto text
|
|
||||||
* output):
|
|
||||||
* f {
|
|
||||||
* a : 22
|
|
||||||
* b {
|
|
||||||
* d : 1
|
|
||||||
* }
|
|
||||||
* }
|
|
||||||
* A repeated field is not allowed except at the last position of a
|
|
||||||
* paths string.
|
|
||||||
* If a FieldMask object is not present in a get operation, the
|
|
||||||
* operation applies to all fields (as if a FieldMask of all fields
|
|
||||||
* had been specified).
|
|
||||||
* Note that a field mask does not necessarily apply to the
|
|
||||||
* top-level response message. In case of a REST get operation, the
|
|
||||||
* field mask applies directly to the response, but in case of a REST
|
|
||||||
* list operation, the mask instead applies to each individual message
|
|
||||||
* in the returned resource list. In case of a REST custom method,
|
|
||||||
* other definitions may be used. Where the mask applies will be
|
|
||||||
* clearly documented together with its declaration in the API. In
|
|
||||||
* any case, the effect on the returned resource/resources is required
|
|
||||||
* behavior for APIs.
|
|
||||||
* # Field Masks in Update Operations
|
|
||||||
* A field mask in update operations specifies which fields of the
|
|
||||||
* targeted resource are going to be updated. The API is required
|
|
||||||
* to only change the values of the fields as specified in the mask
|
|
||||||
* and leave the others untouched. If a resource is passed in to
|
|
||||||
* describe the updated values, the API ignores the values of all
|
|
||||||
* fields not covered by the mask.
|
|
||||||
* If a repeated field is specified for an update operation, new values will
|
|
||||||
* be appended to the existing repeated field in the target resource. Note that
|
|
||||||
* a repeated field is only allowed in the last position of a `paths` string.
|
|
||||||
* If a sub-message is specified in the last position of the field mask for an
|
|
||||||
* update operation, then new value will be merged into the existing sub-message
|
|
||||||
* in the target resource.
|
|
||||||
* For example, given the target message:
|
|
||||||
* f {
|
|
||||||
* b {
|
|
||||||
* d: 1
|
|
||||||
* x: 2
|
|
||||||
* }
|
|
||||||
* c: [1]
|
|
||||||
* }
|
|
||||||
* And an update message:
|
|
||||||
* f {
|
|
||||||
* b {
|
|
||||||
* d: 10
|
|
||||||
* }
|
|
||||||
* c: [2]
|
|
||||||
* }
|
|
||||||
* then if the field mask is:
|
|
||||||
* paths: ["f.b", "f.c"]
|
|
||||||
* then the result will be:
|
|
||||||
* f {
|
|
||||||
* b {
|
|
||||||
* d: 10
|
|
||||||
* x: 2
|
|
||||||
* }
|
|
||||||
* c: [1, 2]
|
|
||||||
* }
|
|
||||||
* An implementation may provide options to override this default behavior for
|
|
||||||
* repeated and message fields.
|
|
||||||
* In order to reset a field's value to the default, the field must
|
|
||||||
* be in the mask and set to the default value in the provided resource.
|
|
||||||
* Hence, in order to reset all fields of a resource, provide a default
|
|
||||||
* instance of the resource and set all fields in the mask, or do
|
|
||||||
* not provide a mask as described below.
|
|
||||||
* If a field mask is not present on update, the operation applies to
|
|
||||||
* all fields (as if a field mask of all fields has been specified).
|
|
||||||
* Note that in the presence of schema evolution, this may mean that
|
|
||||||
* fields the client does not know and has therefore not filled into
|
|
||||||
* the request will be reset to their default. If this is unwanted
|
|
||||||
* behavior, a specific service may require a client to always specify
|
|
||||||
* a field mask, producing an error if not.
|
|
||||||
* As with get operations, the location of the resource which
|
|
||||||
* describes the updated values in the request message depends on the
|
|
||||||
* operation kind. In any case, the effect of the field mask is
|
|
||||||
* required to be honored by the API.
|
|
||||||
* ## Considerations for HTTP REST
|
|
||||||
* The HTTP kind of an update operation which uses a field mask must
|
|
||||||
* be set to PATCH instead of PUT in order to satisfy HTTP semantics
|
|
||||||
* (PUT must only be used for full updates).
|
|
||||||
* # JSON Encoding of Field Masks
|
|
||||||
* In JSON, a field mask is encoded as a single string where paths are
|
|
||||||
* separated by a comma. Fields name in each path are converted
|
|
||||||
* to/from lower-camel naming conventions.
|
|
||||||
* As an example, consider the following message declarations:
|
|
||||||
* message Profile {
|
|
||||||
* User user = 1;
|
|
||||||
* Photo photo = 2;
|
|
||||||
* }
|
|
||||||
* message User {
|
|
||||||
* string display_name = 1;
|
|
||||||
* string address = 2;
|
|
||||||
* }
|
|
||||||
* In proto a field mask for `Profile` may look as such:
|
|
||||||
* mask {
|
|
||||||
* paths: "user.display_name"
|
|
||||||
* paths: "photo"
|
|
||||||
* }
|
|
||||||
* In JSON, the same mask is represented as below:
|
|
||||||
* {
|
|
||||||
* mask: "user.displayName,photo"
|
|
||||||
* }
|
|
||||||
* # Field Masks and Oneof Fields
|
|
||||||
* Field masks treat fields in oneofs just as regular fields. Consider the
|
|
||||||
* following message:
|
|
||||||
* message SampleMessage {
|
|
||||||
* oneof test_oneof {
|
|
||||||
* string name = 4;
|
|
||||||
* SubMessage sub_message = 9;
|
|
||||||
* }
|
|
||||||
* }
|
|
||||||
* The field mask can be:
|
|
||||||
* mask {
|
|
||||||
* paths: "name"
|
|
||||||
* }
|
|
||||||
* Or:
|
|
||||||
* mask {
|
|
||||||
* paths: "sub_message"
|
|
||||||
* }
|
|
||||||
* Note that oneof type names ("test_oneof" in this case) cannot be used in
|
|
||||||
* paths.
|
|
||||||
* ## Field Mask Verification
|
|
||||||
* The implementation of any API method which has a FieldMask type field in the
|
|
||||||
* request should verify the included field paths, and return an
|
|
||||||
* `INVALID_ARGUMENT` error if any path is unmappable.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.FieldMask</code>
|
|
||||||
*/
|
|
||||||
class FieldMask extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The set of field mask paths.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string paths = 1;</code>
|
|
||||||
*/
|
|
||||||
private $paths;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type array<string>|\Google\Protobuf\Internal\RepeatedField $paths
|
|
||||||
* The set of field mask paths.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\FieldMask::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The set of field mask paths.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string paths = 1;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getPaths()
|
|
||||||
{
|
|
||||||
return $this->paths;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The set of field mask paths.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string paths = 1;</code>
|
|
||||||
* @param array<string>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setPaths($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
|
|
||||||
$this->paths = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/type.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Field\Cardinality instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class Field_Cardinality {}
|
|
||||||
}
|
|
||||||
class_exists(Field\Cardinality::class);
|
|
||||||
@trigger_error('Google\Protobuf\Field_Cardinality is deprecated and will be removed in the next major release. Use Google\Protobuf\Field\Cardinality instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/type.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Field\Kind instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class Field_Kind {}
|
|
||||||
}
|
|
||||||
class_exists(Field\Kind::class);
|
|
||||||
@trigger_error('Google\Protobuf\Field_Kind is deprecated and will be removed in the next major release. Use Google\Protobuf\Field\Kind instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/wrappers.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrapper message for `float`.
|
|
||||||
* The JSON representation for `FloatValue` is JSON number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.FloatValue</code>
|
|
||||||
*/
|
|
||||||
class FloatValue extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The float value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>float value = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $value = 0.0;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type float $value
|
|
||||||
* The float value.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Wrappers::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The float value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>float value = 1;</code>
|
|
||||||
* @return float
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The float value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>float value = 1;</code>
|
|
||||||
* @param float $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkFloat($var);
|
|
||||||
$this->value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/empty.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A generic empty message that you can re-use to avoid defining duplicated
|
|
||||||
* empty messages in your APIs. A typical example is to use it as the request
|
|
||||||
* or the response type of an API method. For instance:
|
|
||||||
* service Foo {
|
|
||||||
* rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
|
|
||||||
* }
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Empty</code>
|
|
||||||
*/
|
|
||||||
class GPBEmpty extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\GPBEmpty::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/wrappers.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrapper message for `int32`.
|
|
||||||
* The JSON representation for `Int32Value` is JSON number.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Int32Value</code>
|
|
||||||
*/
|
|
||||||
class Int32Value extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The int32 value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 value = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $value = 0;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int $value
|
|
||||||
* The int32 value.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Wrappers::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The int32 value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 value = 1;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The int32 value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int32 value = 1;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/wrappers.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wrapper message for `int64`.
|
|
||||||
* The JSON representation for `Int64Value` is JSON string.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.Int64Value</code>
|
|
||||||
*/
|
|
||||||
class Int64Value extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The int64 value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int64 value = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $value = 0;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int|string $value
|
|
||||||
* The int64 value.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Wrappers::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The int64 value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int64 value = 1;</code>
|
|
||||||
* @return int|string
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The int64 value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>int64 value = 1;</code>
|
|
||||||
* @param int|string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt64($var);
|
|
||||||
$this->value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,86 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Base class for Google\Protobuf\Any, this contains hand-written convenience
|
|
||||||
* methods like pack() and unpack().
|
|
||||||
*/
|
|
||||||
class AnyBase extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
const TYPE_URL_PREFIX = 'type.googleapis.com/';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This method will try to resolve the type_url in Any message to get the
|
|
||||||
* targeted message type. If failed, an error will be thrown. Otherwise,
|
|
||||||
* the method will create a message of the targeted type and fill it with
|
|
||||||
* the decoded value in Any.
|
|
||||||
* @return Message unpacked message
|
|
||||||
* @throws \Exception Type url needs to be type.googleapis.com/fully-qualified.
|
|
||||||
* @throws \Exception Class hasn't been added to descriptor pool.
|
|
||||||
* @throws \Exception cannot decode data in value field.
|
|
||||||
*/
|
|
||||||
public function unpack()
|
|
||||||
{
|
|
||||||
// Get fully qualified name from type url.
|
|
||||||
$url_prifix_len = strlen(GPBUtil::TYPE_URL_PREFIX);
|
|
||||||
if (substr($this->type_url, 0, $url_prifix_len) !=
|
|
||||||
GPBUtil::TYPE_URL_PREFIX) {
|
|
||||||
throw new \Exception(
|
|
||||||
"Type url needs to be type.googleapis.com/fully-qulified");
|
|
||||||
}
|
|
||||||
$fully_qualifed_name =
|
|
||||||
substr($this->type_url, $url_prifix_len);
|
|
||||||
|
|
||||||
// Create message according to fully qualified name.
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
$desc = $pool->getDescriptorByProtoName($fully_qualifed_name);
|
|
||||||
if (is_null($desc)) {
|
|
||||||
throw new \Exception("Class ".$fully_qualifed_name
|
|
||||||
." hasn't been added to descriptor pool");
|
|
||||||
}
|
|
||||||
$klass = $desc->getClass();
|
|
||||||
$msg = new $klass();
|
|
||||||
|
|
||||||
// Merge data into message.
|
|
||||||
$msg->mergeFromString($this->value);
|
|
||||||
return $msg;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The type_url will be created according to the given message’s type and
|
|
||||||
* the value is encoded data from the given message..
|
|
||||||
* @param Message $msg A proto message.
|
|
||||||
*/
|
|
||||||
public function pack($msg)
|
|
||||||
{
|
|
||||||
if (!$msg instanceof Message) {
|
|
||||||
trigger_error("Given parameter is not a message instance.",
|
|
||||||
E_USER_ERROR);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Set value using serialized message.
|
|
||||||
$this->value = $msg->serializeToString();
|
|
||||||
|
|
||||||
// Set type url.
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
$desc = $pool->getDescriptorByClassName(get_class($msg));
|
|
||||||
$fully_qualifed_name = $desc->getFullName();
|
|
||||||
$this->type_url = GPBUtil::TYPE_URL_PREFIX . $fully_qualifed_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This method returns whether the type_url in any_message is corresponded
|
|
||||||
* to the given class.
|
|
||||||
* @param string $klass The fully qualified PHP class name of a proto message type.
|
|
||||||
*/
|
|
||||||
public function is($klass)
|
|
||||||
{
|
|
||||||
$pool = \Google\Protobuf\Internal\DescriptorPool::getGeneratedPool();
|
|
||||||
$desc = $pool->getDescriptorByClassName($klass);
|
|
||||||
$fully_qualifed_name = $desc->getFullName();
|
|
||||||
$type_url = GPBUtil::TYPE_URL_PREFIX . $fully_qualifed_name;
|
|
||||||
return $this->type_url === $type_url;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,381 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\Uint64;
|
|
||||||
|
|
||||||
class CodedInputStream
|
|
||||||
{
|
|
||||||
|
|
||||||
private $buffer;
|
|
||||||
private $buffer_size_after_limit;
|
|
||||||
private $buffer_end;
|
|
||||||
private $current;
|
|
||||||
private $current_limit;
|
|
||||||
private $legitimate_message_end;
|
|
||||||
private $recursion_budget;
|
|
||||||
private $recursion_limit;
|
|
||||||
private $total_bytes_limit;
|
|
||||||
private $total_bytes_read;
|
|
||||||
|
|
||||||
const MAX_VARINT_BYTES = 10;
|
|
||||||
const DEFAULT_RECURSION_LIMIT = 100;
|
|
||||||
const DEFAULT_TOTAL_BYTES_LIMIT = 33554432; // 32 << 20, 32MB
|
|
||||||
|
|
||||||
public function __construct($buffer)
|
|
||||||
{
|
|
||||||
$start = 0;
|
|
||||||
$end = strlen($buffer);
|
|
||||||
$this->buffer = $buffer;
|
|
||||||
$this->buffer_size_after_limit = 0;
|
|
||||||
$this->buffer_end = $end;
|
|
||||||
$this->current = $start;
|
|
||||||
$this->current_limit = $end;
|
|
||||||
$this->legitimate_message_end = false;
|
|
||||||
$this->recursion_budget = self::DEFAULT_RECURSION_LIMIT;
|
|
||||||
$this->recursion_limit = self::DEFAULT_RECURSION_LIMIT;
|
|
||||||
$this->total_bytes_limit = self::DEFAULT_TOTAL_BYTES_LIMIT;
|
|
||||||
$this->total_bytes_read = $end - $start;
|
|
||||||
}
|
|
||||||
|
|
||||||
private function advance($amount)
|
|
||||||
{
|
|
||||||
$this->current += $amount;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function bufferSize()
|
|
||||||
{
|
|
||||||
return $this->buffer_end - $this->current;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function current()
|
|
||||||
{
|
|
||||||
return $this->total_bytes_read -
|
|
||||||
($this->buffer_end - $this->current +
|
|
||||||
$this->buffer_size_after_limit);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function substr($start, $end)
|
|
||||||
{
|
|
||||||
return substr($this->buffer, $start, $end - $start);
|
|
||||||
}
|
|
||||||
|
|
||||||
private function recomputeBufferLimits()
|
|
||||||
{
|
|
||||||
$this->buffer_end += $this->buffer_size_after_limit;
|
|
||||||
$closest_limit = min($this->current_limit, $this->total_bytes_limit);
|
|
||||||
if ($closest_limit < $this->total_bytes_read) {
|
|
||||||
// The limit position is in the current buffer. We must adjust the
|
|
||||||
// buffer size accordingly.
|
|
||||||
$this->buffer_size_after_limit = $this->total_bytes_read -
|
|
||||||
$closest_limit;
|
|
||||||
$this->buffer_end -= $this->buffer_size_after_limit;
|
|
||||||
} else {
|
|
||||||
$this->buffer_size_after_limit = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private function consumedEntireMessage()
|
|
||||||
{
|
|
||||||
return $this->legitimate_message_end;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read uint32 into $var. Advance buffer with consumed bytes. If the
|
|
||||||
* contained varint is larger than 32 bits, discard the high order bits.
|
|
||||||
* @param $var
|
|
||||||
*/
|
|
||||||
public function readVarint32(&$var)
|
|
||||||
{
|
|
||||||
if (!$this->readVarint64($var)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (PHP_INT_SIZE == 4) {
|
|
||||||
$var = bcmod($var, 4294967296);
|
|
||||||
} else {
|
|
||||||
$var &= 0xFFFFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Convert large uint32 to int32.
|
|
||||||
if ($var > 0x7FFFFFFF) {
|
|
||||||
if (PHP_INT_SIZE === 8) {
|
|
||||||
$var = $var | (0xFFFFFFFF << 32);
|
|
||||||
} else {
|
|
||||||
$var = bcsub($var, 4294967296);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$var = intval($var);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read Uint64 into $var. Advance buffer with consumed bytes.
|
|
||||||
* @param $var
|
|
||||||
*/
|
|
||||||
public function readVarint64(&$var)
|
|
||||||
{
|
|
||||||
$count = 0;
|
|
||||||
|
|
||||||
if (PHP_INT_SIZE == 4) {
|
|
||||||
$high = 0;
|
|
||||||
$low = 0;
|
|
||||||
$b = 0;
|
|
||||||
|
|
||||||
do {
|
|
||||||
if ($this->current === $this->buffer_end) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if ($count === self::MAX_VARINT_BYTES) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
$b = ord($this->buffer[$this->current]);
|
|
||||||
$bits = 7 * $count;
|
|
||||||
if ($bits >= 32) {
|
|
||||||
$high |= (($b & 0x7F) << ($bits - 32));
|
|
||||||
} else if ($bits > 25){
|
|
||||||
// $bits is 28 in this case.
|
|
||||||
$low |= (($b & 0x7F) << 28);
|
|
||||||
$high = ($b & 0x7F) >> 4;
|
|
||||||
} else {
|
|
||||||
$low |= (($b & 0x7F) << $bits);
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->advance(1);
|
|
||||||
$count += 1;
|
|
||||||
} while ($b & 0x80);
|
|
||||||
|
|
||||||
$var = GPBUtil::combineInt32ToInt64($high, $low);
|
|
||||||
if (bccomp($var, 0) < 0) {
|
|
||||||
$var = bcadd($var, "18446744073709551616");
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$result = 0;
|
|
||||||
$shift = 0;
|
|
||||||
|
|
||||||
do {
|
|
||||||
if ($this->current === $this->buffer_end) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if ($count === self::MAX_VARINT_BYTES) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
$byte = ord($this->buffer[$this->current]);
|
|
||||||
$result |= ($byte & 0x7f) << $shift;
|
|
||||||
$shift += 7;
|
|
||||||
$this->advance(1);
|
|
||||||
$count += 1;
|
|
||||||
} while ($byte > 0x7f);
|
|
||||||
|
|
||||||
$var = $result;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read int into $var. If the result is larger than the largest integer, $var
|
|
||||||
* will be -1. Advance buffer with consumed bytes.
|
|
||||||
* @param $var
|
|
||||||
*/
|
|
||||||
public function readVarintSizeAsInt(&$var)
|
|
||||||
{
|
|
||||||
if (!$this->readVarint64($var)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
$var = (int)$var;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read 32-bit unsigned integer to $var. If the buffer has less than 4 bytes,
|
|
||||||
* return false. Advance buffer with consumed bytes.
|
|
||||||
* @param $var
|
|
||||||
*/
|
|
||||||
public function readLittleEndian32(&$var)
|
|
||||||
{
|
|
||||||
$data = null;
|
|
||||||
if (!$this->readRaw(4, $data)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
$var = unpack('V', $data);
|
|
||||||
$var = $var[1];
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read 64-bit unsigned integer to $var. If the buffer has less than 8 bytes,
|
|
||||||
* return false. Advance buffer with consumed bytes.
|
|
||||||
* @param $var
|
|
||||||
*/
|
|
||||||
public function readLittleEndian64(&$var)
|
|
||||||
{
|
|
||||||
$data = null;
|
|
||||||
if (!$this->readRaw(4, $data)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
$low = unpack('V', $data)[1];
|
|
||||||
if (!$this->readRaw(4, $data)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
$high = unpack('V', $data)[1];
|
|
||||||
if (PHP_INT_SIZE == 4) {
|
|
||||||
$var = GPBUtil::combineInt32ToInt64($high, $low);
|
|
||||||
} else {
|
|
||||||
$var = ($high << 32) | $low;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Read tag into $var. Advance buffer with consumed bytes.
|
|
||||||
*/
|
|
||||||
public function readTag()
|
|
||||||
{
|
|
||||||
if ($this->current === $this->buffer_end) {
|
|
||||||
// Make sure that it failed due to EOF, not because we hit
|
|
||||||
// total_bytes_limit, which, unlike normal limits, is not a valid
|
|
||||||
// place to end a message.
|
|
||||||
$current_position = $this->total_bytes_read -
|
|
||||||
$this->buffer_size_after_limit;
|
|
||||||
if ($current_position >= $this->total_bytes_limit) {
|
|
||||||
// Hit total_bytes_limit_. But if we also hit the normal limit,
|
|
||||||
// we're still OK.
|
|
||||||
$this->legitimate_message_end =
|
|
||||||
($this->current_limit === $this->total_bytes_limit);
|
|
||||||
} else {
|
|
||||||
$this->legitimate_message_end = true;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
$result = 0;
|
|
||||||
// The largest tag is 2^29 - 1, which can be represented by int32.
|
|
||||||
$success = $this->readVarint32($result);
|
|
||||||
if ($success) {
|
|
||||||
return $result;
|
|
||||||
} else {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function readRaw($size, &$buffer)
|
|
||||||
{
|
|
||||||
$current_buffer_size = 0;
|
|
||||||
if ($this->bufferSize() < $size) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($size === 0) {
|
|
||||||
$buffer = "";
|
|
||||||
} else {
|
|
||||||
$buffer = substr($this->buffer, $this->current, $size);
|
|
||||||
$this->advance($size);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Places a limit on the number of bytes that the stream may read, starting
|
|
||||||
* from the current position. Once the stream hits this limit, it will act
|
|
||||||
* like the end of the input has been reached until popLimit() is called.
|
|
||||||
*
|
|
||||||
* As the names imply, the stream conceptually has a stack of limits. The
|
|
||||||
* shortest limit on the stack is always enforced, even if it is not the top
|
|
||||||
* limit.
|
|
||||||
*
|
|
||||||
* The value returned by pushLimit() is opaque to the caller, and must be
|
|
||||||
* passed unchanged to the corresponding call to popLimit().
|
|
||||||
*
|
|
||||||
* @param integer $byte_limit
|
|
||||||
* @throws \Exception Fail to push limit.
|
|
||||||
*/
|
|
||||||
public function pushLimit($byte_limit)
|
|
||||||
{
|
|
||||||
// Current position relative to the beginning of the stream.
|
|
||||||
$current_position = $this->current();
|
|
||||||
$old_limit = $this->current_limit;
|
|
||||||
|
|
||||||
// security: byte_limit is possibly evil, so check for negative values
|
|
||||||
// and overflow.
|
|
||||||
if ($byte_limit >= 0 &&
|
|
||||||
$byte_limit <= PHP_INT_MAX - $current_position &&
|
|
||||||
$byte_limit <= $this->current_limit - $current_position) {
|
|
||||||
$this->current_limit = $current_position + $byte_limit;
|
|
||||||
$this->recomputeBufferLimits();
|
|
||||||
} else {
|
|
||||||
throw new GPBDecodeException("Fail to push limit.");
|
|
||||||
}
|
|
||||||
|
|
||||||
return $old_limit;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* The limit passed in is actually the *old* limit, which we returned from
|
|
||||||
* PushLimit().
|
|
||||||
*
|
|
||||||
* @param integer $byte_limit
|
|
||||||
*/
|
|
||||||
public function popLimit($byte_limit)
|
|
||||||
{
|
|
||||||
$this->current_limit = $byte_limit;
|
|
||||||
$this->recomputeBufferLimits();
|
|
||||||
// We may no longer be at a legitimate message end. ReadTag() needs to
|
|
||||||
// be called again to find out.
|
|
||||||
$this->legitimate_message_end = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function incrementRecursionDepthAndPushLimit(
|
|
||||||
$byte_limit, &$old_limit, &$recursion_budget)
|
|
||||||
{
|
|
||||||
$old_limit = $this->pushLimit($byte_limit);
|
|
||||||
$recursion_limit = --$this->recursion_limit;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function decrementRecursionDepthAndPopLimit($byte_limit)
|
|
||||||
{
|
|
||||||
$result = $this->consumedEntireMessage();
|
|
||||||
$this->popLimit($byte_limit);
|
|
||||||
++$this->recursion_budget;
|
|
||||||
return $result;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function bytesUntilLimit()
|
|
||||||
{
|
|
||||||
if ($this->current_limit === PHP_INT_MAX) {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
return $this->current_limit - $this->current;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,159 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
class CodedOutputStream
|
|
||||||
{
|
|
||||||
|
|
||||||
private $buffer;
|
|
||||||
private $buffer_size;
|
|
||||||
private $current;
|
|
||||||
|
|
||||||
const MAX_VARINT64_BYTES = 10;
|
|
||||||
|
|
||||||
public function __construct($size)
|
|
||||||
{
|
|
||||||
$this->current = 0;
|
|
||||||
$this->buffer_size = $size;
|
|
||||||
$this->buffer = str_repeat(chr(0), $this->buffer_size);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getData()
|
|
||||||
{
|
|
||||||
return $this->buffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function writeVarint32($value, $trim)
|
|
||||||
{
|
|
||||||
$bytes = str_repeat(chr(0), self::MAX_VARINT64_BYTES);
|
|
||||||
$size = self::writeVarintToArray($value, $bytes, $trim);
|
|
||||||
return $this->writeRaw($bytes, $size);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function writeVarint64($value)
|
|
||||||
{
|
|
||||||
$bytes = str_repeat(chr(0), self::MAX_VARINT64_BYTES);
|
|
||||||
$size = self::writeVarintToArray($value, $bytes);
|
|
||||||
return $this->writeRaw($bytes, $size);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function writeLittleEndian32($value)
|
|
||||||
{
|
|
||||||
$bytes = str_repeat(chr(0), 4);
|
|
||||||
$size = self::writeLittleEndian32ToArray($value, $bytes);
|
|
||||||
return $this->writeRaw($bytes, $size);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function writeLittleEndian64($value)
|
|
||||||
{
|
|
||||||
$bytes = str_repeat(chr(0), 8);
|
|
||||||
$size = self::writeLittleEndian64ToArray($value, $bytes);
|
|
||||||
return $this->writeRaw($bytes, $size);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function writeTag($tag)
|
|
||||||
{
|
|
||||||
return $this->writeVarint32($tag, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function writeRaw($data, $size)
|
|
||||||
{
|
|
||||||
if ($this->buffer_size < $size) {
|
|
||||||
trigger_error("Output stream doesn't have enough buffer.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
for ($i = 0; $i < $size; $i++) {
|
|
||||||
$this->buffer[$this->current] = $data[$i];
|
|
||||||
$this->current++;
|
|
||||||
$this->buffer_size--;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function writeVarintToArray($value, &$buffer, $trim = false)
|
|
||||||
{
|
|
||||||
$current = 0;
|
|
||||||
|
|
||||||
$high = 0;
|
|
||||||
$low = 0;
|
|
||||||
if (PHP_INT_SIZE == 4) {
|
|
||||||
GPBUtil::divideInt64ToInt32($value, $high, $low, $trim);
|
|
||||||
} else {
|
|
||||||
$low = $value;
|
|
||||||
}
|
|
||||||
|
|
||||||
while (($low >= 0x80 || $low < 0) || $high != 0) {
|
|
||||||
$buffer[$current] = chr($low | 0x80);
|
|
||||||
$value = ($value >> 7) & ~(0x7F << ((PHP_INT_SIZE << 3) - 7));
|
|
||||||
$carry = ($high & 0x7F) << ((PHP_INT_SIZE << 3) - 7);
|
|
||||||
$high = ($high >> 7) & ~(0x7F << ((PHP_INT_SIZE << 3) - 7));
|
|
||||||
$low = (($low >> 7) & ~(0x7F << ((PHP_INT_SIZE << 3) - 7)) | $carry);
|
|
||||||
$current++;
|
|
||||||
}
|
|
||||||
$buffer[$current] = chr($low);
|
|
||||||
return $current + 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static function writeLittleEndian32ToArray($value, &$buffer)
|
|
||||||
{
|
|
||||||
$buffer[0] = chr($value & 0x000000FF);
|
|
||||||
$buffer[1] = chr(($value >> 8) & 0x000000FF);
|
|
||||||
$buffer[2] = chr(($value >> 16) & 0x000000FF);
|
|
||||||
$buffer[3] = chr(($value >> 24) & 0x000000FF);
|
|
||||||
return 4;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static function writeLittleEndian64ToArray($value, &$buffer)
|
|
||||||
{
|
|
||||||
$high = 0;
|
|
||||||
$low = 0;
|
|
||||||
if (PHP_INT_SIZE == 4) {
|
|
||||||
GPBUtil::divideInt64ToInt32($value, $high, $low);
|
|
||||||
} else {
|
|
||||||
$low = $value & 0xFFFFFFFF;
|
|
||||||
$high = ($value >> 32) & 0xFFFFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
$buffer[0] = chr($low & 0x000000FF);
|
|
||||||
$buffer[1] = chr(($low >> 8) & 0x000000FF);
|
|
||||||
$buffer[2] = chr(($low >> 16) & 0x000000FF);
|
|
||||||
$buffer[3] = chr(($low >> 24) & 0x000000FF);
|
|
||||||
$buffer[4] = chr($high & 0x000000FF);
|
|
||||||
$buffer[5] = chr(($high >> 8) & 0x000000FF);
|
|
||||||
$buffer[6] = chr(($high >> 16) & 0x000000FF);
|
|
||||||
$buffer[7] = chr(($high >> 24) & 0x000000FF);
|
|
||||||
return 8;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,236 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
class Descriptor
|
|
||||||
{
|
|
||||||
use HasPublicDescriptorTrait;
|
|
||||||
|
|
||||||
private $full_name;
|
|
||||||
private $field = [];
|
|
||||||
private $json_to_field = [];
|
|
||||||
private $name_to_field = [];
|
|
||||||
private $index_to_field = [];
|
|
||||||
private $nested_type = [];
|
|
||||||
private $enum_type = [];
|
|
||||||
private $klass;
|
|
||||||
private $legacy_klass;
|
|
||||||
private $previous_klass;
|
|
||||||
private $options;
|
|
||||||
private $oneof_decl = [];
|
|
||||||
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->public_desc = new \Google\Protobuf\Descriptor($this);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addOneofDecl($oneof)
|
|
||||||
{
|
|
||||||
$this->oneof_decl[] = $oneof;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getOneofDecl()
|
|
||||||
{
|
|
||||||
return $this->oneof_decl;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setFullName($full_name)
|
|
||||||
{
|
|
||||||
$this->full_name = $full_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getFullName()
|
|
||||||
{
|
|
||||||
return $this->full_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addField($field)
|
|
||||||
{
|
|
||||||
$this->field[$field->getNumber()] = $field;
|
|
||||||
$this->json_to_field[$field->getJsonName()] = $field;
|
|
||||||
$this->name_to_field[$field->getName()] = $field;
|
|
||||||
$this->index_to_field[] = $field;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getField()
|
|
||||||
{
|
|
||||||
return $this->field;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addNestedType($desc)
|
|
||||||
{
|
|
||||||
$this->nested_type[] = $desc;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getNestedType()
|
|
||||||
{
|
|
||||||
return $this->nested_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addEnumType($desc)
|
|
||||||
{
|
|
||||||
$this->enum_type[] = $desc;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getEnumType()
|
|
||||||
{
|
|
||||||
return $this->enum_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getFieldByNumber($number)
|
|
||||||
{
|
|
||||||
if (!isset($this->field[$number])) {
|
|
||||||
return NULL;
|
|
||||||
} else {
|
|
||||||
return $this->field[$number];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getFieldByJsonName($json_name)
|
|
||||||
{
|
|
||||||
if (!isset($this->json_to_field[$json_name])) {
|
|
||||||
return NULL;
|
|
||||||
} else {
|
|
||||||
return $this->json_to_field[$json_name];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getFieldByName($name)
|
|
||||||
{
|
|
||||||
if (!isset($this->name_to_field[$name])) {
|
|
||||||
return NULL;
|
|
||||||
} else {
|
|
||||||
return $this->name_to_field[$name];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getFieldByIndex($index)
|
|
||||||
{
|
|
||||||
if (count($this->index_to_field) <= $index) {
|
|
||||||
return NULL;
|
|
||||||
} else {
|
|
||||||
return $this->index_to_field[$index];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setClass($klass)
|
|
||||||
{
|
|
||||||
$this->klass = $klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getClass()
|
|
||||||
{
|
|
||||||
return $this->klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setLegacyClass($klass)
|
|
||||||
{
|
|
||||||
$this->legacy_klass = $klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getLegacyClass()
|
|
||||||
{
|
|
||||||
return $this->legacy_klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setPreviouslyUnreservedClass($klass)
|
|
||||||
{
|
|
||||||
$this->previous_klass = $klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPreviouslyUnreservedClass()
|
|
||||||
{
|
|
||||||
return $this->previous_klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setOptions($options)
|
|
||||||
{
|
|
||||||
$this->options = $options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function buildFromProto($proto, $file_proto, $containing)
|
|
||||||
{
|
|
||||||
$desc = new Descriptor();
|
|
||||||
|
|
||||||
$message_name_without_package = "";
|
|
||||||
$classname = "";
|
|
||||||
$legacy_classname = "";
|
|
||||||
$previous_classname = "";
|
|
||||||
$fullname = "";
|
|
||||||
GPBUtil::getFullClassName(
|
|
||||||
$proto,
|
|
||||||
$containing,
|
|
||||||
$file_proto,
|
|
||||||
$message_name_without_package,
|
|
||||||
$classname,
|
|
||||||
$legacy_classname,
|
|
||||||
$fullname,
|
|
||||||
$previous_classname);
|
|
||||||
$desc->setFullName($fullname);
|
|
||||||
$desc->setClass($classname);
|
|
||||||
$desc->setLegacyClass($legacy_classname);
|
|
||||||
$desc->setPreviouslyUnreservedClass($previous_classname);
|
|
||||||
$desc->setOptions($proto->getOptions());
|
|
||||||
|
|
||||||
foreach ($proto->getField() as $field_proto) {
|
|
||||||
$desc->addField(FieldDescriptor::buildFromProto($field_proto));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle nested types.
|
|
||||||
foreach ($proto->getNestedType() as $nested_proto) {
|
|
||||||
$desc->addNestedType(Descriptor::buildFromProto(
|
|
||||||
$nested_proto, $file_proto, $message_name_without_package));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle nested enum.
|
|
||||||
foreach ($proto->getEnumType() as $enum_proto) {
|
|
||||||
$desc->addEnumType(EnumDescriptor::buildFromProto(
|
|
||||||
$enum_proto, $file_proto, $message_name_without_package));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle oneof fields.
|
|
||||||
$index = 0;
|
|
||||||
foreach ($proto->getOneofDecl() as $oneof_proto) {
|
|
||||||
$desc->addOneofDecl(
|
|
||||||
OneofDescriptor::buildFromProto($oneof_proto, $desc, $index));
|
|
||||||
$index++;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $desc;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,194 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\Descriptor;
|
|
||||||
use Google\Protobuf\Internal\FileDescriptor;
|
|
||||||
use Google\Protobuf\Internal\FileDescriptorSet;
|
|
||||||
use Google\Protobuf\Internal\MessageBuilderContext;
|
|
||||||
use Google\Protobuf\Internal\EnumBuilderContext;
|
|
||||||
|
|
||||||
class DescriptorPool
|
|
||||||
{
|
|
||||||
private static $pool;
|
|
||||||
// Map from message names to sub-maps, which are maps from field numbers to
|
|
||||||
// field descriptors.
|
|
||||||
private $class_to_desc = [];
|
|
||||||
private $class_to_enum_desc = [];
|
|
||||||
private $proto_to_class = [];
|
|
||||||
|
|
||||||
public static function getGeneratedPool()
|
|
||||||
{
|
|
||||||
if (!isset(self::$pool)) {
|
|
||||||
self::$pool = new DescriptorPool();
|
|
||||||
}
|
|
||||||
return self::$pool;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function internalAddGeneratedFile($data, $use_nested = false)
|
|
||||||
{
|
|
||||||
$files = new FileDescriptorSet();
|
|
||||||
$files->mergeFromString($data);
|
|
||||||
|
|
||||||
foreach($files->getFile() as $file_proto) {
|
|
||||||
$file = FileDescriptor::buildFromProto($file_proto);
|
|
||||||
|
|
||||||
foreach ($file->getMessageType() as $desc) {
|
|
||||||
$this->addDescriptor($desc);
|
|
||||||
}
|
|
||||||
unset($desc);
|
|
||||||
|
|
||||||
foreach ($file->getEnumType() as $desc) {
|
|
||||||
$this->addEnumDescriptor($desc);
|
|
||||||
}
|
|
||||||
unset($desc);
|
|
||||||
|
|
||||||
foreach ($file->getMessageType() as $desc) {
|
|
||||||
$this->crossLink($desc);
|
|
||||||
}
|
|
||||||
unset($desc);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addMessage($name, $klass)
|
|
||||||
{
|
|
||||||
return new MessageBuilderContext($name, $klass, $this);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addEnum($name, $klass)
|
|
||||||
{
|
|
||||||
return new EnumBuilderContext($name, $klass, $this);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addDescriptor($descriptor)
|
|
||||||
{
|
|
||||||
$this->proto_to_class[$descriptor->getFullName()] =
|
|
||||||
$descriptor->getClass();
|
|
||||||
$this->class_to_desc[$descriptor->getClass()] = $descriptor;
|
|
||||||
$this->class_to_desc[$descriptor->getLegacyClass()] = $descriptor;
|
|
||||||
$this->class_to_desc[$descriptor->getPreviouslyUnreservedClass()] = $descriptor;
|
|
||||||
foreach ($descriptor->getNestedType() as $nested_type) {
|
|
||||||
$this->addDescriptor($nested_type);
|
|
||||||
}
|
|
||||||
foreach ($descriptor->getEnumType() as $enum_type) {
|
|
||||||
$this->addEnumDescriptor($enum_type);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addEnumDescriptor($descriptor)
|
|
||||||
{
|
|
||||||
$this->proto_to_class[$descriptor->getFullName()] =
|
|
||||||
$descriptor->getClass();
|
|
||||||
$this->class_to_enum_desc[$descriptor->getClass()] = $descriptor;
|
|
||||||
$this->class_to_enum_desc[$descriptor->getLegacyClass()] = $descriptor;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getDescriptorByClassName($klass)
|
|
||||||
{
|
|
||||||
if (isset($this->class_to_desc[$klass])) {
|
|
||||||
return $this->class_to_desc[$klass];
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getEnumDescriptorByClassName($klass)
|
|
||||||
{
|
|
||||||
if (isset($this->class_to_enum_desc[$klass])) {
|
|
||||||
return $this->class_to_enum_desc[$klass];
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getDescriptorByProtoName($proto)
|
|
||||||
{
|
|
||||||
if (isset($this->proto_to_class[$proto])) {
|
|
||||||
$klass = $this->proto_to_class[$proto];
|
|
||||||
return $this->class_to_desc[$klass];
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getEnumDescriptorByProtoName($proto)
|
|
||||||
{
|
|
||||||
$klass = $this->proto_to_class[$proto];
|
|
||||||
return $this->class_to_enum_desc[$klass];
|
|
||||||
}
|
|
||||||
|
|
||||||
private function crossLink(Descriptor $desc)
|
|
||||||
{
|
|
||||||
foreach ($desc->getField() as $field) {
|
|
||||||
switch ($field->getType()) {
|
|
||||||
case GPBType::MESSAGE:
|
|
||||||
$proto = $field->getMessageType();
|
|
||||||
if ($proto[0] == '.') {
|
|
||||||
$proto = substr($proto, 1);
|
|
||||||
}
|
|
||||||
$subdesc = $this->getDescriptorByProtoName($proto);
|
|
||||||
if (is_null($subdesc)) {
|
|
||||||
trigger_error(
|
|
||||||
'proto not added: ' . $proto
|
|
||||||
. " for " . $desc->getFullName(), E_USER_ERROR);
|
|
||||||
}
|
|
||||||
$field->setMessageType($subdesc);
|
|
||||||
break;
|
|
||||||
case GPBType::ENUM:
|
|
||||||
$proto = $field->getEnumType();
|
|
||||||
if ($proto[0] == '.') {
|
|
||||||
$proto = substr($proto, 1);
|
|
||||||
}
|
|
||||||
$field->setEnumType(
|
|
||||||
$this->getEnumDescriptorByProtoName($proto));
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
unset($field);
|
|
||||||
|
|
||||||
foreach ($desc->getNestedType() as $nested_type) {
|
|
||||||
$this->crossLink($nested_type);
|
|
||||||
}
|
|
||||||
unset($nested_type);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function finish()
|
|
||||||
{
|
|
||||||
foreach ($this->class_to_desc as $klass => $desc) {
|
|
||||||
$this->crossLink($desc);
|
|
||||||
}
|
|
||||||
unset($desc);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,336 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Describes a message type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.DescriptorProto</code>
|
|
||||||
*/
|
|
||||||
class DescriptorProto extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto field = 2;</code>
|
|
||||||
*/
|
|
||||||
private $field;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto extension = 6;</code>
|
|
||||||
*/
|
|
||||||
private $extension;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto nested_type = 3;</code>
|
|
||||||
*/
|
|
||||||
private $nested_type;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto enum_type = 4;</code>
|
|
||||||
*/
|
|
||||||
private $enum_type;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;</code>
|
|
||||||
*/
|
|
||||||
private $extension_range;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;</code>
|
|
||||||
*/
|
|
||||||
private $oneof_decl;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.MessageOptions options = 7;</code>
|
|
||||||
*/
|
|
||||||
protected $options = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;</code>
|
|
||||||
*/
|
|
||||||
private $reserved_range;
|
|
||||||
/**
|
|
||||||
* Reserved field names, which may not be used by fields in the same message.
|
|
||||||
* A given name may only be reserved once.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string reserved_name = 10;</code>
|
|
||||||
*/
|
|
||||||
private $reserved_name;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* @type array<\Google\Protobuf\Internal\FieldDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $field
|
|
||||||
* @type array<\Google\Protobuf\Internal\FieldDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $extension
|
|
||||||
* @type array<\Google\Protobuf\Internal\DescriptorProto>|\Google\Protobuf\Internal\RepeatedField $nested_type
|
|
||||||
* @type array<\Google\Protobuf\Internal\EnumDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $enum_type
|
|
||||||
* @type array<\Google\Protobuf\Internal\DescriptorProto\ExtensionRange>|\Google\Protobuf\Internal\RepeatedField $extension_range
|
|
||||||
* @type array<\Google\Protobuf\Internal\OneofDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $oneof_decl
|
|
||||||
* @type \Google\Protobuf\Internal\MessageOptions $options
|
|
||||||
* @type array<\Google\Protobuf\Internal\DescriptorProto\ReservedRange>|\Google\Protobuf\Internal\RepeatedField $reserved_range
|
|
||||||
* @type array<string>|\Google\Protobuf\Internal\RepeatedField $reserved_name
|
|
||||||
* Reserved field names, which may not be used by fields in the same message.
|
|
||||||
* A given name may only be reserved once.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return isset($this->name) ? $this->name : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasName()
|
|
||||||
{
|
|
||||||
return isset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearName()
|
|
||||||
{
|
|
||||||
unset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto field = 2;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getField()
|
|
||||||
{
|
|
||||||
return $this->field;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto field = 2;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\FieldDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setField($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\FieldDescriptorProto::class);
|
|
||||||
$this->field = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto extension = 6;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getExtension()
|
|
||||||
{
|
|
||||||
return $this->extension;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto extension = 6;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\FieldDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setExtension($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\FieldDescriptorProto::class);
|
|
||||||
$this->extension = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto nested_type = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getNestedType()
|
|
||||||
{
|
|
||||||
return $this->nested_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto nested_type = 3;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\DescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setNestedType($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\DescriptorProto::class);
|
|
||||||
$this->nested_type = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto enum_type = 4;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getEnumType()
|
|
||||||
{
|
|
||||||
return $this->enum_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto enum_type = 4;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\EnumDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setEnumType($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\EnumDescriptorProto::class);
|
|
||||||
$this->enum_type = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getExtensionRange()
|
|
||||||
{
|
|
||||||
return $this->extension_range;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\DescriptorProto\ExtensionRange>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setExtensionRange($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\DescriptorProto\ExtensionRange::class);
|
|
||||||
$this->extension_range = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getOneofDecl()
|
|
||||||
{
|
|
||||||
return $this->oneof_decl;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\OneofDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOneofDecl($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\OneofDescriptorProto::class);
|
|
||||||
$this->oneof_decl = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.MessageOptions options = 7;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\MessageOptions|null
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasOptions()
|
|
||||||
{
|
|
||||||
return isset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearOptions()
|
|
||||||
{
|
|
||||||
unset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.MessageOptions options = 7;</code>
|
|
||||||
* @param \Google\Protobuf\Internal\MessageOptions $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\Internal\MessageOptions::class);
|
|
||||||
$this->options = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getReservedRange()
|
|
||||||
{
|
|
||||||
return $this->reserved_range;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\DescriptorProto\ReservedRange>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setReservedRange($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\DescriptorProto\ReservedRange::class);
|
|
||||||
$this->reserved_range = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reserved field names, which may not be used by fields in the same message.
|
|
||||||
* A given name may only be reserved once.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string reserved_name = 10;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getReservedName()
|
|
||||||
{
|
|
||||||
return $this->reserved_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reserved field names, which may not be used by fields in the same message.
|
|
||||||
* A given name may only be reserved once.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string reserved_name = 10;</code>
|
|
||||||
* @param array<string>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setReservedName($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
|
|
||||||
$this->reserved_name = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,161 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\DescriptorProto;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf message <code>google.protobuf.DescriptorProto.ExtensionRange</code>
|
|
||||||
*/
|
|
||||||
class ExtensionRange extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $start = null;
|
|
||||||
/**
|
|
||||||
* Exclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $end = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.ExtensionRangeOptions options = 3;</code>
|
|
||||||
*/
|
|
||||||
protected $options = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int $start
|
|
||||||
* Inclusive.
|
|
||||||
* @type int $end
|
|
||||||
* Exclusive.
|
|
||||||
* @type \Google\Protobuf\Internal\ExtensionRangeOptions $options
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getStart()
|
|
||||||
{
|
|
||||||
return isset($this->start) ? $this->start : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasStart()
|
|
||||||
{
|
|
||||||
return isset($this->start);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearStart()
|
|
||||||
{
|
|
||||||
unset($this->start);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setStart($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->start = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Exclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getEnd()
|
|
||||||
{
|
|
||||||
return isset($this->end) ? $this->end : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasEnd()
|
|
||||||
{
|
|
||||||
return isset($this->end);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearEnd()
|
|
||||||
{
|
|
||||||
unset($this->end);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Exclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setEnd($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->end = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.ExtensionRangeOptions options = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\ExtensionRangeOptions|null
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasOptions()
|
|
||||||
{
|
|
||||||
return isset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearOptions()
|
|
||||||
{
|
|
||||||
unset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.ExtensionRangeOptions options = 3;</code>
|
|
||||||
* @param \Google\Protobuf\Internal\ExtensionRangeOptions $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\Internal\ExtensionRangeOptions::class);
|
|
||||||
$this->options = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(ExtensionRange::class, \Google\Protobuf\Internal\DescriptorProto_ExtensionRange::class);
|
|
||||||
|
|
||||||
@ -1,128 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\DescriptorProto;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Range of reserved tag numbers. Reserved tag numbers may not be used by
|
|
||||||
* fields or extension ranges in the same message. Reserved ranges may
|
|
||||||
* not overlap.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.DescriptorProto.ReservedRange</code>
|
|
||||||
*/
|
|
||||||
class ReservedRange extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $start = null;
|
|
||||||
/**
|
|
||||||
* Exclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $end = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int $start
|
|
||||||
* Inclusive.
|
|
||||||
* @type int $end
|
|
||||||
* Exclusive.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getStart()
|
|
||||||
{
|
|
||||||
return isset($this->start) ? $this->start : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasStart()
|
|
||||||
{
|
|
||||||
return isset($this->start);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearStart()
|
|
||||||
{
|
|
||||||
unset($this->start);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setStart($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->start = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Exclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getEnd()
|
|
||||||
{
|
|
||||||
return isset($this->end) ? $this->end : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasEnd()
|
|
||||||
{
|
|
||||||
return isset($this->end);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearEnd()
|
|
||||||
{
|
|
||||||
unset($this->end);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Exclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setEnd($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->end = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(ReservedRange::class, \Google\Protobuf\Internal\DescriptorProto_ReservedRange::class);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\DescriptorProto\ExtensionRange instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class DescriptorProto_ExtensionRange {}
|
|
||||||
}
|
|
||||||
class_exists(DescriptorProto\ExtensionRange::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\DescriptorProto_ExtensionRange is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\DescriptorProto\ExtensionRange instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\DescriptorProto\ReservedRange instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class DescriptorProto_ReservedRange {}
|
|
||||||
}
|
|
||||||
class_exists(DescriptorProto\ReservedRange::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\DescriptorProto_ReservedRange is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\DescriptorProto\ReservedRange instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,63 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\EnumDescriptor;
|
|
||||||
use Google\Protobuf\EnumValueDescriptor;
|
|
||||||
|
|
||||||
class EnumBuilderContext
|
|
||||||
{
|
|
||||||
|
|
||||||
private $descriptor;
|
|
||||||
private $pool;
|
|
||||||
|
|
||||||
public function __construct($full_name, $klass, $pool)
|
|
||||||
{
|
|
||||||
$this->descriptor = new EnumDescriptor();
|
|
||||||
$this->descriptor->setFullName($full_name);
|
|
||||||
$this->descriptor->setClass($klass);
|
|
||||||
$this->pool = $pool;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function value($name, $number)
|
|
||||||
{
|
|
||||||
$value = new EnumValueDescriptor($name, $number);
|
|
||||||
$this->descriptor->addValue($number, $value);
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function finalizeToPool()
|
|
||||||
{
|
|
||||||
$this->pool->addEnumDescriptor($this->descriptor);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,116 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\EnumValueDescriptor;
|
|
||||||
|
|
||||||
class EnumDescriptor
|
|
||||||
{
|
|
||||||
use HasPublicDescriptorTrait;
|
|
||||||
|
|
||||||
private $klass;
|
|
||||||
private $legacy_klass;
|
|
||||||
private $full_name;
|
|
||||||
private $value;
|
|
||||||
private $name_to_value;
|
|
||||||
private $value_descriptor = [];
|
|
||||||
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->public_desc = new \Google\Protobuf\EnumDescriptor($this);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setFullName($full_name)
|
|
||||||
{
|
|
||||||
$this->full_name = $full_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getFullName()
|
|
||||||
{
|
|
||||||
return $this->full_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addValue($number, $value)
|
|
||||||
{
|
|
||||||
$this->value[$number] = $value;
|
|
||||||
$this->name_to_value[$value->getName()] = $value;
|
|
||||||
$this->value_descriptor[] = new EnumValueDescriptor($value->getName(), $number);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getValueByNumber($number)
|
|
||||||
{
|
|
||||||
if (isset($this->value[$number])) {
|
|
||||||
return $this->value[$number];
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getValueByName($name)
|
|
||||||
{
|
|
||||||
if (isset($this->name_to_value[$name])) {
|
|
||||||
return $this->name_to_value[$name];
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getValueDescriptorByIndex($index)
|
|
||||||
{
|
|
||||||
if (isset($this->value_descriptor[$index])) {
|
|
||||||
return $this->value_descriptor[$index];
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getValueCount()
|
|
||||||
{
|
|
||||||
return count($this->value);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setClass($klass)
|
|
||||||
{
|
|
||||||
$this->klass = $klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getClass()
|
|
||||||
{
|
|
||||||
return $this->klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setLegacyClass($klass)
|
|
||||||
{
|
|
||||||
$this->legacy_klass = $klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getLegacyClass()
|
|
||||||
{
|
|
||||||
return $this->legacy_klass;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function buildFromProto($proto, $file_proto, $containing)
|
|
||||||
{
|
|
||||||
$desc = new EnumDescriptor();
|
|
||||||
|
|
||||||
$enum_name_without_package = "";
|
|
||||||
$classname = "";
|
|
||||||
$legacy_classname = "";
|
|
||||||
$fullname = "";
|
|
||||||
GPBUtil::getFullClassName(
|
|
||||||
$proto,
|
|
||||||
$containing,
|
|
||||||
$file_proto,
|
|
||||||
$enum_name_without_package,
|
|
||||||
$classname,
|
|
||||||
$legacy_classname,
|
|
||||||
$fullname,
|
|
||||||
$unused_previous_classname);
|
|
||||||
$desc->setFullName($fullname);
|
|
||||||
$desc->setClass($classname);
|
|
||||||
$desc->setLegacyClass($legacy_classname);
|
|
||||||
$values = $proto->getValue();
|
|
||||||
foreach ($values as $value) {
|
|
||||||
$desc->addValue($value->getNumber(), $value);
|
|
||||||
}
|
|
||||||
|
|
||||||
return $desc;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,216 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Describes an enum type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.EnumDescriptorProto</code>
|
|
||||||
*/
|
|
||||||
class EnumDescriptorProto extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumValueDescriptorProto value = 2;</code>
|
|
||||||
*/
|
|
||||||
private $value;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.EnumOptions options = 3;</code>
|
|
||||||
*/
|
|
||||||
protected $options = null;
|
|
||||||
/**
|
|
||||||
* Range of reserved numeric values. Reserved numeric values may not be used
|
|
||||||
* by enum values in the same enum declaration. Reserved ranges may not
|
|
||||||
* overlap.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto.EnumReservedRange reserved_range = 4;</code>
|
|
||||||
*/
|
|
||||||
private $reserved_range;
|
|
||||||
/**
|
|
||||||
* Reserved enum value names, which may not be reused. A given name may only
|
|
||||||
* be reserved once.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string reserved_name = 5;</code>
|
|
||||||
*/
|
|
||||||
private $reserved_name;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* @type array<\Google\Protobuf\Internal\EnumValueDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $value
|
|
||||||
* @type \Google\Protobuf\Internal\EnumOptions $options
|
|
||||||
* @type array<\Google\Protobuf\Internal\EnumDescriptorProto\EnumReservedRange>|\Google\Protobuf\Internal\RepeatedField $reserved_range
|
|
||||||
* Range of reserved numeric values. Reserved numeric values may not be used
|
|
||||||
* by enum values in the same enum declaration. Reserved ranges may not
|
|
||||||
* overlap.
|
|
||||||
* @type array<string>|\Google\Protobuf\Internal\RepeatedField $reserved_name
|
|
||||||
* Reserved enum value names, which may not be reused. A given name may only
|
|
||||||
* be reserved once.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return isset($this->name) ? $this->name : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasName()
|
|
||||||
{
|
|
||||||
return isset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearName()
|
|
||||||
{
|
|
||||||
unset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumValueDescriptorProto value = 2;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getValue()
|
|
||||||
{
|
|
||||||
return $this->value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumValueDescriptorProto value = 2;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\EnumValueDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setValue($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\EnumValueDescriptorProto::class);
|
|
||||||
$this->value = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.EnumOptions options = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\EnumOptions|null
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasOptions()
|
|
||||||
{
|
|
||||||
return isset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearOptions()
|
|
||||||
{
|
|
||||||
unset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.EnumOptions options = 3;</code>
|
|
||||||
* @param \Google\Protobuf\Internal\EnumOptions $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\Internal\EnumOptions::class);
|
|
||||||
$this->options = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Range of reserved numeric values. Reserved numeric values may not be used
|
|
||||||
* by enum values in the same enum declaration. Reserved ranges may not
|
|
||||||
* overlap.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto.EnumReservedRange reserved_range = 4;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getReservedRange()
|
|
||||||
{
|
|
||||||
return $this->reserved_range;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Range of reserved numeric values. Reserved numeric values may not be used
|
|
||||||
* by enum values in the same enum declaration. Reserved ranges may not
|
|
||||||
* overlap.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto.EnumReservedRange reserved_range = 4;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\EnumDescriptorProto\EnumReservedRange>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setReservedRange($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\EnumDescriptorProto\EnumReservedRange::class);
|
|
||||||
$this->reserved_range = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reserved enum value names, which may not be reused. A given name may only
|
|
||||||
* be reserved once.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string reserved_name = 5;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getReservedName()
|
|
||||||
{
|
|
||||||
return $this->reserved_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reserved enum value names, which may not be reused. A given name may only
|
|
||||||
* be reserved once.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string reserved_name = 5;</code>
|
|
||||||
* @param array<string>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setReservedName($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
|
|
||||||
$this->reserved_name = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,130 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\EnumDescriptorProto;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Range of reserved numeric values. Reserved values may not be used by
|
|
||||||
* entries in the same enum. Reserved ranges may not overlap.
|
|
||||||
* Note that this is distinct from DescriptorProto.ReservedRange in that it
|
|
||||||
* is inclusive such that it can appropriately represent the entire int32
|
|
||||||
* domain.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.EnumDescriptorProto.EnumReservedRange</code>
|
|
||||||
*/
|
|
||||||
class EnumReservedRange extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $start = null;
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $end = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int $start
|
|
||||||
* Inclusive.
|
|
||||||
* @type int $end
|
|
||||||
* Inclusive.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getStart()
|
|
||||||
{
|
|
||||||
return isset($this->start) ? $this->start : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasStart()
|
|
||||||
{
|
|
||||||
return isset($this->start);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearStart()
|
|
||||||
{
|
|
||||||
unset($this->start);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 start = 1;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setStart($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->start = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getEnd()
|
|
||||||
{
|
|
||||||
return isset($this->end) ? $this->end : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasEnd()
|
|
||||||
{
|
|
||||||
return isset($this->end);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearEnd()
|
|
||||||
{
|
|
||||||
unset($this->end);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inclusive.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 end = 2;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setEnd($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->end = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(EnumReservedRange::class, \Google\Protobuf\Internal\EnumDescriptorProto_EnumReservedRange::class);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\EnumDescriptorProto\EnumReservedRange instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class EnumDescriptorProto_EnumReservedRange {}
|
|
||||||
}
|
|
||||||
class_exists(EnumDescriptorProto\EnumReservedRange::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\EnumDescriptorProto_EnumReservedRange is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\EnumDescriptorProto\EnumReservedRange instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,242 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf message <code>google.protobuf.EnumOptions</code>
|
|
||||||
*/
|
|
||||||
class EnumOptions extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Set this option to true to allow mapping different tag names to the same
|
|
||||||
* value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool allow_alias = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $allow_alias = null;
|
|
||||||
/**
|
|
||||||
* Is this enum deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating enums.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 3 [default = false];</code>
|
|
||||||
*/
|
|
||||||
protected $deprecated = null;
|
|
||||||
/**
|
|
||||||
* Enable the legacy handling of JSON field name conflicts. This lowercases
|
|
||||||
* and strips underscored from the fields before comparison in proto3 only.
|
|
||||||
* The new behavior takes `json_name` into account and applies to proto2 as
|
|
||||||
* well.
|
|
||||||
* TODO(b/261750190) Remove this legacy behavior once downstream teams have
|
|
||||||
* had time to migrate.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated_legacy_json_field_conflicts = 6 [deprecated = true];</code>
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
protected $deprecated_legacy_json_field_conflicts = null;
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
*/
|
|
||||||
private $uninterpreted_option;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type bool $allow_alias
|
|
||||||
* Set this option to true to allow mapping different tag names to the same
|
|
||||||
* value.
|
|
||||||
* @type bool $deprecated
|
|
||||||
* Is this enum deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating enums.
|
|
||||||
* @type bool $deprecated_legacy_json_field_conflicts
|
|
||||||
* Enable the legacy handling of JSON field name conflicts. This lowercases
|
|
||||||
* and strips underscored from the fields before comparison in proto3 only.
|
|
||||||
* The new behavior takes `json_name` into account and applies to proto2 as
|
|
||||||
* well.
|
|
||||||
* TODO(b/261750190) Remove this legacy behavior once downstream teams have
|
|
||||||
* had time to migrate.
|
|
||||||
* @type array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $uninterpreted_option
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Set this option to true to allow mapping different tag names to the same
|
|
||||||
* value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool allow_alias = 2;</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getAllowAlias()
|
|
||||||
{
|
|
||||||
return isset($this->allow_alias) ? $this->allow_alias : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasAllowAlias()
|
|
||||||
{
|
|
||||||
return isset($this->allow_alias);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearAllowAlias()
|
|
||||||
{
|
|
||||||
unset($this->allow_alias);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Set this option to true to allow mapping different tag names to the same
|
|
||||||
* value.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool allow_alias = 2;</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setAllowAlias($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->allow_alias = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Is this enum deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating enums.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 3 [default = false];</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getDeprecated()
|
|
||||||
{
|
|
||||||
return isset($this->deprecated) ? $this->deprecated : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasDeprecated()
|
|
||||||
{
|
|
||||||
return isset($this->deprecated);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearDeprecated()
|
|
||||||
{
|
|
||||||
unset($this->deprecated);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Is this enum deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating enums.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 3 [default = false];</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setDeprecated($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->deprecated = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enable the legacy handling of JSON field name conflicts. This lowercases
|
|
||||||
* and strips underscored from the fields before comparison in proto3 only.
|
|
||||||
* The new behavior takes `json_name` into account and applies to proto2 as
|
|
||||||
* well.
|
|
||||||
* TODO(b/261750190) Remove this legacy behavior once downstream teams have
|
|
||||||
* had time to migrate.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated_legacy_json_field_conflicts = 6 [deprecated = true];</code>
|
|
||||||
* @return bool
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
public function getDeprecatedLegacyJsonFieldConflicts()
|
|
||||||
{
|
|
||||||
@trigger_error('deprecated_legacy_json_field_conflicts is deprecated.', E_USER_DEPRECATED);
|
|
||||||
return isset($this->deprecated_legacy_json_field_conflicts) ? $this->deprecated_legacy_json_field_conflicts : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasDeprecatedLegacyJsonFieldConflicts()
|
|
||||||
{
|
|
||||||
@trigger_error('deprecated_legacy_json_field_conflicts is deprecated.', E_USER_DEPRECATED);
|
|
||||||
return isset($this->deprecated_legacy_json_field_conflicts);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearDeprecatedLegacyJsonFieldConflicts()
|
|
||||||
{
|
|
||||||
@trigger_error('deprecated_legacy_json_field_conflicts is deprecated.', E_USER_DEPRECATED);
|
|
||||||
unset($this->deprecated_legacy_json_field_conflicts);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Enable the legacy handling of JSON field name conflicts. This lowercases
|
|
||||||
* and strips underscored from the fields before comparison in proto3 only.
|
|
||||||
* The new behavior takes `json_name` into account and applies to proto2 as
|
|
||||||
* well.
|
|
||||||
* TODO(b/261750190) Remove this legacy behavior once downstream teams have
|
|
||||||
* had time to migrate.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated_legacy_json_field_conflicts = 6 [deprecated = true];</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
public function setDeprecatedLegacyJsonFieldConflicts($var)
|
|
||||||
{
|
|
||||||
@trigger_error('deprecated_legacy_json_field_conflicts is deprecated.', E_USER_DEPRECATED);
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->deprecated_legacy_json_field_conflicts = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getUninterpretedOption()
|
|
||||||
{
|
|
||||||
return $this->uninterpreted_option;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setUninterpretedOption($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\UninterpretedOption::class);
|
|
||||||
$this->uninterpreted_option = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,146 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Describes a value within an enum.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.EnumValueDescriptorProto</code>
|
|
||||||
*/
|
|
||||||
class EnumValueDescriptorProto extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional int32 number = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $number = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.EnumValueOptions options = 3;</code>
|
|
||||||
*/
|
|
||||||
protected $options = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* @type int $number
|
|
||||||
* @type \Google\Protobuf\Internal\EnumValueOptions $options
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return isset($this->name) ? $this->name : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasName()
|
|
||||||
{
|
|
||||||
return isset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearName()
|
|
||||||
{
|
|
||||||
unset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional int32 number = 2;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getNumber()
|
|
||||||
{
|
|
||||||
return isset($this->number) ? $this->number : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasNumber()
|
|
||||||
{
|
|
||||||
return isset($this->number);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearNumber()
|
|
||||||
{
|
|
||||||
unset($this->number);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional int32 number = 2;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setNumber($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->number = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.EnumValueOptions options = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\EnumValueOptions|null
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasOptions()
|
|
||||||
{
|
|
||||||
return isset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearOptions()
|
|
||||||
{
|
|
||||||
unset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.EnumValueOptions options = 3;</code>
|
|
||||||
* @param \Google\Protobuf\Internal\EnumValueOptions $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\Internal\EnumValueOptions::class);
|
|
||||||
$this->options = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,123 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf message <code>google.protobuf.EnumValueOptions</code>
|
|
||||||
*/
|
|
||||||
class EnumValueOptions extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Is this enum value deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum value, or it will be completely ignored; in the very least,
|
|
||||||
* this is a formalization for deprecating enum values.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 1 [default = false];</code>
|
|
||||||
*/
|
|
||||||
protected $deprecated = null;
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
*/
|
|
||||||
private $uninterpreted_option;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type bool $deprecated
|
|
||||||
* Is this enum value deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum value, or it will be completely ignored; in the very least,
|
|
||||||
* this is a formalization for deprecating enum values.
|
|
||||||
* @type array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $uninterpreted_option
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Is this enum value deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum value, or it will be completely ignored; in the very least,
|
|
||||||
* this is a formalization for deprecating enum values.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 1 [default = false];</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getDeprecated()
|
|
||||||
{
|
|
||||||
return isset($this->deprecated) ? $this->deprecated : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasDeprecated()
|
|
||||||
{
|
|
||||||
return isset($this->deprecated);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearDeprecated()
|
|
||||||
{
|
|
||||||
unset($this->deprecated);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Is this enum value deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for the enum value, or it will be completely ignored; in the very least,
|
|
||||||
* this is a formalization for deprecating enum values.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 1 [default = false];</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setDeprecated($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->deprecated = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getUninterpretedOption()
|
|
||||||
{
|
|
||||||
return $this->uninterpreted_option;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setUninterpretedOption($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\UninterpretedOption::class);
|
|
||||||
$this->uninterpreted_option = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,67 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf message <code>google.protobuf.ExtensionRangeOptions</code>
|
|
||||||
*/
|
|
||||||
class ExtensionRangeOptions extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
*/
|
|
||||||
private $uninterpreted_option;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $uninterpreted_option
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getUninterpretedOption()
|
|
||||||
{
|
|
||||||
return $this->uninterpreted_option;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setUninterpretedOption($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\UninterpretedOption::class);
|
|
||||||
$this->uninterpreted_option = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,326 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
class FieldDescriptor
|
|
||||||
{
|
|
||||||
use HasPublicDescriptorTrait;
|
|
||||||
|
|
||||||
private $name;
|
|
||||||
private $json_name;
|
|
||||||
private $setter;
|
|
||||||
private $getter;
|
|
||||||
private $number;
|
|
||||||
private $label;
|
|
||||||
private $type;
|
|
||||||
private $message_type;
|
|
||||||
private $enum_type;
|
|
||||||
private $packed;
|
|
||||||
private $oneof_index = -1;
|
|
||||||
private $proto3_optional;
|
|
||||||
|
|
||||||
/** @var OneofDescriptor $containing_oneof */
|
|
||||||
private $containing_oneof;
|
|
||||||
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->public_desc = new \Google\Protobuf\FieldDescriptor($this);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setOneofIndex($index)
|
|
||||||
{
|
|
||||||
$this->oneof_index = $index;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getOneofIndex()
|
|
||||||
{
|
|
||||||
return $this->oneof_index;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setName($name)
|
|
||||||
{
|
|
||||||
$this->name = $name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return $this->name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setJsonName($json_name)
|
|
||||||
{
|
|
||||||
$this->json_name = $json_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getJsonName()
|
|
||||||
{
|
|
||||||
return $this->json_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setSetter($setter)
|
|
||||||
{
|
|
||||||
$this->setter = $setter;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getSetter()
|
|
||||||
{
|
|
||||||
return $this->setter;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setGetter($getter)
|
|
||||||
{
|
|
||||||
$this->getter = $getter;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getGetter()
|
|
||||||
{
|
|
||||||
return $this->getter;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setNumber($number)
|
|
||||||
{
|
|
||||||
$this->number = $number;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getNumber()
|
|
||||||
{
|
|
||||||
return $this->number;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setLabel($label)
|
|
||||||
{
|
|
||||||
$this->label = $label;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getLabel()
|
|
||||||
{
|
|
||||||
return $this->label;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function isRepeated()
|
|
||||||
{
|
|
||||||
return $this->label === GPBLabel::REPEATED;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setType($type)
|
|
||||||
{
|
|
||||||
$this->type = $type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getType()
|
|
||||||
{
|
|
||||||
return $this->type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setMessageType($message_type)
|
|
||||||
{
|
|
||||||
$this->message_type = $message_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getMessageType()
|
|
||||||
{
|
|
||||||
return $this->message_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setEnumType($enum_type)
|
|
||||||
{
|
|
||||||
$this->enum_type = $enum_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getEnumType()
|
|
||||||
{
|
|
||||||
return $this->enum_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setPacked($packed)
|
|
||||||
{
|
|
||||||
$this->packed = $packed;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPacked()
|
|
||||||
{
|
|
||||||
return $this->packed;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getProto3Optional()
|
|
||||||
{
|
|
||||||
return $this->proto3_optional;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setProto3Optional($proto3_optional)
|
|
||||||
{
|
|
||||||
$this->proto3_optional = $proto3_optional;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getContainingOneof()
|
|
||||||
{
|
|
||||||
return $this->containing_oneof;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setContainingOneof($containing_oneof)
|
|
||||||
{
|
|
||||||
$this->containing_oneof = $containing_oneof;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getRealContainingOneof()
|
|
||||||
{
|
|
||||||
return !is_null($this->containing_oneof) && !$this->containing_oneof->isSynthetic()
|
|
||||||
? $this->containing_oneof : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function isPackable()
|
|
||||||
{
|
|
||||||
return $this->isRepeated() && self::isTypePackable($this->type);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function isMap()
|
|
||||||
{
|
|
||||||
return $this->getType() == GPBType::MESSAGE &&
|
|
||||||
!is_null($this->getMessageType()->getOptions()) &&
|
|
||||||
$this->getMessageType()->getOptions()->getMapEntry();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function isTimestamp()
|
|
||||||
{
|
|
||||||
return $this->getType() == GPBType::MESSAGE &&
|
|
||||||
$this->getMessageType()->getClass() === "Google\Protobuf\Timestamp";
|
|
||||||
}
|
|
||||||
|
|
||||||
public function isWrapperType()
|
|
||||||
{
|
|
||||||
if ($this->getType() == GPBType::MESSAGE) {
|
|
||||||
$class = $this->getMessageType()->getClass();
|
|
||||||
return in_array($class, [
|
|
||||||
"Google\Protobuf\DoubleValue",
|
|
||||||
"Google\Protobuf\FloatValue",
|
|
||||||
"Google\Protobuf\Int64Value",
|
|
||||||
"Google\Protobuf\UInt64Value",
|
|
||||||
"Google\Protobuf\Int32Value",
|
|
||||||
"Google\Protobuf\UInt32Value",
|
|
||||||
"Google\Protobuf\BoolValue",
|
|
||||||
"Google\Protobuf\StringValue",
|
|
||||||
"Google\Protobuf\BytesValue",
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static function isTypePackable($field_type)
|
|
||||||
{
|
|
||||||
return ($field_type !== GPBType::STRING &&
|
|
||||||
$field_type !== GPBType::GROUP &&
|
|
||||||
$field_type !== GPBType::MESSAGE &&
|
|
||||||
$field_type !== GPBType::BYTES);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param FieldDescriptorProto $proto
|
|
||||||
* @return FieldDescriptor
|
|
||||||
*/
|
|
||||||
public static function getFieldDescriptor($proto)
|
|
||||||
{
|
|
||||||
$type_name = null;
|
|
||||||
$type = $proto->getType();
|
|
||||||
switch ($type) {
|
|
||||||
case GPBType::MESSAGE:
|
|
||||||
case GPBType::GROUP:
|
|
||||||
case GPBType::ENUM:
|
|
||||||
$type_name = $proto->getTypeName();
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
$oneof_index = $proto->hasOneofIndex() ? $proto->getOneofIndex() : -1;
|
|
||||||
// TODO: once proto2 is supported, this default should be false
|
|
||||||
// for proto2.
|
|
||||||
if ($proto->getLabel() === GPBLabel::REPEATED &&
|
|
||||||
$proto->getType() !== GPBType::MESSAGE &&
|
|
||||||
$proto->getType() !== GPBType::GROUP &&
|
|
||||||
$proto->getType() !== GPBType::STRING &&
|
|
||||||
$proto->getType() !== GPBType::BYTES) {
|
|
||||||
$packed = true;
|
|
||||||
} else {
|
|
||||||
$packed = false;
|
|
||||||
}
|
|
||||||
$options = $proto->getOptions();
|
|
||||||
if ($options !== null) {
|
|
||||||
$packed = $options->getPacked();
|
|
||||||
}
|
|
||||||
|
|
||||||
$field = new FieldDescriptor();
|
|
||||||
$field->setName($proto->getName());
|
|
||||||
|
|
||||||
if ($proto->hasJsonName()) {
|
|
||||||
$json_name = $proto->getJsonName();
|
|
||||||
} else {
|
|
||||||
$proto_name = $proto->getName();
|
|
||||||
$json_name = implode('', array_map('ucwords', explode('_', $proto_name)));
|
|
||||||
if ($proto_name[0] !== "_" && !ctype_upper($proto_name[0])) {
|
|
||||||
$json_name = lcfirst($json_name);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$field->setJsonName($json_name);
|
|
||||||
|
|
||||||
$camel_name = implode('', array_map('ucwords', explode('_', $proto->getName())));
|
|
||||||
$field->setGetter('get' . $camel_name);
|
|
||||||
$field->setSetter('set' . $camel_name);
|
|
||||||
$field->setType($proto->getType());
|
|
||||||
$field->setNumber($proto->getNumber());
|
|
||||||
$field->setLabel($proto->getLabel());
|
|
||||||
$field->setPacked($packed);
|
|
||||||
$field->setOneofIndex($oneof_index);
|
|
||||||
$field->setProto3Optional($proto->getProto3Optional());
|
|
||||||
|
|
||||||
// At this time, the message/enum type may have not been added to pool.
|
|
||||||
// So we use the type name as place holder and will replace it with the
|
|
||||||
// actual descriptor in cross building.
|
|
||||||
switch ($type) {
|
|
||||||
case GPBType::MESSAGE:
|
|
||||||
$field->setMessageType($type_name);
|
|
||||||
break;
|
|
||||||
case GPBType::ENUM:
|
|
||||||
$field->setEnumType($type_name);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $field;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function buildFromProto($proto)
|
|
||||||
{
|
|
||||||
return FieldDescriptor::getFieldDescriptor($proto);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,611 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Describes a field within a message.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.FieldDescriptorProto</code>
|
|
||||||
*/
|
|
||||||
class FieldDescriptorProto extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional int32 number = 3;</code>
|
|
||||||
*/
|
|
||||||
protected $number = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldDescriptorProto.Label label = 4;</code>
|
|
||||||
*/
|
|
||||||
protected $label = null;
|
|
||||||
/**
|
|
||||||
* If type_name is set, this need not be set. If both this and type_name
|
|
||||||
* are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldDescriptorProto.Type type = 5;</code>
|
|
||||||
*/
|
|
||||||
protected $type = null;
|
|
||||||
/**
|
|
||||||
* For message and enum types, this is the name of the type. If the name
|
|
||||||
* starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
|
|
||||||
* rules are used to find the type (i.e. first the nested types within this
|
|
||||||
* message are searched, then within the parent, on up to the root
|
|
||||||
* namespace).
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string type_name = 6;</code>
|
|
||||||
*/
|
|
||||||
protected $type_name = null;
|
|
||||||
/**
|
|
||||||
* For extensions, this is the name of the type being extended. It is
|
|
||||||
* resolved in the same manner as type_name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string extendee = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $extendee = null;
|
|
||||||
/**
|
|
||||||
* For numeric types, contains the original text representation of the value.
|
|
||||||
* For booleans, "true" or "false".
|
|
||||||
* For strings, contains the default text contents (not escaped in any way).
|
|
||||||
* For bytes, contains the C escaped value. All bytes >= 128 are escaped.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string default_value = 7;</code>
|
|
||||||
*/
|
|
||||||
protected $default_value = null;
|
|
||||||
/**
|
|
||||||
* If set, gives the index of a oneof in the containing type's oneof_decl
|
|
||||||
* list. This field is a member of that oneof.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 oneof_index = 9;</code>
|
|
||||||
*/
|
|
||||||
protected $oneof_index = null;
|
|
||||||
/**
|
|
||||||
* JSON name of this field. The value is set by protocol compiler. If the
|
|
||||||
* user has set a "json_name" option on this field, that option's value
|
|
||||||
* will be used. Otherwise, it's deduced from the field's name by converting
|
|
||||||
* it to camelCase.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string json_name = 10;</code>
|
|
||||||
*/
|
|
||||||
protected $json_name = null;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions options = 8;</code>
|
|
||||||
*/
|
|
||||||
protected $options = null;
|
|
||||||
/**
|
|
||||||
* If true, this is a proto3 "optional". When a proto3 field is optional, it
|
|
||||||
* tracks presence regardless of field type.
|
|
||||||
* When proto3_optional is true, this field must be belong to a oneof to
|
|
||||||
* signal to old proto3 clients that presence is tracked for this field. This
|
|
||||||
* oneof is known as a "synthetic" oneof, and this field must be its sole
|
|
||||||
* member (each proto3 optional field gets its own synthetic oneof). Synthetic
|
|
||||||
* oneofs exist in the descriptor only, and do not generate any API. Synthetic
|
|
||||||
* oneofs must be ordered after all "real" oneofs.
|
|
||||||
* For message fields, proto3_optional doesn't create any semantic change,
|
|
||||||
* since non-repeated message fields always track presence. However it still
|
|
||||||
* indicates the semantic detail of whether the user wrote "optional" or not.
|
|
||||||
* This can be useful for round-tripping the .proto file. For consistency we
|
|
||||||
* give message fields a synthetic oneof also, even though it is not required
|
|
||||||
* to track presence. This is especially important because the parser can't
|
|
||||||
* tell if a field is a message or an enum, so it must always create a
|
|
||||||
* synthetic oneof.
|
|
||||||
* Proto2 optional fields do not set this flag, because they already indicate
|
|
||||||
* optional with `LABEL_OPTIONAL`.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool proto3_optional = 17;</code>
|
|
||||||
*/
|
|
||||||
protected $proto3_optional = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* @type int $number
|
|
||||||
* @type int $label
|
|
||||||
* @type int $type
|
|
||||||
* If type_name is set, this need not be set. If both this and type_name
|
|
||||||
* are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
|
|
||||||
* @type string $type_name
|
|
||||||
* For message and enum types, this is the name of the type. If the name
|
|
||||||
* starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
|
|
||||||
* rules are used to find the type (i.e. first the nested types within this
|
|
||||||
* message are searched, then within the parent, on up to the root
|
|
||||||
* namespace).
|
|
||||||
* @type string $extendee
|
|
||||||
* For extensions, this is the name of the type being extended. It is
|
|
||||||
* resolved in the same manner as type_name.
|
|
||||||
* @type string $default_value
|
|
||||||
* For numeric types, contains the original text representation of the value.
|
|
||||||
* For booleans, "true" or "false".
|
|
||||||
* For strings, contains the default text contents (not escaped in any way).
|
|
||||||
* For bytes, contains the C escaped value. All bytes >= 128 are escaped.
|
|
||||||
* @type int $oneof_index
|
|
||||||
* If set, gives the index of a oneof in the containing type's oneof_decl
|
|
||||||
* list. This field is a member of that oneof.
|
|
||||||
* @type string $json_name
|
|
||||||
* JSON name of this field. The value is set by protocol compiler. If the
|
|
||||||
* user has set a "json_name" option on this field, that option's value
|
|
||||||
* will be used. Otherwise, it's deduced from the field's name by converting
|
|
||||||
* it to camelCase.
|
|
||||||
* @type \Google\Protobuf\Internal\FieldOptions $options
|
|
||||||
* @type bool $proto3_optional
|
|
||||||
* If true, this is a proto3 "optional". When a proto3 field is optional, it
|
|
||||||
* tracks presence regardless of field type.
|
|
||||||
* When proto3_optional is true, this field must be belong to a oneof to
|
|
||||||
* signal to old proto3 clients that presence is tracked for this field. This
|
|
||||||
* oneof is known as a "synthetic" oneof, and this field must be its sole
|
|
||||||
* member (each proto3 optional field gets its own synthetic oneof). Synthetic
|
|
||||||
* oneofs exist in the descriptor only, and do not generate any API. Synthetic
|
|
||||||
* oneofs must be ordered after all "real" oneofs.
|
|
||||||
* For message fields, proto3_optional doesn't create any semantic change,
|
|
||||||
* since non-repeated message fields always track presence. However it still
|
|
||||||
* indicates the semantic detail of whether the user wrote "optional" or not.
|
|
||||||
* This can be useful for round-tripping the .proto file. For consistency we
|
|
||||||
* give message fields a synthetic oneof also, even though it is not required
|
|
||||||
* to track presence. This is especially important because the parser can't
|
|
||||||
* tell if a field is a message or an enum, so it must always create a
|
|
||||||
* synthetic oneof.
|
|
||||||
* Proto2 optional fields do not set this flag, because they already indicate
|
|
||||||
* optional with `LABEL_OPTIONAL`.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return isset($this->name) ? $this->name : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasName()
|
|
||||||
{
|
|
||||||
return isset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearName()
|
|
||||||
{
|
|
||||||
unset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional int32 number = 3;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getNumber()
|
|
||||||
{
|
|
||||||
return isset($this->number) ? $this->number : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasNumber()
|
|
||||||
{
|
|
||||||
return isset($this->number);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearNumber()
|
|
||||||
{
|
|
||||||
unset($this->number);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional int32 number = 3;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setNumber($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->number = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldDescriptorProto.Label label = 4;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getLabel()
|
|
||||||
{
|
|
||||||
return isset($this->label) ? $this->label : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasLabel()
|
|
||||||
{
|
|
||||||
return isset($this->label);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearLabel()
|
|
||||||
{
|
|
||||||
unset($this->label);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldDescriptorProto.Label label = 4;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setLabel($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Internal\FieldDescriptorProto\Label::class);
|
|
||||||
$this->label = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If type_name is set, this need not be set. If both this and type_name
|
|
||||||
* are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldDescriptorProto.Type type = 5;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getType()
|
|
||||||
{
|
|
||||||
return isset($this->type) ? $this->type : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasType()
|
|
||||||
{
|
|
||||||
return isset($this->type);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearType()
|
|
||||||
{
|
|
||||||
unset($this->type);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If type_name is set, this need not be set. If both this and type_name
|
|
||||||
* are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldDescriptorProto.Type type = 5;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setType($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Internal\FieldDescriptorProto\Type::class);
|
|
||||||
$this->type = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For message and enum types, this is the name of the type. If the name
|
|
||||||
* starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
|
|
||||||
* rules are used to find the type (i.e. first the nested types within this
|
|
||||||
* message are searched, then within the parent, on up to the root
|
|
||||||
* namespace).
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string type_name = 6;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getTypeName()
|
|
||||||
{
|
|
||||||
return isset($this->type_name) ? $this->type_name : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasTypeName()
|
|
||||||
{
|
|
||||||
return isset($this->type_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearTypeName()
|
|
||||||
{
|
|
||||||
unset($this->type_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For message and enum types, this is the name of the type. If the name
|
|
||||||
* starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
|
|
||||||
* rules are used to find the type (i.e. first the nested types within this
|
|
||||||
* message are searched, then within the parent, on up to the root
|
|
||||||
* namespace).
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string type_name = 6;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setTypeName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->type_name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For extensions, this is the name of the type being extended. It is
|
|
||||||
* resolved in the same manner as type_name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string extendee = 2;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getExtendee()
|
|
||||||
{
|
|
||||||
return isset($this->extendee) ? $this->extendee : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasExtendee()
|
|
||||||
{
|
|
||||||
return isset($this->extendee);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearExtendee()
|
|
||||||
{
|
|
||||||
unset($this->extendee);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For extensions, this is the name of the type being extended. It is
|
|
||||||
* resolved in the same manner as type_name.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string extendee = 2;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setExtendee($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->extendee = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For numeric types, contains the original text representation of the value.
|
|
||||||
* For booleans, "true" or "false".
|
|
||||||
* For strings, contains the default text contents (not escaped in any way).
|
|
||||||
* For bytes, contains the C escaped value. All bytes >= 128 are escaped.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string default_value = 7;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getDefaultValue()
|
|
||||||
{
|
|
||||||
return isset($this->default_value) ? $this->default_value : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasDefaultValue()
|
|
||||||
{
|
|
||||||
return isset($this->default_value);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearDefaultValue()
|
|
||||||
{
|
|
||||||
unset($this->default_value);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For numeric types, contains the original text representation of the value.
|
|
||||||
* For booleans, "true" or "false".
|
|
||||||
* For strings, contains the default text contents (not escaped in any way).
|
|
||||||
* For bytes, contains the C escaped value. All bytes >= 128 are escaped.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string default_value = 7;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setDefaultValue($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->default_value = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If set, gives the index of a oneof in the containing type's oneof_decl
|
|
||||||
* list. This field is a member of that oneof.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 oneof_index = 9;</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getOneofIndex()
|
|
||||||
{
|
|
||||||
return isset($this->oneof_index) ? $this->oneof_index : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasOneofIndex()
|
|
||||||
{
|
|
||||||
return isset($this->oneof_index);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearOneofIndex()
|
|
||||||
{
|
|
||||||
unset($this->oneof_index);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If set, gives the index of a oneof in the containing type's oneof_decl
|
|
||||||
* list. This field is a member of that oneof.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional int32 oneof_index = 9;</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOneofIndex($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkInt32($var);
|
|
||||||
$this->oneof_index = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* JSON name of this field. The value is set by protocol compiler. If the
|
|
||||||
* user has set a "json_name" option on this field, that option's value
|
|
||||||
* will be used. Otherwise, it's deduced from the field's name by converting
|
|
||||||
* it to camelCase.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string json_name = 10;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getJsonName()
|
|
||||||
{
|
|
||||||
return isset($this->json_name) ? $this->json_name : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasJsonName()
|
|
||||||
{
|
|
||||||
return isset($this->json_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearJsonName()
|
|
||||||
{
|
|
||||||
unset($this->json_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* JSON name of this field. The value is set by protocol compiler. If the
|
|
||||||
* user has set a "json_name" option on this field, that option's value
|
|
||||||
* will be used. Otherwise, it's deduced from the field's name by converting
|
|
||||||
* it to camelCase.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string json_name = 10;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setJsonName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->json_name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions options = 8;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\FieldOptions|null
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasOptions()
|
|
||||||
{
|
|
||||||
return isset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearOptions()
|
|
||||||
{
|
|
||||||
unset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions options = 8;</code>
|
|
||||||
* @param \Google\Protobuf\Internal\FieldOptions $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\Internal\FieldOptions::class);
|
|
||||||
$this->options = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If true, this is a proto3 "optional". When a proto3 field is optional, it
|
|
||||||
* tracks presence regardless of field type.
|
|
||||||
* When proto3_optional is true, this field must be belong to a oneof to
|
|
||||||
* signal to old proto3 clients that presence is tracked for this field. This
|
|
||||||
* oneof is known as a "synthetic" oneof, and this field must be its sole
|
|
||||||
* member (each proto3 optional field gets its own synthetic oneof). Synthetic
|
|
||||||
* oneofs exist in the descriptor only, and do not generate any API. Synthetic
|
|
||||||
* oneofs must be ordered after all "real" oneofs.
|
|
||||||
* For message fields, proto3_optional doesn't create any semantic change,
|
|
||||||
* since non-repeated message fields always track presence. However it still
|
|
||||||
* indicates the semantic detail of whether the user wrote "optional" or not.
|
|
||||||
* This can be useful for round-tripping the .proto file. For consistency we
|
|
||||||
* give message fields a synthetic oneof also, even though it is not required
|
|
||||||
* to track presence. This is especially important because the parser can't
|
|
||||||
* tell if a field is a message or an enum, so it must always create a
|
|
||||||
* synthetic oneof.
|
|
||||||
* Proto2 optional fields do not set this flag, because they already indicate
|
|
||||||
* optional with `LABEL_OPTIONAL`.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool proto3_optional = 17;</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getProto3Optional()
|
|
||||||
{
|
|
||||||
return isset($this->proto3_optional) ? $this->proto3_optional : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasProto3Optional()
|
|
||||||
{
|
|
||||||
return isset($this->proto3_optional);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearProto3Optional()
|
|
||||||
{
|
|
||||||
unset($this->proto3_optional);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If true, this is a proto3 "optional". When a proto3 field is optional, it
|
|
||||||
* tracks presence regardless of field type.
|
|
||||||
* When proto3_optional is true, this field must be belong to a oneof to
|
|
||||||
* signal to old proto3 clients that presence is tracked for this field. This
|
|
||||||
* oneof is known as a "synthetic" oneof, and this field must be its sole
|
|
||||||
* member (each proto3 optional field gets its own synthetic oneof). Synthetic
|
|
||||||
* oneofs exist in the descriptor only, and do not generate any API. Synthetic
|
|
||||||
* oneofs must be ordered after all "real" oneofs.
|
|
||||||
* For message fields, proto3_optional doesn't create any semantic change,
|
|
||||||
* since non-repeated message fields always track presence. However it still
|
|
||||||
* indicates the semantic detail of whether the user wrote "optional" or not.
|
|
||||||
* This can be useful for round-tripping the .proto file. For consistency we
|
|
||||||
* give message fields a synthetic oneof also, even though it is not required
|
|
||||||
* to track presence. This is especially important because the parser can't
|
|
||||||
* tell if a field is a message or an enum, so it must always create a
|
|
||||||
* synthetic oneof.
|
|
||||||
* Proto2 optional fields do not set this flag, because they already indicate
|
|
||||||
* optional with `LABEL_OPTIONAL`.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool proto3_optional = 17;</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setProto3Optional($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->proto3_optional = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\FieldDescriptorProto;
|
|
||||||
|
|
||||||
use UnexpectedValueException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protobuf type <code>google.protobuf.FieldDescriptorProto.Label</code>
|
|
||||||
*/
|
|
||||||
class Label
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* 0 is reserved for errors
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>LABEL_OPTIONAL = 1;</code>
|
|
||||||
*/
|
|
||||||
const LABEL_OPTIONAL = 1;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>LABEL_REQUIRED = 2;</code>
|
|
||||||
*/
|
|
||||||
const LABEL_REQUIRED = 2;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>LABEL_REPEATED = 3;</code>
|
|
||||||
*/
|
|
||||||
const LABEL_REPEATED = 3;
|
|
||||||
|
|
||||||
private static $valueToName = [
|
|
||||||
self::LABEL_OPTIONAL => 'LABEL_OPTIONAL',
|
|
||||||
self::LABEL_REQUIRED => 'LABEL_REQUIRED',
|
|
||||||
self::LABEL_REPEATED => 'LABEL_REPEATED',
|
|
||||||
];
|
|
||||||
|
|
||||||
public static function name($value)
|
|
||||||
{
|
|
||||||
if (!isset(self::$valueToName[$value])) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
||||||
}
|
|
||||||
return self::$valueToName[$value];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static function value($name)
|
|
||||||
{
|
|
||||||
$const = __CLASS__ . '::' . strtoupper($name);
|
|
||||||
if (!defined($const)) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
||||||
}
|
|
||||||
return constant($const);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(Label::class, \Google\Protobuf\Internal\FieldDescriptorProto_Label::class);
|
|
||||||
|
|
||||||
@ -1,153 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\FieldDescriptorProto;
|
|
||||||
|
|
||||||
use UnexpectedValueException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protobuf type <code>google.protobuf.FieldDescriptorProto.Type</code>
|
|
||||||
*/
|
|
||||||
class Type
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* 0 is reserved for errors.
|
|
||||||
* Order is weird for historical reasons.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_DOUBLE = 1;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_DOUBLE = 1;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_FLOAT = 2;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_FLOAT = 2;
|
|
||||||
/**
|
|
||||||
* Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if
|
|
||||||
* negative values are likely.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_INT64 = 3;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_INT64 = 3;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_UINT64 = 4;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_UINT64 = 4;
|
|
||||||
/**
|
|
||||||
* Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if
|
|
||||||
* negative values are likely.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_INT32 = 5;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_INT32 = 5;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_FIXED64 = 6;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_FIXED64 = 6;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_FIXED32 = 7;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_FIXED32 = 7;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_BOOL = 8;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_BOOL = 8;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_STRING = 9;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_STRING = 9;
|
|
||||||
/**
|
|
||||||
* Tag-delimited aggregate.
|
|
||||||
* Group type is deprecated and not supported in proto3. However, Proto3
|
|
||||||
* implementations should still be able to parse the group wire format and
|
|
||||||
* treat group fields as unknown fields.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_GROUP = 10;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_GROUP = 10;
|
|
||||||
/**
|
|
||||||
* Length-delimited aggregate.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_MESSAGE = 11;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_MESSAGE = 11;
|
|
||||||
/**
|
|
||||||
* New in version 2.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_BYTES = 12;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_BYTES = 12;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_UINT32 = 13;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_UINT32 = 13;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_ENUM = 14;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_ENUM = 14;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_SFIXED32 = 15;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SFIXED32 = 15;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>TYPE_SFIXED64 = 16;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SFIXED64 = 16;
|
|
||||||
/**
|
|
||||||
* Uses ZigZag encoding.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_SINT32 = 17;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SINT32 = 17;
|
|
||||||
/**
|
|
||||||
* Uses ZigZag encoding.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>TYPE_SINT64 = 18;</code>
|
|
||||||
*/
|
|
||||||
const TYPE_SINT64 = 18;
|
|
||||||
|
|
||||||
private static $valueToName = [
|
|
||||||
self::TYPE_DOUBLE => 'TYPE_DOUBLE',
|
|
||||||
self::TYPE_FLOAT => 'TYPE_FLOAT',
|
|
||||||
self::TYPE_INT64 => 'TYPE_INT64',
|
|
||||||
self::TYPE_UINT64 => 'TYPE_UINT64',
|
|
||||||
self::TYPE_INT32 => 'TYPE_INT32',
|
|
||||||
self::TYPE_FIXED64 => 'TYPE_FIXED64',
|
|
||||||
self::TYPE_FIXED32 => 'TYPE_FIXED32',
|
|
||||||
self::TYPE_BOOL => 'TYPE_BOOL',
|
|
||||||
self::TYPE_STRING => 'TYPE_STRING',
|
|
||||||
self::TYPE_GROUP => 'TYPE_GROUP',
|
|
||||||
self::TYPE_MESSAGE => 'TYPE_MESSAGE',
|
|
||||||
self::TYPE_BYTES => 'TYPE_BYTES',
|
|
||||||
self::TYPE_UINT32 => 'TYPE_UINT32',
|
|
||||||
self::TYPE_ENUM => 'TYPE_ENUM',
|
|
||||||
self::TYPE_SFIXED32 => 'TYPE_SFIXED32',
|
|
||||||
self::TYPE_SFIXED64 => 'TYPE_SFIXED64',
|
|
||||||
self::TYPE_SINT32 => 'TYPE_SINT32',
|
|
||||||
self::TYPE_SINT64 => 'TYPE_SINT64',
|
|
||||||
];
|
|
||||||
|
|
||||||
public static function name($value)
|
|
||||||
{
|
|
||||||
if (!isset(self::$valueToName[$value])) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
||||||
}
|
|
||||||
return self::$valueToName[$value];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static function value($name)
|
|
||||||
{
|
|
||||||
$const = __CLASS__ . '::' . strtoupper($name);
|
|
||||||
if (!defined($const)) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
||||||
}
|
|
||||||
return constant($const);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(Type::class, \Google\Protobuf\Internal\FieldDescriptorProto_Type::class);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\FieldDescriptorProto\Label instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class FieldDescriptorProto_Label {}
|
|
||||||
}
|
|
||||||
class_exists(FieldDescriptorProto\Label::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\FieldDescriptorProto_Label is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\FieldDescriptorProto\Label instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\FieldDescriptorProto\Type instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class FieldDescriptorProto_Type {}
|
|
||||||
}
|
|
||||||
class_exists(FieldDescriptorProto\Type::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\FieldDescriptorProto_Type is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\FieldDescriptorProto\Type instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,559 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf message <code>google.protobuf.FieldOptions</code>
|
|
||||||
*/
|
|
||||||
class FieldOptions extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* The ctype option instructs the C++ code generator to use a different
|
|
||||||
* representation of the field than it normally would. See the specific
|
|
||||||
* options below. This option is not yet implemented in the open source
|
|
||||||
* release -- sorry, we'll try to include it in a future version!
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];</code>
|
|
||||||
*/
|
|
||||||
protected $ctype = null;
|
|
||||||
/**
|
|
||||||
* The packed option can be enabled for repeated primitive fields to enable
|
|
||||||
* a more efficient representation on the wire. Rather than repeatedly
|
|
||||||
* writing the tag and type for each element, the entire array is encoded as
|
|
||||||
* a single length-delimited blob. In proto3, only explicit setting it to
|
|
||||||
* false will avoid using packed encoding.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool packed = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $packed = null;
|
|
||||||
/**
|
|
||||||
* The jstype option determines the JavaScript type used for values of the
|
|
||||||
* field. The option is permitted only for 64 bit integral and fixed types
|
|
||||||
* (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
|
|
||||||
* is represented as JavaScript string, which avoids loss of precision that
|
|
||||||
* can happen when a large value is converted to a floating point JavaScript.
|
|
||||||
* Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
|
|
||||||
* use the JavaScript "number" type. The behavior of the default option
|
|
||||||
* JS_NORMAL is implementation dependent.
|
|
||||||
* This option is an enum to permit additional types to be added, e.g.
|
|
||||||
* goog.math.Integer.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];</code>
|
|
||||||
*/
|
|
||||||
protected $jstype = null;
|
|
||||||
/**
|
|
||||||
* Should this field be parsed lazily? Lazy applies only to message-type
|
|
||||||
* fields. It means that when the outer message is initially parsed, the
|
|
||||||
* inner message's contents will not be parsed but instead stored in encoded
|
|
||||||
* form. The inner message will actually be parsed when it is first accessed.
|
|
||||||
* This is only a hint. Implementations are free to choose whether to use
|
|
||||||
* eager or lazy parsing regardless of the value of this option. However,
|
|
||||||
* setting this option true suggests that the protocol author believes that
|
|
||||||
* using lazy parsing on this field is worth the additional bookkeeping
|
|
||||||
* overhead typically needed to implement it.
|
|
||||||
* This option does not affect the public interface of any generated code;
|
|
||||||
* all method signatures remain the same. Furthermore, thread-safety of the
|
|
||||||
* interface is not affected by this option; const methods remain safe to
|
|
||||||
* call from multiple threads concurrently, while non-const methods continue
|
|
||||||
* to require exclusive access.
|
|
||||||
* Note that implementations may choose not to check required fields within
|
|
||||||
* a lazy sub-message. That is, calling IsInitialized() on the outer message
|
|
||||||
* may return true even if the inner message has missing required fields.
|
|
||||||
* This is necessary because otherwise the inner message would have to be
|
|
||||||
* parsed in order to perform the check, defeating the purpose of lazy
|
|
||||||
* parsing. An implementation which chooses not to check required fields
|
|
||||||
* must be consistent about it. That is, for any particular sub-message, the
|
|
||||||
* implementation must either *always* check its required fields, or *never*
|
|
||||||
* check its required fields, regardless of whether or not the message has
|
|
||||||
* been parsed.
|
|
||||||
* As of May 2022, lazy verifies the contents of the byte stream during
|
|
||||||
* parsing. An invalid byte stream will cause the overall parsing to fail.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool lazy = 5 [default = false];</code>
|
|
||||||
*/
|
|
||||||
protected $lazy = null;
|
|
||||||
/**
|
|
||||||
* unverified_lazy does no correctness checks on the byte stream. This should
|
|
||||||
* only be used where lazy with verification is prohibitive for performance
|
|
||||||
* reasons.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool unverified_lazy = 15 [default = false];</code>
|
|
||||||
*/
|
|
||||||
protected $unverified_lazy = null;
|
|
||||||
/**
|
|
||||||
* Is this field deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for accessors, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating fields.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 3 [default = false];</code>
|
|
||||||
*/
|
|
||||||
protected $deprecated = null;
|
|
||||||
/**
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool weak = 10 [default = false];</code>
|
|
||||||
*/
|
|
||||||
protected $weak = null;
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
*/
|
|
||||||
private $uninterpreted_option;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type int $ctype
|
|
||||||
* The ctype option instructs the C++ code generator to use a different
|
|
||||||
* representation of the field than it normally would. See the specific
|
|
||||||
* options below. This option is not yet implemented in the open source
|
|
||||||
* release -- sorry, we'll try to include it in a future version!
|
|
||||||
* @type bool $packed
|
|
||||||
* The packed option can be enabled for repeated primitive fields to enable
|
|
||||||
* a more efficient representation on the wire. Rather than repeatedly
|
|
||||||
* writing the tag and type for each element, the entire array is encoded as
|
|
||||||
* a single length-delimited blob. In proto3, only explicit setting it to
|
|
||||||
* false will avoid using packed encoding.
|
|
||||||
* @type int $jstype
|
|
||||||
* The jstype option determines the JavaScript type used for values of the
|
|
||||||
* field. The option is permitted only for 64 bit integral and fixed types
|
|
||||||
* (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
|
|
||||||
* is represented as JavaScript string, which avoids loss of precision that
|
|
||||||
* can happen when a large value is converted to a floating point JavaScript.
|
|
||||||
* Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
|
|
||||||
* use the JavaScript "number" type. The behavior of the default option
|
|
||||||
* JS_NORMAL is implementation dependent.
|
|
||||||
* This option is an enum to permit additional types to be added, e.g.
|
|
||||||
* goog.math.Integer.
|
|
||||||
* @type bool $lazy
|
|
||||||
* Should this field be parsed lazily? Lazy applies only to message-type
|
|
||||||
* fields. It means that when the outer message is initially parsed, the
|
|
||||||
* inner message's contents will not be parsed but instead stored in encoded
|
|
||||||
* form. The inner message will actually be parsed when it is first accessed.
|
|
||||||
* This is only a hint. Implementations are free to choose whether to use
|
|
||||||
* eager or lazy parsing regardless of the value of this option. However,
|
|
||||||
* setting this option true suggests that the protocol author believes that
|
|
||||||
* using lazy parsing on this field is worth the additional bookkeeping
|
|
||||||
* overhead typically needed to implement it.
|
|
||||||
* This option does not affect the public interface of any generated code;
|
|
||||||
* all method signatures remain the same. Furthermore, thread-safety of the
|
|
||||||
* interface is not affected by this option; const methods remain safe to
|
|
||||||
* call from multiple threads concurrently, while non-const methods continue
|
|
||||||
* to require exclusive access.
|
|
||||||
* Note that implementations may choose not to check required fields within
|
|
||||||
* a lazy sub-message. That is, calling IsInitialized() on the outer message
|
|
||||||
* may return true even if the inner message has missing required fields.
|
|
||||||
* This is necessary because otherwise the inner message would have to be
|
|
||||||
* parsed in order to perform the check, defeating the purpose of lazy
|
|
||||||
* parsing. An implementation which chooses not to check required fields
|
|
||||||
* must be consistent about it. That is, for any particular sub-message, the
|
|
||||||
* implementation must either *always* check its required fields, or *never*
|
|
||||||
* check its required fields, regardless of whether or not the message has
|
|
||||||
* been parsed.
|
|
||||||
* As of May 2022, lazy verifies the contents of the byte stream during
|
|
||||||
* parsing. An invalid byte stream will cause the overall parsing to fail.
|
|
||||||
* @type bool $unverified_lazy
|
|
||||||
* unverified_lazy does no correctness checks on the byte stream. This should
|
|
||||||
* only be used where lazy with verification is prohibitive for performance
|
|
||||||
* reasons.
|
|
||||||
* @type bool $deprecated
|
|
||||||
* Is this field deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for accessors, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating fields.
|
|
||||||
* @type bool $weak
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
* @type array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $uninterpreted_option
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The ctype option instructs the C++ code generator to use a different
|
|
||||||
* representation of the field than it normally would. See the specific
|
|
||||||
* options below. This option is not yet implemented in the open source
|
|
||||||
* release -- sorry, we'll try to include it in a future version!
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getCtype()
|
|
||||||
{
|
|
||||||
return isset($this->ctype) ? $this->ctype : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasCtype()
|
|
||||||
{
|
|
||||||
return isset($this->ctype);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearCtype()
|
|
||||||
{
|
|
||||||
unset($this->ctype);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The ctype option instructs the C++ code generator to use a different
|
|
||||||
* representation of the field than it normally would. See the specific
|
|
||||||
* options below. This option is not yet implemented in the open source
|
|
||||||
* release -- sorry, we'll try to include it in a future version!
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setCtype($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Internal\FieldOptions\CType::class);
|
|
||||||
$this->ctype = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The packed option can be enabled for repeated primitive fields to enable
|
|
||||||
* a more efficient representation on the wire. Rather than repeatedly
|
|
||||||
* writing the tag and type for each element, the entire array is encoded as
|
|
||||||
* a single length-delimited blob. In proto3, only explicit setting it to
|
|
||||||
* false will avoid using packed encoding.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool packed = 2;</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getPacked()
|
|
||||||
{
|
|
||||||
return isset($this->packed) ? $this->packed : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasPacked()
|
|
||||||
{
|
|
||||||
return isset($this->packed);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearPacked()
|
|
||||||
{
|
|
||||||
unset($this->packed);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The packed option can be enabled for repeated primitive fields to enable
|
|
||||||
* a more efficient representation on the wire. Rather than repeatedly
|
|
||||||
* writing the tag and type for each element, the entire array is encoded as
|
|
||||||
* a single length-delimited blob. In proto3, only explicit setting it to
|
|
||||||
* false will avoid using packed encoding.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool packed = 2;</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setPacked($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->packed = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The jstype option determines the JavaScript type used for values of the
|
|
||||||
* field. The option is permitted only for 64 bit integral and fixed types
|
|
||||||
* (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
|
|
||||||
* is represented as JavaScript string, which avoids loss of precision that
|
|
||||||
* can happen when a large value is converted to a floating point JavaScript.
|
|
||||||
* Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
|
|
||||||
* use the JavaScript "number" type. The behavior of the default option
|
|
||||||
* JS_NORMAL is implementation dependent.
|
|
||||||
* This option is an enum to permit additional types to be added, e.g.
|
|
||||||
* goog.math.Integer.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];</code>
|
|
||||||
* @return int
|
|
||||||
*/
|
|
||||||
public function getJstype()
|
|
||||||
{
|
|
||||||
return isset($this->jstype) ? $this->jstype : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasJstype()
|
|
||||||
{
|
|
||||||
return isset($this->jstype);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearJstype()
|
|
||||||
{
|
|
||||||
unset($this->jstype);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The jstype option determines the JavaScript type used for values of the
|
|
||||||
* field. The option is permitted only for 64 bit integral and fixed types
|
|
||||||
* (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
|
|
||||||
* is represented as JavaScript string, which avoids loss of precision that
|
|
||||||
* can happen when a large value is converted to a floating point JavaScript.
|
|
||||||
* Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
|
|
||||||
* use the JavaScript "number" type. The behavior of the default option
|
|
||||||
* JS_NORMAL is implementation dependent.
|
|
||||||
* This option is an enum to permit additional types to be added, e.g.
|
|
||||||
* goog.math.Integer.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL];</code>
|
|
||||||
* @param int $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setJstype($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkEnum($var, \Google\Protobuf\Internal\FieldOptions\JSType::class);
|
|
||||||
$this->jstype = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Should this field be parsed lazily? Lazy applies only to message-type
|
|
||||||
* fields. It means that when the outer message is initially parsed, the
|
|
||||||
* inner message's contents will not be parsed but instead stored in encoded
|
|
||||||
* form. The inner message will actually be parsed when it is first accessed.
|
|
||||||
* This is only a hint. Implementations are free to choose whether to use
|
|
||||||
* eager or lazy parsing regardless of the value of this option. However,
|
|
||||||
* setting this option true suggests that the protocol author believes that
|
|
||||||
* using lazy parsing on this field is worth the additional bookkeeping
|
|
||||||
* overhead typically needed to implement it.
|
|
||||||
* This option does not affect the public interface of any generated code;
|
|
||||||
* all method signatures remain the same. Furthermore, thread-safety of the
|
|
||||||
* interface is not affected by this option; const methods remain safe to
|
|
||||||
* call from multiple threads concurrently, while non-const methods continue
|
|
||||||
* to require exclusive access.
|
|
||||||
* Note that implementations may choose not to check required fields within
|
|
||||||
* a lazy sub-message. That is, calling IsInitialized() on the outer message
|
|
||||||
* may return true even if the inner message has missing required fields.
|
|
||||||
* This is necessary because otherwise the inner message would have to be
|
|
||||||
* parsed in order to perform the check, defeating the purpose of lazy
|
|
||||||
* parsing. An implementation which chooses not to check required fields
|
|
||||||
* must be consistent about it. That is, for any particular sub-message, the
|
|
||||||
* implementation must either *always* check its required fields, or *never*
|
|
||||||
* check its required fields, regardless of whether or not the message has
|
|
||||||
* been parsed.
|
|
||||||
* As of May 2022, lazy verifies the contents of the byte stream during
|
|
||||||
* parsing. An invalid byte stream will cause the overall parsing to fail.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool lazy = 5 [default = false];</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getLazy()
|
|
||||||
{
|
|
||||||
return isset($this->lazy) ? $this->lazy : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasLazy()
|
|
||||||
{
|
|
||||||
return isset($this->lazy);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearLazy()
|
|
||||||
{
|
|
||||||
unset($this->lazy);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Should this field be parsed lazily? Lazy applies only to message-type
|
|
||||||
* fields. It means that when the outer message is initially parsed, the
|
|
||||||
* inner message's contents will not be parsed but instead stored in encoded
|
|
||||||
* form. The inner message will actually be parsed when it is first accessed.
|
|
||||||
* This is only a hint. Implementations are free to choose whether to use
|
|
||||||
* eager or lazy parsing regardless of the value of this option. However,
|
|
||||||
* setting this option true suggests that the protocol author believes that
|
|
||||||
* using lazy parsing on this field is worth the additional bookkeeping
|
|
||||||
* overhead typically needed to implement it.
|
|
||||||
* This option does not affect the public interface of any generated code;
|
|
||||||
* all method signatures remain the same. Furthermore, thread-safety of the
|
|
||||||
* interface is not affected by this option; const methods remain safe to
|
|
||||||
* call from multiple threads concurrently, while non-const methods continue
|
|
||||||
* to require exclusive access.
|
|
||||||
* Note that implementations may choose not to check required fields within
|
|
||||||
* a lazy sub-message. That is, calling IsInitialized() on the outer message
|
|
||||||
* may return true even if the inner message has missing required fields.
|
|
||||||
* This is necessary because otherwise the inner message would have to be
|
|
||||||
* parsed in order to perform the check, defeating the purpose of lazy
|
|
||||||
* parsing. An implementation which chooses not to check required fields
|
|
||||||
* must be consistent about it. That is, for any particular sub-message, the
|
|
||||||
* implementation must either *always* check its required fields, or *never*
|
|
||||||
* check its required fields, regardless of whether or not the message has
|
|
||||||
* been parsed.
|
|
||||||
* As of May 2022, lazy verifies the contents of the byte stream during
|
|
||||||
* parsing. An invalid byte stream will cause the overall parsing to fail.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool lazy = 5 [default = false];</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setLazy($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->lazy = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* unverified_lazy does no correctness checks on the byte stream. This should
|
|
||||||
* only be used where lazy with verification is prohibitive for performance
|
|
||||||
* reasons.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool unverified_lazy = 15 [default = false];</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getUnverifiedLazy()
|
|
||||||
{
|
|
||||||
return isset($this->unverified_lazy) ? $this->unverified_lazy : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasUnverifiedLazy()
|
|
||||||
{
|
|
||||||
return isset($this->unverified_lazy);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearUnverifiedLazy()
|
|
||||||
{
|
|
||||||
unset($this->unverified_lazy);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* unverified_lazy does no correctness checks on the byte stream. This should
|
|
||||||
* only be used where lazy with verification is prohibitive for performance
|
|
||||||
* reasons.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool unverified_lazy = 15 [default = false];</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setUnverifiedLazy($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->unverified_lazy = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Is this field deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for accessors, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating fields.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 3 [default = false];</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getDeprecated()
|
|
||||||
{
|
|
||||||
return isset($this->deprecated) ? $this->deprecated : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasDeprecated()
|
|
||||||
{
|
|
||||||
return isset($this->deprecated);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearDeprecated()
|
|
||||||
{
|
|
||||||
unset($this->deprecated);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Is this field deprecated?
|
|
||||||
* Depending on the target platform, this can emit Deprecated annotations
|
|
||||||
* for accessors, or it will be completely ignored; in the very least, this
|
|
||||||
* is a formalization for deprecating fields.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool deprecated = 3 [default = false];</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setDeprecated($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->deprecated = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool weak = 10 [default = false];</code>
|
|
||||||
* @return bool
|
|
||||||
*/
|
|
||||||
public function getWeak()
|
|
||||||
{
|
|
||||||
return isset($this->weak) ? $this->weak : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasWeak()
|
|
||||||
{
|
|
||||||
return isset($this->weak);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearWeak()
|
|
||||||
{
|
|
||||||
unset($this->weak);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional bool weak = 10 [default = false];</code>
|
|
||||||
* @param bool $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setWeak($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkBool($var);
|
|
||||||
$this->weak = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getUninterpretedOption()
|
|
||||||
{
|
|
||||||
return $this->uninterpreted_option;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The parser stores options it doesn't recognize here. See above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\UninterpretedOption>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setUninterpretedOption($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\UninterpretedOption::class);
|
|
||||||
$this->uninterpreted_option = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\FieldOptions;
|
|
||||||
|
|
||||||
use UnexpectedValueException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protobuf type <code>google.protobuf.FieldOptions.CType</code>
|
|
||||||
*/
|
|
||||||
class CType
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Default mode.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>STRING = 0;</code>
|
|
||||||
*/
|
|
||||||
const STRING = 0;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>CORD = 1;</code>
|
|
||||||
*/
|
|
||||||
const CORD = 1;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf enum <code>STRING_PIECE = 2;</code>
|
|
||||||
*/
|
|
||||||
const STRING_PIECE = 2;
|
|
||||||
|
|
||||||
private static $valueToName = [
|
|
||||||
self::STRING => 'STRING',
|
|
||||||
self::CORD => 'CORD',
|
|
||||||
self::STRING_PIECE => 'STRING_PIECE',
|
|
||||||
];
|
|
||||||
|
|
||||||
public static function name($value)
|
|
||||||
{
|
|
||||||
if (!isset(self::$valueToName[$value])) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
||||||
}
|
|
||||||
return self::$valueToName[$value];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static function value($name)
|
|
||||||
{
|
|
||||||
$const = __CLASS__ . '::' . strtoupper($name);
|
|
||||||
if (!defined($const)) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
||||||
}
|
|
||||||
return constant($const);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(CType::class, \Google\Protobuf\Internal\FieldOptions_CType::class);
|
|
||||||
|
|
||||||
@ -1,62 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\FieldOptions;
|
|
||||||
|
|
||||||
use UnexpectedValueException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Protobuf type <code>google.protobuf.FieldOptions.JSType</code>
|
|
||||||
*/
|
|
||||||
class JSType
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Use the default type.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>JS_NORMAL = 0;</code>
|
|
||||||
*/
|
|
||||||
const JS_NORMAL = 0;
|
|
||||||
/**
|
|
||||||
* Use JavaScript strings.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>JS_STRING = 1;</code>
|
|
||||||
*/
|
|
||||||
const JS_STRING = 1;
|
|
||||||
/**
|
|
||||||
* Use JavaScript numbers.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>JS_NUMBER = 2;</code>
|
|
||||||
*/
|
|
||||||
const JS_NUMBER = 2;
|
|
||||||
|
|
||||||
private static $valueToName = [
|
|
||||||
self::JS_NORMAL => 'JS_NORMAL',
|
|
||||||
self::JS_STRING => 'JS_STRING',
|
|
||||||
self::JS_NUMBER => 'JS_NUMBER',
|
|
||||||
];
|
|
||||||
|
|
||||||
public static function name($value)
|
|
||||||
{
|
|
||||||
if (!isset(self::$valueToName[$value])) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
||||||
}
|
|
||||||
return self::$valueToName[$value];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static function value($name)
|
|
||||||
{
|
|
||||||
$const = __CLASS__ . '::' . strtoupper($name);
|
|
||||||
if (!defined($const)) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
||||||
}
|
|
||||||
return constant($const);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(JSType::class, \Google\Protobuf\Internal\FieldOptions_JSType::class);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\FieldOptions\CType instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class FieldOptions_CType {}
|
|
||||||
}
|
|
||||||
class_exists(FieldOptions\CType::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\FieldOptions_CType is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\FieldOptions\CType instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\FieldOptions\JSType instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class FieldOptions_JSType {}
|
|
||||||
}
|
|
||||||
class_exists(FieldOptions\JSType::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\FieldOptions_JSType is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\FieldOptions\JSType instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,89 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
class FileDescriptor
|
|
||||||
{
|
|
||||||
|
|
||||||
private $package;
|
|
||||||
private $message_type = [];
|
|
||||||
private $enum_type = [];
|
|
||||||
|
|
||||||
public function setPackage($package)
|
|
||||||
{
|
|
||||||
$this->package = $package;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getPackage()
|
|
||||||
{
|
|
||||||
return $this->package;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getMessageType()
|
|
||||||
{
|
|
||||||
return $this->message_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addMessageType($desc)
|
|
||||||
{
|
|
||||||
$this->message_type[] = $desc;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getEnumType()
|
|
||||||
{
|
|
||||||
return $this->enum_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function addEnumType($desc)
|
|
||||||
{
|
|
||||||
$this->enum_type[]= $desc;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function buildFromProto($proto)
|
|
||||||
{
|
|
||||||
$file = new FileDescriptor();
|
|
||||||
$file->setPackage($proto->getPackage());
|
|
||||||
foreach ($proto->getMessageType() as $message_proto) {
|
|
||||||
$file->addMessageType(Descriptor::buildFromProto(
|
|
||||||
$message_proto, $proto, ""));
|
|
||||||
}
|
|
||||||
foreach ($proto->getEnumType() as $enum_proto) {
|
|
||||||
$file->addEnumType(
|
|
||||||
EnumDescriptor::buildFromProto(
|
|
||||||
$enum_proto,
|
|
||||||
$proto,
|
|
||||||
""));
|
|
||||||
}
|
|
||||||
return $file;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,533 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Describes a complete .proto file.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.FileDescriptorProto</code>
|
|
||||||
*/
|
|
||||||
class FileDescriptorProto extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* file name, relative to root of source tree
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
*/
|
|
||||||
protected $name = null;
|
|
||||||
/**
|
|
||||||
* e.g. "foo", "foo.bar", etc.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string package = 2;</code>
|
|
||||||
*/
|
|
||||||
protected $package = null;
|
|
||||||
/**
|
|
||||||
* Names of files imported by this file.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string dependency = 3;</code>
|
|
||||||
*/
|
|
||||||
private $dependency;
|
|
||||||
/**
|
|
||||||
* Indexes of the public imported files in the dependency list above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated int32 public_dependency = 10;</code>
|
|
||||||
*/
|
|
||||||
private $public_dependency;
|
|
||||||
/**
|
|
||||||
* Indexes of the weak imported files in the dependency list.
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated int32 weak_dependency = 11;</code>
|
|
||||||
*/
|
|
||||||
private $weak_dependency;
|
|
||||||
/**
|
|
||||||
* All top-level definitions in this file.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto message_type = 4;</code>
|
|
||||||
*/
|
|
||||||
private $message_type;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto enum_type = 5;</code>
|
|
||||||
*/
|
|
||||||
private $enum_type;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.ServiceDescriptorProto service = 6;</code>
|
|
||||||
*/
|
|
||||||
private $service;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto extension = 7;</code>
|
|
||||||
*/
|
|
||||||
private $extension;
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FileOptions options = 8;</code>
|
|
||||||
*/
|
|
||||||
protected $options = null;
|
|
||||||
/**
|
|
||||||
* This field contains optional information about the original source code.
|
|
||||||
* You may safely remove this entire field without harming runtime
|
|
||||||
* functionality of the descriptors -- the information is needed only by
|
|
||||||
* development tools.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.SourceCodeInfo source_code_info = 9;</code>
|
|
||||||
*/
|
|
||||||
protected $source_code_info = null;
|
|
||||||
/**
|
|
||||||
* The syntax of the proto file.
|
|
||||||
* The supported values are "proto2", "proto3", and "editions".
|
|
||||||
* If `edition` is present, this value must be "editions".
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string syntax = 12;</code>
|
|
||||||
*/
|
|
||||||
protected $syntax = null;
|
|
||||||
/**
|
|
||||||
* The edition of the proto file, which is an opaque string.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string edition = 13;</code>
|
|
||||||
*/
|
|
||||||
protected $edition = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type string $name
|
|
||||||
* file name, relative to root of source tree
|
|
||||||
* @type string $package
|
|
||||||
* e.g. "foo", "foo.bar", etc.
|
|
||||||
* @type array<string>|\Google\Protobuf\Internal\RepeatedField $dependency
|
|
||||||
* Names of files imported by this file.
|
|
||||||
* @type array<int>|\Google\Protobuf\Internal\RepeatedField $public_dependency
|
|
||||||
* Indexes of the public imported files in the dependency list above.
|
|
||||||
* @type array<int>|\Google\Protobuf\Internal\RepeatedField $weak_dependency
|
|
||||||
* Indexes of the weak imported files in the dependency list.
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
* @type array<\Google\Protobuf\Internal\DescriptorProto>|\Google\Protobuf\Internal\RepeatedField $message_type
|
|
||||||
* All top-level definitions in this file.
|
|
||||||
* @type array<\Google\Protobuf\Internal\EnumDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $enum_type
|
|
||||||
* @type array<\Google\Protobuf\Internal\ServiceDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $service
|
|
||||||
* @type array<\Google\Protobuf\Internal\FieldDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $extension
|
|
||||||
* @type \Google\Protobuf\Internal\FileOptions $options
|
|
||||||
* @type \Google\Protobuf\Internal\SourceCodeInfo $source_code_info
|
|
||||||
* This field contains optional information about the original source code.
|
|
||||||
* You may safely remove this entire field without harming runtime
|
|
||||||
* functionality of the descriptors -- the information is needed only by
|
|
||||||
* development tools.
|
|
||||||
* @type string $syntax
|
|
||||||
* The syntax of the proto file.
|
|
||||||
* The supported values are "proto2", "proto3", and "editions".
|
|
||||||
* If `edition` is present, this value must be "editions".
|
|
||||||
* @type string $edition
|
|
||||||
* The edition of the proto file, which is an opaque string.
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* file name, relative to root of source tree
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getName()
|
|
||||||
{
|
|
||||||
return isset($this->name) ? $this->name : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasName()
|
|
||||||
{
|
|
||||||
return isset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearName()
|
|
||||||
{
|
|
||||||
unset($this->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* file name, relative to root of source tree
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string name = 1;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setName($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->name = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* e.g. "foo", "foo.bar", etc.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string package = 2;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getPackage()
|
|
||||||
{
|
|
||||||
return isset($this->package) ? $this->package : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasPackage()
|
|
||||||
{
|
|
||||||
return isset($this->package);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearPackage()
|
|
||||||
{
|
|
||||||
unset($this->package);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* e.g. "foo", "foo.bar", etc.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string package = 2;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setPackage($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->package = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Names of files imported by this file.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string dependency = 3;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getDependency()
|
|
||||||
{
|
|
||||||
return $this->dependency;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Names of files imported by this file.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated string dependency = 3;</code>
|
|
||||||
* @param array<string>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setDependency($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
|
|
||||||
$this->dependency = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Indexes of the public imported files in the dependency list above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated int32 public_dependency = 10;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getPublicDependency()
|
|
||||||
{
|
|
||||||
return $this->public_dependency;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Indexes of the public imported files in the dependency list above.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated int32 public_dependency = 10;</code>
|
|
||||||
* @param array<int>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setPublicDependency($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::INT32);
|
|
||||||
$this->public_dependency = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Indexes of the weak imported files in the dependency list.
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated int32 weak_dependency = 11;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getWeakDependency()
|
|
||||||
{
|
|
||||||
return $this->weak_dependency;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Indexes of the weak imported files in the dependency list.
|
|
||||||
* For Google-internal migration only. Do not use.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated int32 weak_dependency = 11;</code>
|
|
||||||
* @param array<int>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setWeakDependency($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::INT32);
|
|
||||||
$this->weak_dependency = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* All top-level definitions in this file.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto message_type = 4;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getMessageType()
|
|
||||||
{
|
|
||||||
return $this->message_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* All top-level definitions in this file.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.DescriptorProto message_type = 4;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\DescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setMessageType($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\DescriptorProto::class);
|
|
||||||
$this->message_type = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto enum_type = 5;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getEnumType()
|
|
||||||
{
|
|
||||||
return $this->enum_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.EnumDescriptorProto enum_type = 5;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\EnumDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setEnumType($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\EnumDescriptorProto::class);
|
|
||||||
$this->enum_type = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.ServiceDescriptorProto service = 6;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getService()
|
|
||||||
{
|
|
||||||
return $this->service;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.ServiceDescriptorProto service = 6;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\ServiceDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setService($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\ServiceDescriptorProto::class);
|
|
||||||
$this->service = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto extension = 7;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getExtension()
|
|
||||||
{
|
|
||||||
return $this->extension;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FieldDescriptorProto extension = 7;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\FieldDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setExtension($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\FieldDescriptorProto::class);
|
|
||||||
$this->extension = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FileOptions options = 8;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\FileOptions|null
|
|
||||||
*/
|
|
||||||
public function getOptions()
|
|
||||||
{
|
|
||||||
return $this->options;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasOptions()
|
|
||||||
{
|
|
||||||
return isset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearOptions()
|
|
||||||
{
|
|
||||||
unset($this->options);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.FileOptions options = 8;</code>
|
|
||||||
* @param \Google\Protobuf\Internal\FileOptions $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setOptions($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\Internal\FileOptions::class);
|
|
||||||
$this->options = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This field contains optional information about the original source code.
|
|
||||||
* You may safely remove this entire field without harming runtime
|
|
||||||
* functionality of the descriptors -- the information is needed only by
|
|
||||||
* development tools.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.SourceCodeInfo source_code_info = 9;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\SourceCodeInfo|null
|
|
||||||
*/
|
|
||||||
public function getSourceCodeInfo()
|
|
||||||
{
|
|
||||||
return $this->source_code_info;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasSourceCodeInfo()
|
|
||||||
{
|
|
||||||
return isset($this->source_code_info);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearSourceCodeInfo()
|
|
||||||
{
|
|
||||||
unset($this->source_code_info);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This field contains optional information about the original source code.
|
|
||||||
* You may safely remove this entire field without harming runtime
|
|
||||||
* functionality of the descriptors -- the information is needed only by
|
|
||||||
* development tools.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional .google.protobuf.SourceCodeInfo source_code_info = 9;</code>
|
|
||||||
* @param \Google\Protobuf\Internal\SourceCodeInfo $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setSourceCodeInfo($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkMessage($var, \Google\Protobuf\Internal\SourceCodeInfo::class);
|
|
||||||
$this->source_code_info = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The syntax of the proto file.
|
|
||||||
* The supported values are "proto2", "proto3", and "editions".
|
|
||||||
* If `edition` is present, this value must be "editions".
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string syntax = 12;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getSyntax()
|
|
||||||
{
|
|
||||||
return isset($this->syntax) ? $this->syntax : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasSyntax()
|
|
||||||
{
|
|
||||||
return isset($this->syntax);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearSyntax()
|
|
||||||
{
|
|
||||||
unset($this->syntax);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The syntax of the proto file.
|
|
||||||
* The supported values are "proto2", "proto3", and "editions".
|
|
||||||
* If `edition` is present, this value must be "editions".
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string syntax = 12;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setSyntax($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->syntax = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The edition of the proto file, which is an opaque string.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string edition = 13;</code>
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
public function getEdition()
|
|
||||||
{
|
|
||||||
return isset($this->edition) ? $this->edition : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
public function hasEdition()
|
|
||||||
{
|
|
||||||
return isset($this->edition);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function clearEdition()
|
|
||||||
{
|
|
||||||
unset($this->edition);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The edition of the proto file, which is an opaque string.
|
|
||||||
*
|
|
||||||
* Generated from protobuf field <code>optional string edition = 13;</code>
|
|
||||||
* @param string $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setEdition($var)
|
|
||||||
{
|
|
||||||
GPBUtil::checkString($var, True);
|
|
||||||
$this->edition = $var;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,63 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
use Google\Protobuf\Internal\GPBType;
|
|
||||||
use Google\Protobuf\Internal\GPBWire;
|
|
||||||
use Google\Protobuf\Internal\RepeatedField;
|
|
||||||
use Google\Protobuf\Internal\InputStream;
|
|
||||||
use Google\Protobuf\Internal\GPBUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The protocol compiler can output a FileDescriptorSet containing the .proto
|
|
||||||
* files it parses.
|
|
||||||
*
|
|
||||||
* Generated from protobuf message <code>google.protobuf.FileDescriptorSet</code>
|
|
||||||
*/
|
|
||||||
class FileDescriptorSet extends \Google\Protobuf\Internal\Message
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FileDescriptorProto file = 1;</code>
|
|
||||||
*/
|
|
||||||
private $file;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor.
|
|
||||||
*
|
|
||||||
* @param array $data {
|
|
||||||
* Optional. Data for populating the Message object.
|
|
||||||
*
|
|
||||||
* @type array<\Google\Protobuf\Internal\FileDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $file
|
|
||||||
* }
|
|
||||||
*/
|
|
||||||
public function __construct($data = NULL) {
|
|
||||||
\GPBMetadata\Google\Protobuf\Internal\Descriptor::initOnce();
|
|
||||||
parent::__construct($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FileDescriptorProto file = 1;</code>
|
|
||||||
* @return \Google\Protobuf\Internal\RepeatedField
|
|
||||||
*/
|
|
||||||
public function getFile()
|
|
||||||
{
|
|
||||||
return $this->file;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated from protobuf field <code>repeated .google.protobuf.FileDescriptorProto file = 1;</code>
|
|
||||||
* @param array<\Google\Protobuf\Internal\FileDescriptorProto>|\Google\Protobuf\Internal\RepeatedField $var
|
|
||||||
* @return $this
|
|
||||||
*/
|
|
||||||
public function setFile($var)
|
|
||||||
{
|
|
||||||
$arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Protobuf\Internal\FileDescriptorProto::class);
|
|
||||||
$this->file = $arr;
|
|
||||||
|
|
||||||
return $this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,64 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal\FileOptions;
|
|
||||||
|
|
||||||
use UnexpectedValueException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generated classes can be optimized for speed or code size.
|
|
||||||
*
|
|
||||||
* Protobuf type <code>google.protobuf.FileOptions.OptimizeMode</code>
|
|
||||||
*/
|
|
||||||
class OptimizeMode
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Generate complete code for parsing, serialization,
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>SPEED = 1;</code>
|
|
||||||
*/
|
|
||||||
const SPEED = 1;
|
|
||||||
/**
|
|
||||||
* etc.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>CODE_SIZE = 2;</code>
|
|
||||||
*/
|
|
||||||
const CODE_SIZE = 2;
|
|
||||||
/**
|
|
||||||
* Generate code using MessageLite and the lite runtime.
|
|
||||||
*
|
|
||||||
* Generated from protobuf enum <code>LITE_RUNTIME = 3;</code>
|
|
||||||
*/
|
|
||||||
const LITE_RUNTIME = 3;
|
|
||||||
|
|
||||||
private static $valueToName = [
|
|
||||||
self::SPEED => 'SPEED',
|
|
||||||
self::CODE_SIZE => 'CODE_SIZE',
|
|
||||||
self::LITE_RUNTIME => 'LITE_RUNTIME',
|
|
||||||
];
|
|
||||||
|
|
||||||
public static function name($value)
|
|
||||||
{
|
|
||||||
if (!isset(self::$valueToName[$value])) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
||||||
}
|
|
||||||
return self::$valueToName[$value];
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static function value($name)
|
|
||||||
{
|
|
||||||
$const = __CLASS__ . '::' . strtoupper($name);
|
|
||||||
if (!defined($const)) {
|
|
||||||
throw new UnexpectedValueException(sprintf(
|
|
||||||
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
||||||
}
|
|
||||||
return constant($const);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adding a class alias for backwards compatibility with the previous class name.
|
|
||||||
class_alias(OptimizeMode::class, \Google\Protobuf\Internal\FileOptions_OptimizeMode::class);
|
|
||||||
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
<?php
|
|
||||||
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
||||||
# source: google/protobuf/descriptor.proto
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
if (false) {
|
|
||||||
/**
|
|
||||||
* This class is deprecated. Use Google\Protobuf\Internal\FileOptions\OptimizeMode instead.
|
|
||||||
* @deprecated
|
|
||||||
*/
|
|
||||||
class FileOptions_OptimizeMode {}
|
|
||||||
}
|
|
||||||
class_exists(FileOptions\OptimizeMode::class);
|
|
||||||
@trigger_error('Google\Protobuf\Internal\FileOptions_OptimizeMode is deprecated and will be removed in the next major release. Use Google\Protobuf\Internal\FileOptions\OptimizeMode instead', E_USER_DEPRECATED);
|
|
||||||
|
|
||||||
@ -1,47 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
class GPBDecodeException extends \Exception
|
|
||||||
{
|
|
||||||
public function __construct(
|
|
||||||
$message,
|
|
||||||
$code = 0,
|
|
||||||
\Exception $previous = null)
|
|
||||||
{
|
|
||||||
parent::__construct(
|
|
||||||
"Error occurred during parsing: " . $message,
|
|
||||||
$code,
|
|
||||||
$previous);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,304 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Protocol Buffers - Google's data interchange format
|
|
||||||
// Copyright 2008 Google Inc. All rights reserved.
|
|
||||||
// https://developers.google.com/protocol-buffers/
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
namespace Google\Protobuf\Internal;
|
|
||||||
|
|
||||||
class GPBJsonWire
|
|
||||||
{
|
|
||||||
|
|
||||||
public static function serializeFieldToStream(
|
|
||||||
$value,
|
|
||||||
$field,
|
|
||||||
&$output, $has_field_name = true)
|
|
||||||
{
|
|
||||||
if ($has_field_name) {
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
$field_name = GPBJsonWire::formatFieldName($field);
|
|
||||||
$output->writeRaw($field_name, strlen($field_name));
|
|
||||||
$output->writeRaw("\":", 2);
|
|
||||||
}
|
|
||||||
return static::serializeFieldValueToStream(
|
|
||||||
$value,
|
|
||||||
$field,
|
|
||||||
$output,
|
|
||||||
!$has_field_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function serializeFieldValueToStream(
|
|
||||||
$values,
|
|
||||||
$field,
|
|
||||||
&$output,
|
|
||||||
$is_well_known = false)
|
|
||||||
{
|
|
||||||
if ($field->isMap()) {
|
|
||||||
$output->writeRaw("{", 1);
|
|
||||||
$first = true;
|
|
||||||
$map_entry = $field->getMessageType();
|
|
||||||
$key_field = $map_entry->getFieldByNumber(1);
|
|
||||||
$value_field = $map_entry->getFieldByNumber(2);
|
|
||||||
|
|
||||||
switch ($key_field->getType()) {
|
|
||||||
case GPBType::STRING:
|
|
||||||
case GPBType::SFIXED64:
|
|
||||||
case GPBType::INT64:
|
|
||||||
case GPBType::SINT64:
|
|
||||||
case GPBType::FIXED64:
|
|
||||||
case GPBType::UINT64:
|
|
||||||
$additional_quote = false;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
$additional_quote = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach ($values as $key => $value) {
|
|
||||||
if ($first) {
|
|
||||||
$first = false;
|
|
||||||
} else {
|
|
||||||
$output->writeRaw(",", 1);
|
|
||||||
}
|
|
||||||
if ($additional_quote) {
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
}
|
|
||||||
if (!static::serializeSingularFieldValueToStream(
|
|
||||||
$key,
|
|
||||||
$key_field,
|
|
||||||
$output,
|
|
||||||
$is_well_known)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if ($additional_quote) {
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
}
|
|
||||||
$output->writeRaw(":", 1);
|
|
||||||
if (!static::serializeSingularFieldValueToStream(
|
|
||||||
$value,
|
|
||||||
$value_field,
|
|
||||||
$output,
|
|
||||||
$is_well_known)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$output->writeRaw("}", 1);
|
|
||||||
return true;
|
|
||||||
} elseif ($field->isRepeated()) {
|
|
||||||
$output->writeRaw("[", 1);
|
|
||||||
$first = true;
|
|
||||||
foreach ($values as $value) {
|
|
||||||
if ($first) {
|
|
||||||
$first = false;
|
|
||||||
} else {
|
|
||||||
$output->writeRaw(",", 1);
|
|
||||||
}
|
|
||||||
if (!static::serializeSingularFieldValueToStream(
|
|
||||||
$value,
|
|
||||||
$field,
|
|
||||||
$output,
|
|
||||||
$is_well_known)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$output->writeRaw("]", 1);
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return static::serializeSingularFieldValueToStream(
|
|
||||||
$values,
|
|
||||||
$field,
|
|
||||||
$output,
|
|
||||||
$is_well_known);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static function serializeSingularFieldValueToStream(
|
|
||||||
$value,
|
|
||||||
$field,
|
|
||||||
&$output, $is_well_known = false)
|
|
||||||
{
|
|
||||||
switch ($field->getType()) {
|
|
||||||
case GPBType::SFIXED32:
|
|
||||||
case GPBType::SINT32:
|
|
||||||
case GPBType::INT32:
|
|
||||||
$str_value = strval($value);
|
|
||||||
$output->writeRaw($str_value, strlen($str_value));
|
|
||||||
break;
|
|
||||||
case GPBType::FIXED32:
|
|
||||||
case GPBType::UINT32:
|
|
||||||
if ($value < 0) {
|
|
||||||
$value = bcadd($value, "4294967296");
|
|
||||||
}
|
|
||||||
$str_value = strval($value);
|
|
||||||
$output->writeRaw($str_value, strlen($str_value));
|
|
||||||
break;
|
|
||||||
case GPBType::FIXED64:
|
|
||||||
case GPBType::UINT64:
|
|
||||||
if ($value < 0) {
|
|
||||||
$value = bcadd($value, "18446744073709551616");
|
|
||||||
}
|
|
||||||
// Intentional fall through.
|
|
||||||
case GPBType::SFIXED64:
|
|
||||||
case GPBType::INT64:
|
|
||||||
case GPBType::SINT64:
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
$str_value = strval($value);
|
|
||||||
$output->writeRaw($str_value, strlen($str_value));
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
break;
|
|
||||||
case GPBType::FLOAT:
|
|
||||||
if (is_nan($value)) {
|
|
||||||
$str_value = "\"NaN\"";
|
|
||||||
} elseif ($value === INF) {
|
|
||||||
$str_value = "\"Infinity\"";
|
|
||||||
} elseif ($value === -INF) {
|
|
||||||
$str_value = "\"-Infinity\"";
|
|
||||||
} else {
|
|
||||||
$str_value = sprintf("%.8g", $value);
|
|
||||||
}
|
|
||||||
$output->writeRaw($str_value, strlen($str_value));
|
|
||||||
break;
|
|
||||||
case GPBType::DOUBLE:
|
|
||||||
if (is_nan($value)) {
|
|
||||||
$str_value = "\"NaN\"";
|
|
||||||
} elseif ($value === INF) {
|
|
||||||
$str_value = "\"Infinity\"";
|
|
||||||
} elseif ($value === -INF) {
|
|
||||||
$str_value = "\"-Infinity\"";
|
|
||||||
} else {
|
|
||||||
$str_value = sprintf("%.17g", $value);
|
|
||||||
}
|
|
||||||
$output->writeRaw($str_value, strlen($str_value));
|
|
||||||
break;
|
|
||||||
case GPBType::ENUM:
|
|
||||||
$enum_desc = $field->getEnumType();
|
|
||||||
if ($enum_desc->getClass() === "Google\Protobuf\NullValue") {
|
|
||||||
$output->writeRaw("null", 4);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
$enum_value_desc = $enum_desc->getValueByNumber($value);
|
|
||||||
if (!is_null($enum_value_desc)) {
|
|
||||||
$str_value = $enum_value_desc->getName();
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
$output->writeRaw($str_value, strlen($str_value));
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
} else {
|
|
||||||
$str_value = strval($value);
|
|
||||||
$output->writeRaw($str_value, strlen($str_value));
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case GPBType::BOOL:
|
|
||||||
if ($value) {
|
|
||||||
$output->writeRaw("true", 4);
|
|
||||||
} else {
|
|
||||||
$output->writeRaw("false", 5);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case GPBType::BYTES:
|
|
||||||
$bytes_value = base64_encode($value);
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
$output->writeRaw($bytes_value, strlen($bytes_value));
|
|
||||||
$output->writeRaw("\"", 1);
|
|
||||||
break;
|
|
||||||
case GPBType::STRING:
|
|
||||||
$value = json_encode($value, JSON_UNESCAPED_UNICODE);
|
|
||||||
$output->writeRaw($value, strlen($value));
|
|
||||||
break;
|
|
||||||
// case GPBType::GROUP:
|
|
||||||
// echo "GROUP\xA";
|
|
||||||
// trigger_error("Not implemented.", E_ERROR);
|
|
||||||
// break;
|
|
||||||
case GPBType::MESSAGE:
|
|
||||||
$value->serializeToJsonStream($output);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
user_error("Unsupported type.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static function formatFieldName($field)
|
|
||||||
{
|
|
||||||
return $field->getJsonName();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Used for escaping control chars in strings.
|
|
||||||
private static $k_control_char_limit = 0x20;
|
|
||||||
|
|
||||||
private static function jsonNiceEscape($c)
|
|
||||||
{
|
|
||||||
switch ($c) {
|
|
||||||
case '"': return "\\\"";
|
|
||||||
case '\\': return "\\\\";
|
|
||||||
case '/': return "\\/";
|
|
||||||
case '\b': return "\\b";
|
|
||||||
case '\f': return "\\f";
|
|
||||||
case '\n': return "\\n";
|
|
||||||
case '\r': return "\\r";
|
|
||||||
case '\t': return "\\t";
|
|
||||||
default: return NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static function isJsonEscaped($c)
|
|
||||||
{
|
|
||||||
// See RFC 4627.
|
|
||||||
return $c < chr($k_control_char_limit) || $c === "\"" || $c === "\\";
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function escapedJson($value)
|
|
||||||
{
|
|
||||||
$escaped_value = "";
|
|
||||||
$unescaped_run = "";
|
|
||||||
for ($i = 0; $i < strlen($value); $i++) {
|
|
||||||
$c = $value[$i];
|
|
||||||
// Handle escaping.
|
|
||||||
if (static::isJsonEscaped($c)) {
|
|
||||||
// Use a "nice" escape, like \n, if one exists for this
|
|
||||||
// character.
|
|
||||||
$escape = static::jsonNiceEscape($c);
|
|
||||||
if (is_null($escape)) {
|
|
||||||
$escape = "\\u00" . bin2hex($c);
|
|
||||||
}
|
|
||||||
if ($unescaped_run !== "") {
|
|
||||||
$escaped_value .= $unescaped_run;
|
|
||||||
$unescaped_run = "";
|
|
||||||
}
|
|
||||||
$escaped_value .= $escape;
|
|
||||||
} else {
|
|
||||||
if ($unescaped_run === "") {
|
|
||||||
$unescaped_run .= $c;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$escaped_value .= $unescaped_run;
|
|
||||||
return $escaped_value;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user