1*1b3f573fSAndroid Build Coastguard Worker<?php 2*1b3f573fSAndroid Build Coastguard Worker# Generated by the protocol buffer compiler. DO NOT EDIT! 3*1b3f573fSAndroid Build Coastguard Worker# source: google/protobuf/any.proto 4*1b3f573fSAndroid Build Coastguard Worker 5*1b3f573fSAndroid Build Coastguard Workernamespace Google\Protobuf; 6*1b3f573fSAndroid Build Coastguard Worker 7*1b3f573fSAndroid Build Coastguard Workeruse Google\Protobuf\Internal\GPBType; 8*1b3f573fSAndroid Build Coastguard Workeruse Google\Protobuf\Internal\RepeatedField; 9*1b3f573fSAndroid Build Coastguard Workeruse Google\Protobuf\Internal\GPBUtil; 10*1b3f573fSAndroid Build Coastguard Worker 11*1b3f573fSAndroid Build Coastguard Worker/** 12*1b3f573fSAndroid Build Coastguard Worker * `Any` contains an arbitrary serialized protocol buffer message along with a 13*1b3f573fSAndroid Build Coastguard Worker * URL that describes the type of the serialized message. 14*1b3f573fSAndroid Build Coastguard Worker * Protobuf library provides support to pack/unpack Any values in the form 15*1b3f573fSAndroid Build Coastguard Worker * of utility functions or additional generated methods of the Any type. 16*1b3f573fSAndroid Build Coastguard Worker * Example 1: Pack and unpack a message in C++. 17*1b3f573fSAndroid Build Coastguard Worker * Foo foo = ...; 18*1b3f573fSAndroid Build Coastguard Worker * Any any; 19*1b3f573fSAndroid Build Coastguard Worker * any.PackFrom(foo); 20*1b3f573fSAndroid Build Coastguard Worker * ... 21*1b3f573fSAndroid Build Coastguard Worker * if (any.UnpackTo(&foo)) { 22*1b3f573fSAndroid Build Coastguard Worker * ... 23*1b3f573fSAndroid Build Coastguard Worker * } 24*1b3f573fSAndroid Build Coastguard Worker * Example 2: Pack and unpack a message in Java. 25*1b3f573fSAndroid Build Coastguard Worker * Foo foo = ...; 26*1b3f573fSAndroid Build Coastguard Worker * Any any = Any.pack(foo); 27*1b3f573fSAndroid Build Coastguard Worker * ... 28*1b3f573fSAndroid Build Coastguard Worker * if (any.is(Foo.class)) { 29*1b3f573fSAndroid Build Coastguard Worker * foo = any.unpack(Foo.class); 30*1b3f573fSAndroid Build Coastguard Worker * } 31*1b3f573fSAndroid Build Coastguard Worker * Example 3: Pack and unpack a message in Python. 32*1b3f573fSAndroid Build Coastguard Worker * foo = Foo(...) 33*1b3f573fSAndroid Build Coastguard Worker * any = Any() 34*1b3f573fSAndroid Build Coastguard Worker * any.Pack(foo) 35*1b3f573fSAndroid Build Coastguard Worker * ... 36*1b3f573fSAndroid Build Coastguard Worker * if any.Is(Foo.DESCRIPTOR): 37*1b3f573fSAndroid Build Coastguard Worker * any.Unpack(foo) 38*1b3f573fSAndroid Build Coastguard Worker * ... 39*1b3f573fSAndroid Build Coastguard Worker * Example 4: Pack and unpack a message in Go 40*1b3f573fSAndroid Build Coastguard Worker * foo := &pb.Foo{...} 41*1b3f573fSAndroid Build Coastguard Worker * any, err := anypb.New(foo) 42*1b3f573fSAndroid Build Coastguard Worker * if err != nil { 43*1b3f573fSAndroid Build Coastguard Worker * ... 44*1b3f573fSAndroid Build Coastguard Worker * } 45*1b3f573fSAndroid Build Coastguard Worker * ... 46*1b3f573fSAndroid Build Coastguard Worker * foo := &pb.Foo{} 47*1b3f573fSAndroid Build Coastguard Worker * if err := any.UnmarshalTo(foo); err != nil { 48*1b3f573fSAndroid Build Coastguard Worker * ... 49*1b3f573fSAndroid Build Coastguard Worker * } 50*1b3f573fSAndroid Build Coastguard Worker * The pack methods provided by protobuf library will by default use 51*1b3f573fSAndroid Build Coastguard Worker * 'type.googleapis.com/full.type.name' as the type URL and the unpack 52*1b3f573fSAndroid Build Coastguard Worker * methods only use the fully qualified type name after the last '/' 53*1b3f573fSAndroid Build Coastguard Worker * in the type URL, for example "foo.bar.com/x/y.z" will yield type 54*1b3f573fSAndroid Build Coastguard Worker * name "y.z". 55*1b3f573fSAndroid Build Coastguard Worker * JSON 56*1b3f573fSAndroid Build Coastguard Worker * The JSON representation of an `Any` value uses the regular 57*1b3f573fSAndroid Build Coastguard Worker * representation of the deserialized, embedded message, with an 58*1b3f573fSAndroid Build Coastguard Worker * additional field `@type` which contains the type URL. Example: 59*1b3f573fSAndroid Build Coastguard Worker * package google.profile; 60*1b3f573fSAndroid Build Coastguard Worker * message Person { 61*1b3f573fSAndroid Build Coastguard Worker * string first_name = 1; 62*1b3f573fSAndroid Build Coastguard Worker * string last_name = 2; 63*1b3f573fSAndroid Build Coastguard Worker * } 64*1b3f573fSAndroid Build Coastguard Worker * { 65*1b3f573fSAndroid Build Coastguard Worker * "@type": "type.googleapis.com/google.profile.Person", 66*1b3f573fSAndroid Build Coastguard Worker * "firstName": <string>, 67*1b3f573fSAndroid Build Coastguard Worker * "lastName": <string> 68*1b3f573fSAndroid Build Coastguard Worker * } 69*1b3f573fSAndroid Build Coastguard Worker * If the embedded message type is well-known and has a custom JSON 70*1b3f573fSAndroid Build Coastguard Worker * representation, that representation will be embedded adding a field 71*1b3f573fSAndroid Build Coastguard Worker * `value` which holds the custom JSON in addition to the `@type` 72*1b3f573fSAndroid Build Coastguard Worker * field. Example (for message [google.protobuf.Duration][]): 73*1b3f573fSAndroid Build Coastguard Worker * { 74*1b3f573fSAndroid Build Coastguard Worker * "@type": "type.googleapis.com/google.protobuf.Duration", 75*1b3f573fSAndroid Build Coastguard Worker * "value": "1.212s" 76*1b3f573fSAndroid Build Coastguard Worker * } 77*1b3f573fSAndroid Build Coastguard Worker * 78*1b3f573fSAndroid Build Coastguard Worker * Generated from protobuf message <code>google.protobuf.Any</code> 79*1b3f573fSAndroid Build Coastguard Worker */ 80*1b3f573fSAndroid Build Coastguard Workerclass Any extends \Google\Protobuf\Internal\AnyBase 81*1b3f573fSAndroid Build Coastguard Worker{ 82*1b3f573fSAndroid Build Coastguard Worker /** 83*1b3f573fSAndroid Build Coastguard Worker * A URL/resource name that uniquely identifies the type of the serialized 84*1b3f573fSAndroid Build Coastguard Worker * protocol buffer message. This string must contain at least 85*1b3f573fSAndroid Build Coastguard Worker * one "/" character. The last segment of the URL's path must represent 86*1b3f573fSAndroid Build Coastguard Worker * the fully qualified name of the type (as in 87*1b3f573fSAndroid Build Coastguard Worker * `path/google.protobuf.Duration`). The name should be in a canonical form 88*1b3f573fSAndroid Build Coastguard Worker * (e.g., leading "." is not accepted). 89*1b3f573fSAndroid Build Coastguard Worker * In practice, teams usually precompile into the binary all types that they 90*1b3f573fSAndroid Build Coastguard Worker * expect it to use in the context of Any. However, for URLs which use the 91*1b3f573fSAndroid Build Coastguard Worker * scheme `http`, `https`, or no scheme, one can optionally set up a type 92*1b3f573fSAndroid Build Coastguard Worker * server that maps type URLs to message definitions as follows: 93*1b3f573fSAndroid Build Coastguard Worker * * If no scheme is provided, `https` is assumed. 94*1b3f573fSAndroid Build Coastguard Worker * * An HTTP GET on the URL must yield a [google.protobuf.Type][] 95*1b3f573fSAndroid Build Coastguard Worker * value in binary format, or produce an error. 96*1b3f573fSAndroid Build Coastguard Worker * * Applications are allowed to cache lookup results based on the 97*1b3f573fSAndroid Build Coastguard Worker * URL, or have them precompiled into a binary to avoid any 98*1b3f573fSAndroid Build Coastguard Worker * lookup. Therefore, binary compatibility needs to be preserved 99*1b3f573fSAndroid Build Coastguard Worker * on changes to types. (Use versioned type names to manage 100*1b3f573fSAndroid Build Coastguard Worker * breaking changes.) 101*1b3f573fSAndroid Build Coastguard Worker * Note: this functionality is not currently available in the official 102*1b3f573fSAndroid Build Coastguard Worker * protobuf release, and it is not used for type URLs beginning with 103*1b3f573fSAndroid Build Coastguard Worker * type.googleapis.com. 104*1b3f573fSAndroid Build Coastguard Worker * Schemes other than `http`, `https` (or the empty scheme) might be 105*1b3f573fSAndroid Build Coastguard Worker * used with implementation specific semantics. 106*1b3f573fSAndroid Build Coastguard Worker * 107*1b3f573fSAndroid Build Coastguard Worker * Generated from protobuf field <code>string type_url = 1;</code> 108*1b3f573fSAndroid Build Coastguard Worker */ 109*1b3f573fSAndroid Build Coastguard Worker protected $type_url = ''; 110*1b3f573fSAndroid Build Coastguard Worker /** 111*1b3f573fSAndroid Build Coastguard Worker * Must be a valid serialized protocol buffer of the above specified type. 112*1b3f573fSAndroid Build Coastguard Worker * 113*1b3f573fSAndroid Build Coastguard Worker * Generated from protobuf field <code>bytes value = 2;</code> 114*1b3f573fSAndroid Build Coastguard Worker */ 115*1b3f573fSAndroid Build Coastguard Worker protected $value = ''; 116*1b3f573fSAndroid Build Coastguard Worker 117*1b3f573fSAndroid Build Coastguard Worker /** 118*1b3f573fSAndroid Build Coastguard Worker * Constructor. 119*1b3f573fSAndroid Build Coastguard Worker * 120*1b3f573fSAndroid Build Coastguard Worker * @param array $data { 121*1b3f573fSAndroid Build Coastguard Worker * Optional. Data for populating the Message object. 122*1b3f573fSAndroid Build Coastguard Worker * 123*1b3f573fSAndroid Build Coastguard Worker * @type string $type_url 124*1b3f573fSAndroid Build Coastguard Worker * A URL/resource name that uniquely identifies the type of the serialized 125*1b3f573fSAndroid Build Coastguard Worker * protocol buffer message. This string must contain at least 126*1b3f573fSAndroid Build Coastguard Worker * one "/" character. The last segment of the URL's path must represent 127*1b3f573fSAndroid Build Coastguard Worker * the fully qualified name of the type (as in 128*1b3f573fSAndroid Build Coastguard Worker * `path/google.protobuf.Duration`). The name should be in a canonical form 129*1b3f573fSAndroid Build Coastguard Worker * (e.g., leading "." is not accepted). 130*1b3f573fSAndroid Build Coastguard Worker * In practice, teams usually precompile into the binary all types that they 131*1b3f573fSAndroid Build Coastguard Worker * expect it to use in the context of Any. However, for URLs which use the 132*1b3f573fSAndroid Build Coastguard Worker * scheme `http`, `https`, or no scheme, one can optionally set up a type 133*1b3f573fSAndroid Build Coastguard Worker * server that maps type URLs to message definitions as follows: 134*1b3f573fSAndroid Build Coastguard Worker * * If no scheme is provided, `https` is assumed. 135*1b3f573fSAndroid Build Coastguard Worker * * An HTTP GET on the URL must yield a [google.protobuf.Type][] 136*1b3f573fSAndroid Build Coastguard Worker * value in binary format, or produce an error. 137*1b3f573fSAndroid Build Coastguard Worker * * Applications are allowed to cache lookup results based on the 138*1b3f573fSAndroid Build Coastguard Worker * URL, or have them precompiled into a binary to avoid any 139*1b3f573fSAndroid Build Coastguard Worker * lookup. Therefore, binary compatibility needs to be preserved 140*1b3f573fSAndroid Build Coastguard Worker * on changes to types. (Use versioned type names to manage 141*1b3f573fSAndroid Build Coastguard Worker * breaking changes.) 142*1b3f573fSAndroid Build Coastguard Worker * Note: this functionality is not currently available in the official 143*1b3f573fSAndroid Build Coastguard Worker * protobuf release, and it is not used for type URLs beginning with 144*1b3f573fSAndroid Build Coastguard Worker * type.googleapis.com. 145*1b3f573fSAndroid Build Coastguard Worker * Schemes other than `http`, `https` (or the empty scheme) might be 146*1b3f573fSAndroid Build Coastguard Worker * used with implementation specific semantics. 147*1b3f573fSAndroid Build Coastguard Worker * @type string $value 148*1b3f573fSAndroid Build Coastguard Worker * Must be a valid serialized protocol buffer of the above specified type. 149*1b3f573fSAndroid Build Coastguard Worker * } 150*1b3f573fSAndroid Build Coastguard Worker */ 151*1b3f573fSAndroid Build Coastguard Worker public function __construct($data = NULL) { 152*1b3f573fSAndroid Build Coastguard Worker \GPBMetadata\Google\Protobuf\Any::initOnce(); 153*1b3f573fSAndroid Build Coastguard Worker parent::__construct($data); 154*1b3f573fSAndroid Build Coastguard Worker } 155*1b3f573fSAndroid Build Coastguard Worker 156*1b3f573fSAndroid Build Coastguard Worker /** 157*1b3f573fSAndroid Build Coastguard Worker * A URL/resource name that uniquely identifies the type of the serialized 158*1b3f573fSAndroid Build Coastguard Worker * protocol buffer message. This string must contain at least 159*1b3f573fSAndroid Build Coastguard Worker * one "/" character. The last segment of the URL's path must represent 160*1b3f573fSAndroid Build Coastguard Worker * the fully qualified name of the type (as in 161*1b3f573fSAndroid Build Coastguard Worker * `path/google.protobuf.Duration`). The name should be in a canonical form 162*1b3f573fSAndroid Build Coastguard Worker * (e.g., leading "." is not accepted). 163*1b3f573fSAndroid Build Coastguard Worker * In practice, teams usually precompile into the binary all types that they 164*1b3f573fSAndroid Build Coastguard Worker * expect it to use in the context of Any. However, for URLs which use the 165*1b3f573fSAndroid Build Coastguard Worker * scheme `http`, `https`, or no scheme, one can optionally set up a type 166*1b3f573fSAndroid Build Coastguard Worker * server that maps type URLs to message definitions as follows: 167*1b3f573fSAndroid Build Coastguard Worker * * If no scheme is provided, `https` is assumed. 168*1b3f573fSAndroid Build Coastguard Worker * * An HTTP GET on the URL must yield a [google.protobuf.Type][] 169*1b3f573fSAndroid Build Coastguard Worker * value in binary format, or produce an error. 170*1b3f573fSAndroid Build Coastguard Worker * * Applications are allowed to cache lookup results based on the 171*1b3f573fSAndroid Build Coastguard Worker * URL, or have them precompiled into a binary to avoid any 172*1b3f573fSAndroid Build Coastguard Worker * lookup. Therefore, binary compatibility needs to be preserved 173*1b3f573fSAndroid Build Coastguard Worker * on changes to types. (Use versioned type names to manage 174*1b3f573fSAndroid Build Coastguard Worker * breaking changes.) 175*1b3f573fSAndroid Build Coastguard Worker * Note: this functionality is not currently available in the official 176*1b3f573fSAndroid Build Coastguard Worker * protobuf release, and it is not used for type URLs beginning with 177*1b3f573fSAndroid Build Coastguard Worker * type.googleapis.com. 178*1b3f573fSAndroid Build Coastguard Worker * Schemes other than `http`, `https` (or the empty scheme) might be 179*1b3f573fSAndroid Build Coastguard Worker * used with implementation specific semantics. 180*1b3f573fSAndroid Build Coastguard Worker * 181*1b3f573fSAndroid Build Coastguard Worker * Generated from protobuf field <code>string type_url = 1;</code> 182*1b3f573fSAndroid Build Coastguard Worker * @return string 183*1b3f573fSAndroid Build Coastguard Worker */ 184*1b3f573fSAndroid Build Coastguard Worker public function getTypeUrl() 185*1b3f573fSAndroid Build Coastguard Worker { 186*1b3f573fSAndroid Build Coastguard Worker return $this->type_url; 187*1b3f573fSAndroid Build Coastguard Worker } 188*1b3f573fSAndroid Build Coastguard Worker 189*1b3f573fSAndroid Build Coastguard Worker /** 190*1b3f573fSAndroid Build Coastguard Worker * A URL/resource name that uniquely identifies the type of the serialized 191*1b3f573fSAndroid Build Coastguard Worker * protocol buffer message. This string must contain at least 192*1b3f573fSAndroid Build Coastguard Worker * one "/" character. The last segment of the URL's path must represent 193*1b3f573fSAndroid Build Coastguard Worker * the fully qualified name of the type (as in 194*1b3f573fSAndroid Build Coastguard Worker * `path/google.protobuf.Duration`). The name should be in a canonical form 195*1b3f573fSAndroid Build Coastguard Worker * (e.g., leading "." is not accepted). 196*1b3f573fSAndroid Build Coastguard Worker * In practice, teams usually precompile into the binary all types that they 197*1b3f573fSAndroid Build Coastguard Worker * expect it to use in the context of Any. However, for URLs which use the 198*1b3f573fSAndroid Build Coastguard Worker * scheme `http`, `https`, or no scheme, one can optionally set up a type 199*1b3f573fSAndroid Build Coastguard Worker * server that maps type URLs to message definitions as follows: 200*1b3f573fSAndroid Build Coastguard Worker * * If no scheme is provided, `https` is assumed. 201*1b3f573fSAndroid Build Coastguard Worker * * An HTTP GET on the URL must yield a [google.protobuf.Type][] 202*1b3f573fSAndroid Build Coastguard Worker * value in binary format, or produce an error. 203*1b3f573fSAndroid Build Coastguard Worker * * Applications are allowed to cache lookup results based on the 204*1b3f573fSAndroid Build Coastguard Worker * URL, or have them precompiled into a binary to avoid any 205*1b3f573fSAndroid Build Coastguard Worker * lookup. Therefore, binary compatibility needs to be preserved 206*1b3f573fSAndroid Build Coastguard Worker * on changes to types. (Use versioned type names to manage 207*1b3f573fSAndroid Build Coastguard Worker * breaking changes.) 208*1b3f573fSAndroid Build Coastguard Worker * Note: this functionality is not currently available in the official 209*1b3f573fSAndroid Build Coastguard Worker * protobuf release, and it is not used for type URLs beginning with 210*1b3f573fSAndroid Build Coastguard Worker * type.googleapis.com. 211*1b3f573fSAndroid Build Coastguard Worker * Schemes other than `http`, `https` (or the empty scheme) might be 212*1b3f573fSAndroid Build Coastguard Worker * used with implementation specific semantics. 213*1b3f573fSAndroid Build Coastguard Worker * 214*1b3f573fSAndroid Build Coastguard Worker * Generated from protobuf field <code>string type_url = 1;</code> 215*1b3f573fSAndroid Build Coastguard Worker * @param string $var 216*1b3f573fSAndroid Build Coastguard Worker * @return $this 217*1b3f573fSAndroid Build Coastguard Worker */ 218*1b3f573fSAndroid Build Coastguard Worker public function setTypeUrl($var) 219*1b3f573fSAndroid Build Coastguard Worker { 220*1b3f573fSAndroid Build Coastguard Worker GPBUtil::checkString($var, True); 221*1b3f573fSAndroid Build Coastguard Worker $this->type_url = $var; 222*1b3f573fSAndroid Build Coastguard Worker 223*1b3f573fSAndroid Build Coastguard Worker return $this; 224*1b3f573fSAndroid Build Coastguard Worker } 225*1b3f573fSAndroid Build Coastguard Worker 226*1b3f573fSAndroid Build Coastguard Worker /** 227*1b3f573fSAndroid Build Coastguard Worker * Must be a valid serialized protocol buffer of the above specified type. 228*1b3f573fSAndroid Build Coastguard Worker * 229*1b3f573fSAndroid Build Coastguard Worker * Generated from protobuf field <code>bytes value = 2;</code> 230*1b3f573fSAndroid Build Coastguard Worker * @return string 231*1b3f573fSAndroid Build Coastguard Worker */ 232*1b3f573fSAndroid Build Coastguard Worker public function getValue() 233*1b3f573fSAndroid Build Coastguard Worker { 234*1b3f573fSAndroid Build Coastguard Worker return $this->value; 235*1b3f573fSAndroid Build Coastguard Worker } 236*1b3f573fSAndroid Build Coastguard Worker 237*1b3f573fSAndroid Build Coastguard Worker /** 238*1b3f573fSAndroid Build Coastguard Worker * Must be a valid serialized protocol buffer of the above specified type. 239*1b3f573fSAndroid Build Coastguard Worker * 240*1b3f573fSAndroid Build Coastguard Worker * Generated from protobuf field <code>bytes value = 2;</code> 241*1b3f573fSAndroid Build Coastguard Worker * @param string $var 242*1b3f573fSAndroid Build Coastguard Worker * @return $this 243*1b3f573fSAndroid Build Coastguard Worker */ 244*1b3f573fSAndroid Build Coastguard Worker public function setValue($var) 245*1b3f573fSAndroid Build Coastguard Worker { 246*1b3f573fSAndroid Build Coastguard Worker GPBUtil::checkString($var, False); 247*1b3f573fSAndroid Build Coastguard Worker $this->value = $var; 248*1b3f573fSAndroid Build Coastguard Worker 249*1b3f573fSAndroid Build Coastguard Worker return $this; 250*1b3f573fSAndroid Build Coastguard Worker } 251*1b3f573fSAndroid Build Coastguard Worker 252*1b3f573fSAndroid Build Coastguard Worker} 253*1b3f573fSAndroid Build Coastguard Worker 254