1// Code generated by protoc-gen-go. DO NOT EDIT.
2// versions:
3// 	protoc-gen-go v1.25.0
4// 	protoc        v3.16.0
5// source: envoy/type/hash_policy.proto
6
7package envoy_type
8
9import (
10	_ "github.com/cncf/xds/go/udpa/annotations"
11	_ "github.com/envoyproxy/protoc-gen-validate/validate"
12	proto "github.com/golang/protobuf/proto"
13	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
14	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
15	reflect "reflect"
16	sync "sync"
17)
18
19const (
20	// Verify that this generated code is sufficiently up-to-date.
21	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
22	// Verify that runtime/protoimpl is sufficiently up-to-date.
23	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
24)
25
26// This is a compile-time assertion that a sufficiently up-to-date version
27// of the legacy proto package is being used.
28const _ = proto.ProtoPackageIsVersion4
29
30// Specifies the hash policy
31type HashPolicy struct {
32	state         protoimpl.MessageState
33	sizeCache     protoimpl.SizeCache
34	unknownFields protoimpl.UnknownFields
35
36	// Types that are assignable to PolicySpecifier:
37	//	*HashPolicy_SourceIp_
38	PolicySpecifier isHashPolicy_PolicySpecifier `protobuf_oneof:"policy_specifier"`
39}
40
41func (x *HashPolicy) Reset() {
42	*x = HashPolicy{}
43	if protoimpl.UnsafeEnabled {
44		mi := &file_envoy_type_hash_policy_proto_msgTypes[0]
45		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
46		ms.StoreMessageInfo(mi)
47	}
48}
49
50func (x *HashPolicy) String() string {
51	return protoimpl.X.MessageStringOf(x)
52}
53
54func (*HashPolicy) ProtoMessage() {}
55
56func (x *HashPolicy) ProtoReflect() protoreflect.Message {
57	mi := &file_envoy_type_hash_policy_proto_msgTypes[0]
58	if protoimpl.UnsafeEnabled && x != nil {
59		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
60		if ms.LoadMessageInfo() == nil {
61			ms.StoreMessageInfo(mi)
62		}
63		return ms
64	}
65	return mi.MessageOf(x)
66}
67
68// Deprecated: Use HashPolicy.ProtoReflect.Descriptor instead.
69func (*HashPolicy) Descriptor() ([]byte, []int) {
70	return file_envoy_type_hash_policy_proto_rawDescGZIP(), []int{0}
71}
72
73func (m *HashPolicy) GetPolicySpecifier() isHashPolicy_PolicySpecifier {
74	if m != nil {
75		return m.PolicySpecifier
76	}
77	return nil
78}
79
80func (x *HashPolicy) GetSourceIp() *HashPolicy_SourceIp {
81	if x, ok := x.GetPolicySpecifier().(*HashPolicy_SourceIp_); ok {
82		return x.SourceIp
83	}
84	return nil
85}
86
87type isHashPolicy_PolicySpecifier interface {
88	isHashPolicy_PolicySpecifier()
89}
90
91type HashPolicy_SourceIp_ struct {
92	SourceIp *HashPolicy_SourceIp `protobuf:"bytes,1,opt,name=source_ip,json=sourceIp,proto3,oneof"`
93}
94
95func (*HashPolicy_SourceIp_) isHashPolicy_PolicySpecifier() {}
96
97// The source IP will be used to compute the hash used by hash-based load balancing
98// algorithms.
99type HashPolicy_SourceIp struct {
100	state         protoimpl.MessageState
101	sizeCache     protoimpl.SizeCache
102	unknownFields protoimpl.UnknownFields
103}
104
105func (x *HashPolicy_SourceIp) Reset() {
106	*x = HashPolicy_SourceIp{}
107	if protoimpl.UnsafeEnabled {
108		mi := &file_envoy_type_hash_policy_proto_msgTypes[1]
109		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
110		ms.StoreMessageInfo(mi)
111	}
112}
113
114func (x *HashPolicy_SourceIp) String() string {
115	return protoimpl.X.MessageStringOf(x)
116}
117
118func (*HashPolicy_SourceIp) ProtoMessage() {}
119
120func (x *HashPolicy_SourceIp) ProtoReflect() protoreflect.Message {
121	mi := &file_envoy_type_hash_policy_proto_msgTypes[1]
122	if protoimpl.UnsafeEnabled && x != nil {
123		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
124		if ms.LoadMessageInfo() == nil {
125			ms.StoreMessageInfo(mi)
126		}
127		return ms
128	}
129	return mi.MessageOf(x)
130}
131
132// Deprecated: Use HashPolicy_SourceIp.ProtoReflect.Descriptor instead.
133func (*HashPolicy_SourceIp) Descriptor() ([]byte, []int) {
134	return file_envoy_type_hash_policy_proto_rawDescGZIP(), []int{0, 0}
135}
136
137var File_envoy_type_hash_policy_proto protoreflect.FileDescriptor
138
139var file_envoy_type_hash_policy_proto_rawDesc = []byte{
140	0x0a, 0x1c, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x68, 0x61, 0x73,
141	0x68, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a,
142	0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61,
143	0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61,
144	0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64,
145	0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f,
146	0x74, 0x6f, 0x22, 0x71, 0x0a, 0x0a, 0x48, 0x61, 0x73, 0x68, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
147	0x12, 0x3e, 0x0a, 0x09, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x70, 0x18, 0x01, 0x20,
148	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65,
149	0x2e, 0x48, 0x61, 0x73, 0x68, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x53, 0x6f, 0x75, 0x72,
150	0x63, 0x65, 0x49, 0x70, 0x48, 0x00, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x70,
151	0x1a, 0x0a, 0x0a, 0x08, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x70, 0x42, 0x17, 0x0a, 0x10,
152	0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72,
153	0x12, 0x03, 0xf8, 0x42, 0x01, 0x42, 0x35, 0x0a, 0x18, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f,
154	0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70,
155	0x65, 0x42, 0x0f, 0x48, 0x61, 0x73, 0x68, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x72, 0x6f,
156	0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x01, 0x62, 0x06, 0x70, 0x72,
157	0x6f, 0x74, 0x6f, 0x33,
158}
159
160var (
161	file_envoy_type_hash_policy_proto_rawDescOnce sync.Once
162	file_envoy_type_hash_policy_proto_rawDescData = file_envoy_type_hash_policy_proto_rawDesc
163)
164
165func file_envoy_type_hash_policy_proto_rawDescGZIP() []byte {
166	file_envoy_type_hash_policy_proto_rawDescOnce.Do(func() {
167		file_envoy_type_hash_policy_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_type_hash_policy_proto_rawDescData)
168	})
169	return file_envoy_type_hash_policy_proto_rawDescData
170}
171
172var file_envoy_type_hash_policy_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
173var file_envoy_type_hash_policy_proto_goTypes = []interface{}{
174	(*HashPolicy)(nil),          // 0: envoy.type.HashPolicy
175	(*HashPolicy_SourceIp)(nil), // 1: envoy.type.HashPolicy.SourceIp
176}
177var file_envoy_type_hash_policy_proto_depIdxs = []int32{
178	1, // 0: envoy.type.HashPolicy.source_ip:type_name -> envoy.type.HashPolicy.SourceIp
179	1, // [1:1] is the sub-list for method output_type
180	1, // [1:1] is the sub-list for method input_type
181	1, // [1:1] is the sub-list for extension type_name
182	1, // [1:1] is the sub-list for extension extendee
183	0, // [0:1] is the sub-list for field type_name
184}
185
186func init() { file_envoy_type_hash_policy_proto_init() }
187func file_envoy_type_hash_policy_proto_init() {
188	if File_envoy_type_hash_policy_proto != nil {
189		return
190	}
191	if !protoimpl.UnsafeEnabled {
192		file_envoy_type_hash_policy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
193			switch v := v.(*HashPolicy); i {
194			case 0:
195				return &v.state
196			case 1:
197				return &v.sizeCache
198			case 2:
199				return &v.unknownFields
200			default:
201				return nil
202			}
203		}
204		file_envoy_type_hash_policy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
205			switch v := v.(*HashPolicy_SourceIp); i {
206			case 0:
207				return &v.state
208			case 1:
209				return &v.sizeCache
210			case 2:
211				return &v.unknownFields
212			default:
213				return nil
214			}
215		}
216	}
217	file_envoy_type_hash_policy_proto_msgTypes[0].OneofWrappers = []interface{}{
218		(*HashPolicy_SourceIp_)(nil),
219	}
220	type x struct{}
221	out := protoimpl.TypeBuilder{
222		File: protoimpl.DescBuilder{
223			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
224			RawDescriptor: file_envoy_type_hash_policy_proto_rawDesc,
225			NumEnums:      0,
226			NumMessages:   2,
227			NumExtensions: 0,
228			NumServices:   0,
229		},
230		GoTypes:           file_envoy_type_hash_policy_proto_goTypes,
231		DependencyIndexes: file_envoy_type_hash_policy_proto_depIdxs,
232		MessageInfos:      file_envoy_type_hash_policy_proto_msgTypes,
233	}.Build()
234	File_envoy_type_hash_policy_proto = out.File
235	file_envoy_type_hash_policy_proto_rawDesc = nil
236	file_envoy_type_hash_policy_proto_goTypes = nil
237	file_envoy_type_hash_policy_proto_depIdxs = nil
238}
239