Home | History | Annotate | Download | only in any
      1 // Code generated by protoc-gen-go. DO NOT EDIT.
      2 // source: google/protobuf/any.proto
      3 
      4 package any
      5 
      6 import proto "github.com/golang/protobuf/proto"
      7 import fmt "fmt"
      8 import math "math"
      9 
     10 // Reference imports to suppress errors if they are not otherwise used.
     11 var _ = proto.Marshal
     12 var _ = fmt.Errorf
     13 var _ = math.Inf
     14 
     15 // This is a compile-time assertion to ensure that this generated file
     16 // is compatible with the proto package it is being compiled against.
     17 // A compilation error at this line likely means your copy of the
     18 // proto package needs to be updated.
     19 const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
     20 
     21 // `Any` contains an arbitrary serialized protocol buffer message along with a
     22 // URL that describes the type of the serialized message.
     23 //
     24 // Protobuf library provides support to pack/unpack Any values in the form
     25 // of utility functions or additional generated methods of the Any type.
     26 //
     27 // Example 1: Pack and unpack a message in C++.
     28 //
     29 //     Foo foo = ...;
     30 //     Any any;
     31 //     any.PackFrom(foo);
     32 //     ...
     33 //     if (any.UnpackTo(&foo)) {
     34 //       ...
     35 //     }
     36 //
     37 // Example 2: Pack and unpack a message in Java.
     38 //
     39 //     Foo foo = ...;
     40 //     Any any = Any.pack(foo);
     41 //     ...
     42 //     if (any.is(Foo.class)) {
     43 //       foo = any.unpack(Foo.class);
     44 //     }
     45 //
     46 //  Example 3: Pack and unpack a message in Python.
     47 //
     48 //     foo = Foo(...)
     49 //     any = Any()
     50 //     any.Pack(foo)
     51 //     ...
     52 //     if any.Is(Foo.DESCRIPTOR):
     53 //       any.Unpack(foo)
     54 //       ...
     55 //
     56 //  Example 4: Pack and unpack a message in Go
     57 //
     58 //      foo := &pb.Foo{...}
     59 //      any, err := ptypes.MarshalAny(foo)
     60 //      ...
     61 //      foo := &pb.Foo{}
     62 //      if err := ptypes.UnmarshalAny(any, foo); err != nil {
     63 //        ...
     64 //      }
     65 //
     66 // The pack methods provided by protobuf library will by default use
     67 // 'type.googleapis.com/full.type.name' as the type URL and the unpack
     68 // methods only use the fully qualified type name after the last '/'
     69 // in the type URL, for example "foo.bar.com/x/y.z" will yield type
     70 // name "y.z".
     71 //
     72 //
     73 // JSON
     74 // ====
     75 // The JSON representation of an `Any` value uses the regular
     76 // representation of the deserialized, embedded message, with an
     77 // additional field `@type` which contains the type URL. Example:
     78 //
     79 //     package google.profile;
     80 //     message Person {
     81 //       string first_name = 1;
     82 //       string last_name = 2;
     83 //     }
     84 //
     85 //     {
     86 //       "@type": "type.googleapis.com/google.profile.Person",
     87 //       "firstName": <string>,
     88 //       "lastName": <string>
     89 //     }
     90 //
     91 // If the embedded message type is well-known and has a custom JSON
     92 // representation, that representation will be embedded adding a field
     93 // `value` which holds the custom JSON in addition to the `@type`
     94 // field. Example (for message [google.protobuf.Duration][]):
     95 //
     96 //     {
     97 //       "@type": "type.googleapis.com/google.protobuf.Duration",
     98 //       "value": "1.212s"
     99 //     }
    100 //
    101 type Any struct {
    102 	// A URL/resource name whose content describes the type of the
    103 	// serialized protocol buffer message.
    104 	//
    105 	// For URLs which use the scheme `http`, `https`, or no scheme, the
    106 	// following restrictions and interpretations apply:
    107 	//
    108 	// * If no scheme is provided, `https` is assumed.
    109 	// * The last segment of the URL's path must represent the fully
    110 	//   qualified name of the type (as in `path/google.protobuf.Duration`).
    111 	//   The name should be in a canonical form (e.g., leading "." is
    112 	//   not accepted).
    113 	// * An HTTP GET on the URL must yield a [google.protobuf.Type][]
    114 	//   value in binary format, or produce an error.
    115 	// * Applications are allowed to cache lookup results based on the
    116 	//   URL, or have them precompiled into a binary to avoid any
    117 	//   lookup. Therefore, binary compatibility needs to be preserved
    118 	//   on changes to types. (Use versioned type names to manage
    119 	//   breaking changes.)
    120 	//
    121 	// Schemes other than `http`, `https` (or the empty scheme) might be
    122 	// used with implementation specific semantics.
    123 	//
    124 	TypeUrl string `protobuf:"bytes,1,opt,name=type_url,json=typeUrl,proto3" json:"type_url,omitempty"`
    125 	// Must be a valid serialized protocol buffer of the above specified type.
    126 	Value                []byte   `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
    127 	XXX_NoUnkeyedLiteral struct{} `json:"-"`
    128 	XXX_unrecognized     []byte   `json:"-"`
    129 	XXX_sizecache        int32    `json:"-"`
    130 }
    131 
    132 func (m *Any) Reset()         { *m = Any{} }
    133 func (m *Any) String() string { return proto.CompactTextString(m) }
    134 func (*Any) ProtoMessage()    {}
    135 func (*Any) Descriptor() ([]byte, []int) {
    136 	return fileDescriptor_any_744b9ca530f228db, []int{0}
    137 }
    138 func (*Any) XXX_WellKnownType() string { return "Any" }
    139 func (m *Any) XXX_Unmarshal(b []byte) error {
    140 	return xxx_messageInfo_Any.Unmarshal(m, b)
    141 }
    142 func (m *Any) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    143 	return xxx_messageInfo_Any.Marshal(b, m, deterministic)
    144 }
    145 func (dst *Any) XXX_Merge(src proto.Message) {
    146 	xxx_messageInfo_Any.Merge(dst, src)
    147 }
    148 func (m *Any) XXX_Size() int {
    149 	return xxx_messageInfo_Any.Size(m)
    150 }
    151 func (m *Any) XXX_DiscardUnknown() {
    152 	xxx_messageInfo_Any.DiscardUnknown(m)
    153 }
    154 
    155 var xxx_messageInfo_Any proto.InternalMessageInfo
    156 
    157 func (m *Any) GetTypeUrl() string {
    158 	if m != nil {
    159 		return m.TypeUrl
    160 	}
    161 	return ""
    162 }
    163 
    164 func (m *Any) GetValue() []byte {
    165 	if m != nil {
    166 		return m.Value
    167 	}
    168 	return nil
    169 }
    170 
    171 func init() {
    172 	proto.RegisterType((*Any)(nil), "google.protobuf.Any")
    173 }
    174 
    175 func init() { proto.RegisterFile("google/protobuf/any.proto", fileDescriptor_any_744b9ca530f228db) }
    176 
    177 var fileDescriptor_any_744b9ca530f228db = []byte{
    178 	// 185 bytes of a gzipped FileDescriptorProto
    179 	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x4c, 0xcf, 0xcf, 0x4f,
    180 	0xcf, 0x49, 0xd5, 0x2f, 0x28, 0xca, 0x2f, 0xc9, 0x4f, 0x2a, 0x4d, 0xd3, 0x4f, 0xcc, 0xab, 0xd4,
    181 	0x03, 0x73, 0x84, 0xf8, 0x21, 0x52, 0x7a, 0x30, 0x29, 0x25, 0x33, 0x2e, 0x66, 0xc7, 0xbc, 0x4a,
    182 	0x21, 0x49, 0x2e, 0x8e, 0x92, 0xca, 0x82, 0xd4, 0xf8, 0xd2, 0xa2, 0x1c, 0x09, 0x46, 0x05, 0x46,
    183 	0x0d, 0xce, 0x20, 0x76, 0x10, 0x3f, 0xb4, 0x28, 0x47, 0x48, 0x84, 0x8b, 0xb5, 0x2c, 0x31, 0xa7,
    184 	0x34, 0x55, 0x82, 0x49, 0x81, 0x51, 0x83, 0x27, 0x08, 0xc2, 0x71, 0xca, 0xe7, 0x12, 0x4e, 0xce,
    185 	0xcf, 0xd5, 0x43, 0x33, 0xce, 0x89, 0xc3, 0x31, 0xaf, 0x32, 0x00, 0xc4, 0x09, 0x60, 0x8c, 0x52,
    186 	0x4d, 0xcf, 0x2c, 0xc9, 0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xcf, 0xcf, 0x49, 0xcc,
    187 	0x4b, 0x47, 0xb8, 0xa8, 0x00, 0x64, 0x7a, 0x31, 0xc8, 0x61, 0x8b, 0x98, 0x98, 0xdd, 0x03, 0x9c,
    188 	0x56, 0x31, 0xc9, 0xb9, 0x43, 0x8c, 0x0a, 0x80, 0x2a, 0xd1, 0x0b, 0x4f, 0xcd, 0xc9, 0xf1, 0xce,
    189 	0xcb, 0x2f, 0xcf, 0x0b, 0x01, 0x29, 0x4d, 0x62, 0x03, 0xeb, 0x35, 0x06, 0x04, 0x00, 0x00, 0xff,
    190 	0xff, 0x13, 0xf8, 0xe8, 0x42, 0xdd, 0x00, 0x00, 0x00,
    191 }
    192