Go API Documentation

github.com/TykTechnologies/tyk/coprocess

No package summary is available.

Package

Files: 8. Third party imports: 5. Imports from organisation: 0. Tests: 0. Benchmarks: 0.

Constants

const (
	// Verify that this generated code is sufficiently up-to-date.
	_	= protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_	= protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
const (
	// Unknown is used for error checking and handling of an unrecognised hook type.
	HookType_Unknown	HookType	= 0
	// Pre is executed before request sent to upstream target and before any
	// authentication information is extracted from the header or
	// parameter list of the request. Applies to both keyless and protected
	// APIs.
	HookType_Pre	HookType	= 1
	// Post is executed after authentication, validation, throttling and quota-limiting
	// middleware has been executed, just before the request is proxied upstream. Use this
	// to post-process a request before sending it to upstream API. This is only called
	// when using protected APIs.
	HookType_Post	HookType	= 2
	// PostKeyAuth is executed after authentication, validation, throttling, and quota-limiting
	// middleware has been executed, just before the request is proxied upstream. Use this
	// to post-process a request before sending it to upstream API. This is only called
	// when using protected APIs.
	HookType_PostKeyAuth	HookType	= 3
	// CustomKeyCheck is executed for performing customised authentication.
	HookType_CustomKeyCheck	HookType	= 4
	// Response is executed after the upstream API replies. The arguments passed to this hook include
	// both the request and response data. Use this to modify the HTTP response before it’s
	// sent to the client. This hook also receives the request object, the session object,
	// the metadata and API definition associated with the request.
	HookType_Response	HookType	= 5
)
const (
	Dispatcher_Dispatch_FullMethodName	= "/coprocess.Dispatcher/Dispatch"
	Dispatcher_DispatchEvent_FullMethodName	= "/coprocess.Dispatcher/DispatchEvent"
)

Vars

Dispatcher_ServiceDesc is the grpc.ServiceDesc for Dispatcher service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

var Dispatcher_ServiceDesc = grpc.ServiceDesc{
	ServiceName:	"coprocess.Dispatcher",
	HandlerType:	(*DispatcherServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName:	"Dispatch",
			Handler:	_Dispatcher_Dispatch_Handler,
		},
		{
			MethodName:	"DispatchEvent",
			Handler:	_Dispatcher_DispatchEvent_Handler,
		},
	},
	Streams:	[]grpc.StreamDesc{},
	Metadata:	"coprocess_object.proto",
}
var File_coprocess_common_proto protoreflect.FileDescriptor
var File_coprocess_mini_request_object_proto protoreflect.FileDescriptor
var File_coprocess_object_proto protoreflect.FileDescriptor
var File_coprocess_response_object_proto protoreflect.FileDescriptor
var File_coprocess_return_overrides_proto protoreflect.FileDescriptor
var File_coprocess_session_state_proto protoreflect.FileDescriptor
var (
	file_coprocess_session_state_proto_rawDescOnce	sync.Once
	file_coprocess_session_state_proto_rawDescData	= file_coprocess_session_state_proto_rawDesc
)
var (
	HookType_name	= map[int32]string{
		0:	"Unknown",
		1:	"Pre",
		2:	"Post",
		3:	"PostKeyAuth",
		4:	"CustomKeyCheck",
		5:	"Response",
	}
	HookType_value	= map[string]int32{
		"Unknown":		0,
		"Pre":			1,
		"Post":			2,
		"PostKeyAuth":		3,
		"CustomKeyCheck":	4,
		"Response":		5,
	}
)
var (
	file_coprocess_mini_request_object_proto_rawDescOnce	sync.Once
	file_coprocess_mini_request_object_proto_rawDescData	= file_coprocess_mini_request_object_proto_rawDesc
)
var (
	file_coprocess_common_proto_rawDescOnce	sync.Once
	file_coprocess_common_proto_rawDescData	= file_coprocess_common_proto_rawDesc
)
var (
	file_coprocess_return_overrides_proto_rawDescOnce	sync.Once
	file_coprocess_return_overrides_proto_rawDescData	= file_coprocess_return_overrides_proto_rawDesc
)
var (
	file_coprocess_response_object_proto_rawDescOnce	sync.Once
	file_coprocess_response_object_proto_rawDescData	= file_coprocess_response_object_proto_rawDesc
)
var (
	file_coprocess_object_proto_rawDescOnce	sync.Once
	file_coprocess_object_proto_rawDescData	= file_coprocess_object_proto_rawDesc
)
var file_coprocess_common_proto_depIdxs = []int32{
	0,	// [0:0] is the sub-list for method output_type
	0,	// [0:0] is the sub-list for method input_type
	0,	// [0:0] is the sub-list for extension type_name
	0,	// [0:0] is the sub-list for extension extendee
	0,	// [0:0] is the sub-list for field type_name
}
var file_coprocess_common_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_coprocess_common_proto_goTypes = []interface{}{
	(HookType)(0),		// 0: coprocess.HookType
	(*StringSlice)(nil),	// 1: coprocess.StringSlice
}
var file_coprocess_common_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_coprocess_common_proto_rawDesc = []byte{
	0x0a, 0x16, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d,
	0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63,
	0x65, 0x73, 0x73, 0x22, 0x23, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x6c, 0x69,
	0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2a, 0x5d, 0x0a, 0x08, 0x48, 0x6f, 0x6f, 0x6b,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10,
	0x00, 0x12, 0x07, 0x0a, 0x03, 0x50, 0x72, 0x65, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x6f,
	0x73, 0x74, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x41,
	0x75, 0x74, 0x68, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4b,
	0x65, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x10, 0x05, 0x42, 0x0c, 0x5a, 0x0a, 0x2f, 0x63, 0x6f, 0x70, 0x72,
	0x6f, 0x63, 0x65, 0x73, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var file_coprocess_mini_request_object_proto_depIdxs = []int32{
	1,	// 0: coprocess.MiniRequestObject.headers:type_name -> coprocess.MiniRequestObject.HeadersEntry
	2,	// 1: coprocess.MiniRequestObject.set_headers:type_name -> coprocess.MiniRequestObject.SetHeadersEntry
	3,	// 2: coprocess.MiniRequestObject.params:type_name -> coprocess.MiniRequestObject.ParamsEntry
	4,	// 3: coprocess.MiniRequestObject.add_params:type_name -> coprocess.MiniRequestObject.AddParamsEntry
	5,	// 4: coprocess.MiniRequestObject.extended_params:type_name -> coprocess.MiniRequestObject.ExtendedParamsEntry
	6,	// 5: coprocess.MiniRequestObject.return_overrides:type_name -> coprocess.ReturnOverrides
	6,	// [6:6] is the sub-list for method output_type
	6,	// [6:6] is the sub-list for method input_type
	6,	// [6:6] is the sub-list for extension type_name
	6,	// [6:6] is the sub-list for extension extendee
	0,	// [0:6] is the sub-list for field type_name
}
var file_coprocess_mini_request_object_proto_goTypes = []interface{}{
	(*MiniRequestObject)(nil),	// 0: coprocess.MiniRequestObject
	nil,				// 1: coprocess.MiniRequestObject.HeadersEntry
	nil,				// 2: coprocess.MiniRequestObject.SetHeadersEntry
	nil,				// 3: coprocess.MiniRequestObject.ParamsEntry
	nil,				// 4: coprocess.MiniRequestObject.AddParamsEntry
	nil,				// 5: coprocess.MiniRequestObject.ExtendedParamsEntry
	(*ReturnOverrides)(nil),	// 6: coprocess.ReturnOverrides
}
var file_coprocess_mini_request_object_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_coprocess_mini_request_object_proto_rawDesc = []byte{
	0x0a, 0x23, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x69, 0x6e, 0x69,
	0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
	0x1a, 0x20, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x65, 0x74, 0x75,
	0x72, 0x6e, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x22, 0xec, 0x07, 0x0a, 0x11, 0x4d, 0x69, 0x6e, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x43, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64,
	0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6f, 0x70, 0x72,
	0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x4d, 0x0a,
	0x0b, 0x73, 0x65, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4d,
	0x69, 0x6e, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
	0x2e, 0x53, 0x65, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
	0x52, 0x0a, 0x73, 0x65, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e,
	0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x03,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x65, 0x61, 0x64,
	0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x40, 0x0a, 0x06, 0x70, 0x61, 0x72,
	0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6f, 0x70, 0x72,
	0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x6e,
	0x74, 0x72, 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x4a, 0x0a, 0x0a, 0x61,
	0x64, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x2b, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4d, 0x69, 0x6e, 0x69,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x41, 0x64,
	0x64, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x61, 0x64,
	0x64, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x59, 0x0a, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x6e,
	0x64, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x30, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4d, 0x69, 0x6e,
	0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x45,
	0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x52, 0x0e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x72, 0x61,
	0x6d, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x72,
	0x61, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74,
	0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x45, 0x0a, 0x10, 0x72, 0x65, 0x74, 0x75, 0x72,
	0x6e, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1a, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x52, 0x65,
	0x74, 0x75, 0x72, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x52, 0x0f, 0x72,
	0x65, 0x74, 0x75, 0x72, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x16,
	0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x55, 0x72, 0x69, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d,
	0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12,
	0x19, 0x0a, 0x08, 0x72, 0x61, 0x77, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x07, 0x72, 0x61, 0x77, 0x42, 0x6f, 0x64, 0x79, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65,
	0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3d, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x48, 0x65, 0x61,
	0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
	0x1a, 0x3c, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x41,
	0x0a, 0x13, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
	0x01, 0x42, 0x0c, 0x5a, 0x0a, 0x2f, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x62,
	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var file_coprocess_object_proto_depIdxs = []int32{
	5,	// 0: coprocess.Object.hook_type:type_name -> coprocess.HookType
	6,	// 1: coprocess.Object.request:type_name -> coprocess.MiniRequestObject
	7,	// 2: coprocess.Object.session:type_name -> coprocess.SessionState
	3,	// 3: coprocess.Object.metadata:type_name -> coprocess.Object.MetadataEntry
	4,	// 4: coprocess.Object.spec:type_name -> coprocess.Object.SpecEntry
	8,	// 5: coprocess.Object.response:type_name -> coprocess.ResponseObject
	0,	// 6: coprocess.Dispatcher.Dispatch:input_type -> coprocess.Object
	1,	// 7: coprocess.Dispatcher.DispatchEvent:input_type -> coprocess.Event
	0,	// 8: coprocess.Dispatcher.Dispatch:output_type -> coprocess.Object
	2,	// 9: coprocess.Dispatcher.DispatchEvent:output_type -> coprocess.EventReply
	8,	// [8:10] is the sub-list for method output_type
	6,	// [6:8] is the sub-list for method input_type
	6,	// [6:6] is the sub-list for extension type_name
	6,	// [6:6] is the sub-list for extension extendee
	0,	// [0:6] is the sub-list for field type_name
}
var file_coprocess_object_proto_goTypes = []interface{}{
	(*Object)(nil),			// 0: coprocess.Object
	(*Event)(nil),			// 1: coprocess.Event
	(*EventReply)(nil),		// 2: coprocess.EventReply
	nil,				// 3: coprocess.Object.MetadataEntry
	nil,				// 4: coprocess.Object.SpecEntry
	(HookType)(0),			// 5: coprocess.HookType
	(*MiniRequestObject)(nil),	// 6: coprocess.MiniRequestObject
	(*SessionState)(nil),		// 7: coprocess.SessionState
	(*ResponseObject)(nil),		// 8: coprocess.ResponseObject
}
var file_coprocess_object_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_coprocess_object_proto_rawDesc = []byte{
	0x0a, 0x16, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6f, 0x62, 0x6a, 0x65,
	0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63,
	0x65, 0x73, 0x73, 0x1a, 0x23, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d,
	0x69, 0x6e, 0x69, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6f, 0x62, 0x6a, 0x65,
	0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x6f, 0x62, 0x6a,
	0x65, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x63, 0x6f, 0x70, 0x72, 0x6f,
	0x63, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x22, 0xdd, 0x03, 0x0a, 0x06, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x30, 0x0a, 0x09, 0x68,
	0x6f, 0x6f, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13,
	0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x54,
	0x79, 0x70, 0x65, 0x52, 0x08, 0x68, 0x6f, 0x6f, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a,
	0x09, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x68, 0x6f, 0x6f, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x72, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f,
	0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x31, 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e,
	0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x07, 0x73, 0x65,
	0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63,
	0x65, 0x73, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64,
	0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x12, 0x2f, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1b, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4f, 0x62, 0x6a,
	0x65, 0x63, 0x74, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x73,
	0x70, 0x65, 0x63, 0x12, 0x35, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73,
	0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
	0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65,
	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x53, 0x70, 0x65, 0x63, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
	0x22, 0x21, 0x0a, 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79,
	0x6c, 0x6f, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c,
	0x6f, 0x61, 0x64, 0x22, 0x0c, 0x0a, 0x0a, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c,
	0x79, 0x32, 0x7c, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12,
	0x32, 0x0a, 0x08, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x12, 0x11, 0x2e, 0x63, 0x6f,
	0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x11,
	0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63,
	0x74, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0d, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x45,
	0x76, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
	0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65,
	0x73, 0x73, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x42,
	0x0c, 0x5a, 0x0a, 0x2f, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x62, 0x06, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var file_coprocess_response_object_proto_depIdxs = []int32{
	2,	// 0: coprocess.ResponseObject.headers:type_name -> coprocess.ResponseObject.HeadersEntry
	1,	// 1: coprocess.ResponseObject.multivalue_headers:type_name -> coprocess.Header
	2,	// [2:2] is the sub-list for method output_type
	2,	// [2:2] is the sub-list for method input_type
	2,	// [2:2] is the sub-list for extension type_name
	2,	// [2:2] is the sub-list for extension extendee
	0,	// [0:2] is the sub-list for field type_name
}
var file_coprocess_response_object_proto_goTypes = []interface{}{
	(*ResponseObject)(nil),	// 0: coprocess.ResponseObject
	(*Header)(nil),		// 1: coprocess.Header
	nil,			// 2: coprocess.ResponseObject.HeadersEntry
}
var file_coprocess_response_object_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
var file_coprocess_response_object_proto_rawDesc = []byte{
	0x0a, 0x1f, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x12, 0x09, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x22, 0xa0, 0x02, 0x0a,
	0x0e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12,
	0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x64, 0x65,
	0x12, 0x19, 0x0a, 0x08, 0x72, 0x61, 0x77, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x07, 0x72, 0x61, 0x77, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x62,
	0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12,
	0x40, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x26, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x48, 0x65, 0x61, 0x64,
	0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72,
	0x73, 0x12, 0x40, 0x0a, 0x12, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e,
	0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
	0x52, 0x11, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x65, 0x61, 0x64,
	0x65, 0x72, 0x73, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e,
	0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
	0x32, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x73, 0x42, 0x0c, 0x5a, 0x0a, 0x2f, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73,
	0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var file_coprocess_return_overrides_proto_depIdxs = []int32{
	1,	// 0: coprocess.ReturnOverrides.headers:type_name -> coprocess.ReturnOverrides.HeadersEntry
	1,	// [1:1] is the sub-list for method output_type
	1,	// [1:1] is the sub-list for method input_type
	1,	// [1:1] is the sub-list for extension type_name
	1,	// [1:1] is the sub-list for extension extendee
	0,	// [0:1] is the sub-list for field type_name
}
var file_coprocess_return_overrides_proto_goTypes = []interface{}{
	(*ReturnOverrides)(nil),	// 0: coprocess.ReturnOverrides
	nil,				// 1: coprocess.ReturnOverrides.HeadersEntry
}
var file_coprocess_return_overrides_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_coprocess_return_overrides_proto_rawDesc = []byte{
	0x0a, 0x20, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x65, 0x74, 0x75,
	0x72, 0x6e, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x12, 0x09, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x22, 0xa8, 0x02,
	0x0a, 0x0f, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65,
	0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x63, 0x6f,
	0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x41, 0x0a,
	0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27,
	0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x52, 0x65, 0x74, 0x75, 0x72,
	0x6e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65,
	0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
	0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69,
	0x64, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x6f, 0x64, 0x79, 0x1a, 0x3a, 0x0a, 0x0c,
	0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14,
	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x0c, 0x5a, 0x0a, 0x2f, 0x63, 0x6f, 0x70,
	0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var file_coprocess_session_state_proto_depIdxs = []int32{
	0,	// 0: coprocess.AccessDefinition.allowed_urls:type_name -> coprocess.AccessSpec
	6,	// 1: coprocess.SessionState.access_rights:type_name -> coprocess.SessionState.AccessRightsEntry
	7,	// 2: coprocess.SessionState.oauth_keys:type_name -> coprocess.SessionState.OauthKeysEntry
	2,	// 3: coprocess.SessionState.basic_auth_data:type_name -> coprocess.BasicAuthData
	3,	// 4: coprocess.SessionState.jwt_data:type_name -> coprocess.JWTData
	4,	// 5: coprocess.SessionState.monitor:type_name -> coprocess.Monitor
	8,	// 6: coprocess.SessionState.metadata:type_name -> coprocess.SessionState.MetadataEntry
	1,	// 7: coprocess.SessionState.AccessRightsEntry.value:type_name -> coprocess.AccessDefinition
	8,	// [8:8] is the sub-list for method output_type
	8,	// [8:8] is the sub-list for method input_type
	8,	// [8:8] is the sub-list for extension type_name
	8,	// [8:8] is the sub-list for extension extendee
	0,	// [0:8] is the sub-list for field type_name
}
var file_coprocess_session_state_proto_goTypes = []interface{}{
	(*AccessSpec)(nil),		// 0: coprocess.AccessSpec
	(*AccessDefinition)(nil),	// 1: coprocess.AccessDefinition
	(*BasicAuthData)(nil),		// 2: coprocess.BasicAuthData
	(*JWTData)(nil),		// 3: coprocess.JWTData
	(*Monitor)(nil),		// 4: coprocess.Monitor
	(*SessionState)(nil),		// 5: coprocess.SessionState
	nil,				// 6: coprocess.SessionState.AccessRightsEntry
	nil,				// 7: coprocess.SessionState.OauthKeysEntry
	nil,				// 8: coprocess.SessionState.MetadataEntry
}
var file_coprocess_session_state_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_coprocess_session_state_proto_rawDesc = []byte{
	0x0a, 0x1d, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x65, 0x73, 0x73,
	0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
	0x09, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x22, 0x38, 0x0a, 0x0a, 0x41, 0x63,
	0x63, 0x65, 0x73, 0x73, 0x53, 0x70, 0x65, 0x63, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65,
	0x74, 0x68, 0x6f, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x74,
	0x68, 0x6f, 0x64, 0x73, 0x22, 0x9a, 0x01, 0x0a, 0x10, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44,
	0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x70, 0x69,
	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, 0x69,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x70, 0x69, 0x5f, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x70, 0x69, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x76,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x76,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x38, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
	0x65, 0x64, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e,
	0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x53, 0x70, 0x65, 0x63, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x55, 0x72, 0x6c,
	0x73, 0x22, 0x3f, 0x0a, 0x0d, 0x42, 0x61, 0x73, 0x69, 0x63, 0x41, 0x75, 0x74, 0x68, 0x44, 0x61,
	0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x12,
	0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61,
	0x73, 0x68, 0x22, 0x21, 0x0a, 0x07, 0x4a, 0x57, 0x54, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x30, 0x0a, 0x07, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
	0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x6c, 0x69, 0x6d, 0x69,
	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x01, 0x52, 0x0d, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65,
	0x72, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x22, 0xbc, 0x0b, 0x0a, 0x0c, 0x53, 0x65, 0x73, 0x73,
	0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74,
	0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x6c, 0x61,
	0x73, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
	0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x61, 0x6c, 0x6c, 0x6f,
	0x77, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x01, 0x52, 0x04, 0x72, 0x61, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x65, 0x72,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x03, 0x70, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65,
	0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x78,
	0x70, 0x69, 0x72, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x5f, 0x6d,
	0x61, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x4d,
	0x61, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x6e, 0x65,
	0x77, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x52,
	0x65, 0x6e, 0x65, 0x77, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x5f, 0x72,
	0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e,
	0x71, 0x75, 0x6f, 0x74, 0x61, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x2c,
	0x0a, 0x12, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x6e, 0x65, 0x77, 0x61, 0x6c, 0x5f,
	0x72, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x71, 0x75, 0x6f, 0x74,
	0x61, 0x52, 0x65, 0x6e, 0x65, 0x77, 0x61, 0x6c, 0x52, 0x61, 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x0d,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x18, 0x0a, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e,
	0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x41, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c,
	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x12, 0x15, 0x0a, 0x06,
	0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x72,
	0x67, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x69,
	0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x61,
	0x75, 0x74, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x45, 0x0a, 0x0a, 0x6f,
	0x61, 0x75, 0x74, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x26, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x53, 0x65, 0x73, 0x73,
	0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x4f, 0x61, 0x75, 0x74, 0x68, 0x4b, 0x65,
	0x79, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x4b, 0x65,
	0x79, 0x73, 0x12, 0x40, 0x0a, 0x0f, 0x62, 0x61, 0x73, 0x69, 0x63, 0x5f, 0x61, 0x75, 0x74, 0x68,
	0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6f,
	0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x41, 0x75, 0x74,
	0x68, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0d, 0x62, 0x61, 0x73, 0x69, 0x63, 0x41, 0x75, 0x74, 0x68,
	0x44, 0x61, 0x74, 0x61, 0x12, 0x2d, 0x0a, 0x08, 0x6a, 0x77, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65,
	0x73, 0x73, 0x2e, 0x4a, 0x57, 0x54, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6a, 0x77, 0x74, 0x44,
	0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x6d, 0x61, 0x63, 0x5f, 0x65, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, 0x6d, 0x61, 0x63, 0x45,
	0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x6d, 0x61, 0x63, 0x5f, 0x73,
	0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6d, 0x61,
	0x63, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x69, 0x6e,
	0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73,
	0x49, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x70, 0x70, 0x6c,
	0x79, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x12, 0x21, 0x0a, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73,
	0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x45, 0x78, 0x70, 0x69,
	0x72, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x18, 0x15,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73,
	0x2e, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
	0x72, 0x12, 0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61,
	0x69, 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x16,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x65, 0x74, 0x61,
	0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x41, 0x0a,
	0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x25, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x53, 0x65, 0x73, 0x73,
	0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
	0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x18, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04,
	0x74, 0x61, 0x67, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x19, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61,
	0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x32, 0x0a,
	0x15, 0x69, 0x64, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x64, 0x65,
	0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x69, 0x64,
	0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e,
	0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x69, 0x66,
	0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x73, 0x65, 0x73,
	0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e,
	0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, 0x1d,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63,
	0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
	0x74, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66,
	0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65,
	0x72, 0x79, 0x5f, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d,
	0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x70, 0x74, 0x68, 0x1a, 0x5c, 0x0a,
	0x11, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x45, 0x6e, 0x74,
	0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6b, 0x65, 0x79, 0x12, 0x31, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x2e,
	0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x4f,
	0x61, 0x75, 0x74, 0x68, 0x4b, 0x65, 0x79, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74,
	0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x0c, 0x5a, 0x0a, 0x2f, 0x63, 0x6f, 0x70, 0x72, 0x6f,
	0x63, 0x65, 0x73, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

Types

AccessDefinition

AccessDefinition is defined as an attribute within a SessionState instance. Contains the allowed versions and URLs (endpoints) for the API that the session request relates to. Each URL (endpoint) specifies an associated list of allowed methods. See also AccessSpec.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
ApiName

string

ApiName is the name of the API that the session request relates to.

ApiId

string

ApiId is the ID of the API that the session request relates to.

Versions

[]string

Versions is a list of allowed API versions, e.g. "versions": [ "Default" ].

AllowedUrls

[]*AccessSpec

AllowedUrls is a list of AccessSpec instances. Each instance defines a URL (endpoint) with an associated allowed list of methods. If all URLs (endpoints) are allowed then the attribute is not set.

type AccessDefinition struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// ApiName is the name of the API that the session request relates to.
	ApiName	string	`protobuf:"bytes,1,opt,name=api_name,json=apiName,proto3" json:"api_name,omitempty"`
	// ApiId is the ID of the API that the session request relates to.
	ApiId	string	`protobuf:"bytes,2,opt,name=api_id,json=apiId,proto3" json:"api_id,omitempty"`
	// Versions is a list of allowed API versions, e.g.  `"versions": [ "Default" ]`.
	Versions	[]string	`protobuf:"bytes,3,rep,name=versions,proto3" json:"versions,omitempty"`
	// AllowedUrls is a list of AccessSpec instances. Each instance defines a URL (endpoint)
	// with an associated allowed list of methods. If all URLs (endpoints) are allowed then the
	// attribute is not set.
	AllowedUrls	[]*AccessSpec	`protobuf:"bytes,4,rep,name=allowed_urls,json=allowedUrls,proto3" json:"allowed_urls,omitempty"`
}

AccessSpec

AccessSpec defines an API's URL (endpoint) and associated list of allowed methods.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
Url

string

Url is a URL (endpoint) belonging to the API associated with the request session.

Methods

[]string

Methods is a list of allowed methods for the URL (endpoint), e.g. 'methods': [ 'GET'. 'POST', 'PUT', 'PATCH' ] The list of methods are case sensitive.

type AccessSpec struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// Url is a URL (endpoint) belonging to the API associated with the request session.
	Url	string	`protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	// Methods is a list of allowed methods for the URL (endpoint), e.g. 'methods': [ 'GET'. 'POST', 'PUT', 'PATCH' ]
	// The list of methods are case sensitive.
	Methods	[]string	`protobuf:"bytes,2,rep,name=methods,proto3" json:"methods,omitempty"`
}

BasicAuthData

BasicAuthData contains a hashed password and the name of the hashing algorithm used.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
Password

string

Password is a hashed password.

Hash

string

Hash is the name of the hashing algorithm used to hash the password, e.g. bcrypt, Argon2.

type BasicAuthData struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// Password is a hashed password.
	Password	string	`protobuf:"bytes,1,opt,name=password,proto3" json:"password,omitempty"`
	// Hash is the name of the hashing algorithm used to hash the password, e.g. bcrypt, Argon2.
	Hash	string	`protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"`
}

Dispatcher

Dispatcher defines a basic interface for the CP dispatcher, check PythonDispatcher for reference.

Field name Field type Comment
type

any

No comment on field.
type Dispatcher interface {
	// Dispatch takes and returns a pointer to a CoProcessMessage struct, see coprocess/api.h for details. This is used by CP bindings.
	Dispatch(*Object) (*Object, error)

	// DispatchEvent takes an event JSON, as bytes. Doesn't return.
	DispatchEvent([]byte)

	// DispatchObject takes and returns a coprocess.Object pointer, this is used by gRPC.
	DispatchObject(*Object) (*Object, error)

	// LoadModules is called the first time a CP binding starts. Used by Lua.
	LoadModules()

	// HandleMiddlewareCache is called when a bundle has been loaded and the dispatcher needs to cache its contents. Used by Lua.
	HandleMiddlewareCache(*apidef.BundleManifest, string)

	// Reload is called when a hot reload is triggered. Used by all the CPs.
	Reload()
}

DispatcherClient

DispatcherClient is the client API for Dispatcher service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

Field name Field type Comment
type

any

No comment on field.
type DispatcherClient interface {
	// Dispatch is an RPC method that accepts and returns an Object.
	Dispatch(ctx context.Context, in *Object, opts ...grpc.CallOption) (*Object, error)
	// DispatchEvent dispatches an event to the target language.
	DispatchEvent(ctx context.Context, in *Event, opts ...grpc.CallOption) (*EventReply, error)
}

DispatcherServer

DispatcherServer is the server API for Dispatcher service. All implementations should embed UnimplementedDispatcherServer for forward compatibility.

Field name Field type Comment
type

any

No comment on field.
type DispatcherServer interface {
	// Dispatch is an RPC method that accepts and returns an Object.
	Dispatch(context.Context, *Object) (*Object, error)
	// DispatchEvent dispatches an event to the target language.
	DispatchEvent(context.Context, *Event) (*EventReply, error)
}

Event

Event is represented as a JSON payload.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
Payload

string

Payload represents the JSON payload.

type Event struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// Payload represents the JSON payload.
	Payload	string	`protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"`
}

EventReply

EventReply is the response for event.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
type EventReply struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields
}

Header is a reponse header that contains multiple associated values.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
Key

string

Key represents the name of the header.

Values

[]string

Values is a list of values for a given header content.

type Header struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// Key represents the name of the header.
	Key	string	`protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Values is a list of values for a given header content.
	Values	[]string	`protobuf:"bytes,2,rep,name=values,proto3" json:"values,omitempty"`
}

HookType

HookType is an enumeration that identifies the type of plugin.

Field name Field type Comment
type

int32

No comment on field.
type HookType int32

JWTData

JWTData is added to sessions where a Tyk key (embedding a shared secret) is used as the public key for signing the JWT. This message contains the shared secret.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
Secret

string

Secret is the shared secret.

type JWTData struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// Secret is the shared secret.
	Secret	string	`protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
}

MiniRequestObject

MiniRequestObject is used for middleware calls and contains important fields like headers, parameters, body and URL.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
Headers

map[string]string

Headers is a read-only field for reading headers injected by previous middleware.

SetHeaders

map[string]string

SetHeaders is a map of header key values to append to the request.

DeleteHeaders

[]string

DeleteHeaders is a list of header names to be removed from the request.

Body

string

Body is the request body.

Url

string

Url is the request URL.

Params

map[string]string

Params is a read only map of request params.

AddParams

map[string]string

AddParams is a map of parameter keys and values to add to the request.

ExtendedParams

map[string]string

ExtendedParams allows a parameter to have multiple values, currently unsupported.

DeleteParams

[]string

DeleteParams is a list of parameter keys to be removed from the request.

ReturnOverrides

*ReturnOverrides

ReturnOverrides override the response for the request, see ReturnOverrides.

Method

string

Method is the request method, eg GET, POST, etc.

RequestUri

string

RequestUri is the raw unprocessed request URL, including query string and fragments.

Scheme

string

Scheme is the URL scheme, e.g. http or https.

RawBody

[]byte

RawBody is the raw request body.

type MiniRequestObject struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// Headers is a read-only field for reading headers injected by previous middleware.
	Headers	map[string]string	`protobuf:"bytes,1,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// SetHeaders is a map of header key values to append to the request.
	SetHeaders	map[string]string	`protobuf:"bytes,2,rep,name=set_headers,json=setHeaders,proto3" json:"set_headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// DeleteHeaders is a list of header names to be removed from the request.
	DeleteHeaders	[]string	`protobuf:"bytes,3,rep,name=delete_headers,json=deleteHeaders,proto3" json:"delete_headers,omitempty"`
	// Body is the request body.
	Body	string	`protobuf:"bytes,4,opt,name=body,proto3" json:"body,omitempty"`
	// Url is the request URL.
	Url	string	`protobuf:"bytes,5,opt,name=url,proto3" json:"url,omitempty"`
	// Params is a read only map of request params.
	Params	map[string]string	`protobuf:"bytes,6,rep,name=params,proto3" json:"params,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// AddParams is a map of parameter keys and values to add to the request.
	AddParams	map[string]string	`protobuf:"bytes,7,rep,name=add_params,json=addParams,proto3" json:"add_params,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// ExtendedParams allows a parameter to have multiple values, currently unsupported.
	ExtendedParams	map[string]string	`protobuf:"bytes,8,rep,name=extended_params,json=extendedParams,proto3" json:"extended_params,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// DeleteParams is a list of parameter keys to be removed from the request.
	DeleteParams	[]string	`protobuf:"bytes,9,rep,name=delete_params,json=deleteParams,proto3" json:"delete_params,omitempty"`
	// ReturnOverrides override the response for the request, see ReturnOverrides.
	ReturnOverrides	*ReturnOverrides	`protobuf:"bytes,10,opt,name=return_overrides,json=returnOverrides,proto3" json:"return_overrides,omitempty"`
	// Method is the request method, eg GET, POST, etc.
	Method	string	`protobuf:"bytes,11,opt,name=method,proto3" json:"method,omitempty"`
	// RequestUri is the raw unprocessed request URL, including query string and fragments.
	RequestUri	string	`protobuf:"bytes,12,opt,name=request_uri,json=requestUri,proto3" json:"request_uri,omitempty"`
	// Scheme is the URL scheme, e.g. http or https.
	Scheme	string	`protobuf:"bytes,13,opt,name=scheme,proto3" json:"scheme,omitempty"`
	// RawBody is the raw request body.
	RawBody	[]byte	`protobuf:"bytes,14,opt,name=raw_body,json=rawBody,proto3" json:"raw_body,omitempty"`
}

Monitor

Monitor allows API endpoint users, stakeholders or an organisation to be notified by webhook when certain quota limits have been reached for their session token.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
TriggerLimits

[]float64

TriggerLimits is a list of quota percentage limits, defined in descending order.

type Monitor struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// TriggerLimits is a list of quota percentage limits, defined in descending order.
	TriggerLimits	[]float64	`protobuf:"fixed64,1,rep,packed,name=trigger_limits,json=triggerLimits,proto3" json:"trigger_limits,omitempty"`
}

Object

Object wraps a MiniRequestObject and contains additional fields that are useful for users that implement their own request dispatchers, like the middleware hook type and name.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
HookType

HookType

HookType is an enumeration that identifies the plugin hook type.

HookName

string

HookName is the plugin name.

Request

*MiniRequestObject

Request relates to the main request data structure used by rich plugins. It’s used for middleware calls and contains important fields like headers, parameters, body and URL.

Session

*SessionState

Session stores information about the current key/user that’s used for authentication.

Metadata

map[string]string

Metadata is a dynamic filed that contains the metadata.

Spec

map[string]string

Spec contains information about API definition, including APIID, OrgID and config_data.

Response

*ResponseObject

Response relates to the ResponseObject used by response hooks. The fields are populated with the upstream HTTP response data. All the field contents can be modified.

type Object struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// HookType is an enumeration that identifies the plugin hook type.
	HookType	HookType	`protobuf:"varint,1,opt,name=hook_type,json=hookType,proto3,enum=coprocess.HookType" json:"hook_type,omitempty"`
	// HookName is the plugin name.
	HookName	string	`protobuf:"bytes,2,opt,name=hook_name,json=hookName,proto3" json:"hook_name,omitempty"`
	// Request relates to the main request data structure used by rich plugins. It’s used for middleware calls
	// and contains important fields like headers, parameters, body and URL.
	Request	*MiniRequestObject	`protobuf:"bytes,3,opt,name=request,proto3" json:"request,omitempty"`
	// Session stores information about the current key/user that’s used for authentication.
	Session	*SessionState	`protobuf:"bytes,4,opt,name=session,proto3" json:"session,omitempty"`
	// Metadata is a dynamic filed that contains the metadata.
	Metadata	map[string]string	`protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// Spec contains information about API definition, including APIID, OrgID and config_data.
	Spec	map[string]string	`protobuf:"bytes,6,rep,name=spec,proto3" json:"spec,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// Response relates to the ResponseObject used by response hooks. The fields are populated with the upstream HTTP
	// response data. All the field contents can be modified.
	Response	*ResponseObject	`protobuf:"bytes,7,opt,name=response,proto3" json:"response,omitempty"`
}

ResponseObject

ResponseObject is used by response hooks. All fields are modifiable.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
StatusCode

int32

StatusCode is the HTTP status code received from the upstream.

RawBody

[]byte

RawBody represents the raw bytes of HTTP response body.

Body

string

Body represents the HTTP response body. Excluded when the raw_body contains invalid UTF-8 characters.

Headers

map[string]string

Headers represents the headers received from upstream.

MultivalueHeaders

[]*Header

MultivalueHeaders is a list of headers. Useful when header has multiple values. See Header.

type ResponseObject struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// StatusCode is the HTTP status code received from the upstream.
	StatusCode	int32	`protobuf:"varint,1,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
	// RawBody represents the raw bytes of HTTP response body.
	RawBody	[]byte	`protobuf:"bytes,2,opt,name=raw_body,json=rawBody,proto3" json:"raw_body,omitempty"`
	// Body represents the HTTP response body. Excluded when the raw_body contains invalid UTF-8 characters.
	Body	string	`protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"`
	// Headers represents the headers received from upstream.
	Headers	map[string]string	`protobuf:"bytes,4,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// MultivalueHeaders is a list of headers. Useful when header has multiple values. See Header.
	MultivalueHeaders	[]*Header	`protobuf:"bytes,5,rep,name=multivalue_headers,json=multivalueHeaders,proto3" json:"multivalue_headers,omitempty"`
}

ReturnOverrides

ReturnOverrides is used to override the response for a given HTTP request When returned within an Object for a given HTTP request, the upstream reponse is replaced with the fields encapsulated within ReturnOverrides.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
ResponseCode

int32

ResponseCode overrides the upstream response status code.

ResponseError

string

ResponseError overrides the upstream response error message.

Headers

map[string]string

Headers overrides the upstream response headers.

OverrideError

bool

OverrideError overrides the upstream error response with response_error when set to true.

ResponseBody

string

ResponseBody is an alias of response_error that contains the response body.

type ReturnOverrides struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// ResponseCode overrides the upstream response status code.
	ResponseCode	int32	`protobuf:"varint,1,opt,name=response_code,json=responseCode,proto3" json:"response_code,omitempty"`
	// ResponseError overrides the upstream response error message.
	ResponseError	string	`protobuf:"bytes,2,opt,name=response_error,json=responseError,proto3" json:"response_error,omitempty"`
	// Headers overrides the upstream response headers.
	Headers	map[string]string	`protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// OverrideError overrides the upstream error response with response_error when set to true.
	OverrideError	bool	`protobuf:"varint,4,opt,name=override_error,json=overrideError,proto3" json:"override_error,omitempty"`
	// ResponseBody is an alias of response_error that contains the response body.
	ResponseBody	string	`protobuf:"bytes,5,opt,name=response_body,json=responseBody,proto3" json:"response_body,omitempty"`
}

SessionState

SessionState is created for every authenticated request and stored in Redis. Used to track the activity of a given key in different ways, mainly by the built-in Tyk middleware such as the quota middleware or the rate limiter. A GRPC plugin is able to create a SessionState object and store it in the same way built-in authentication mechanisms do.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
LastCheck

int64

LastCheck is deprecated.

Allowance

float64

Allowance is deprecated, replaced by rate.

Rate

float64

Rate is the number of requests that are allowed in the specified rate limiting window.

Per

float64

Per is the duration of the rate window, in seconds.

Expires

int64

Expires is an epoch that defines when the key should expire.

QuotaMax

int64

QuotaMax is the maximum number of requests allowed during the quota period.

QuotaRenews

int64

QuotaRenews is an epoch that defines when the quota renews.

QuotaRemaining

int64

QuotaRemaining is the number of requests remaining for this user’s quota (unrelated to rate limit).

QuotaRenewalRate

int64

QuotaRenewalRate is the time in seconds during which the quota is valid. So for 1000 requests per hour, this value would be 3600 while quota_max and quota_remaining would be 1000.

AccessRights

map[string]*AccessDefinition

AccessRights maps the session's API ID to an AccessDefinition. The AccessDefinition defines the access rights for the API in terms of allowed: versions and URLs(endpoints). Each URL (endpoint) has a list of allowed methods.

OrgId

string

OrgId represents the organisation the session user belongs to. This can be used in conjunction with the org_id setting in the API Definition object to have tokens owned by organisations.

OauthClientId

string

OauthClientId is the OAuth client ID that is set if the token is generated by an OAuth client during an OAuth authorisation flow.

OauthKeys

map[string]string

OauthKeys maps an OAuth client ID with a corresponding access token value. Currently unsupported and under development.

BasicAuthData

*BasicAuthData

BasicAuthData contains a hashed password and the name of the hashing algorithm used.

JwtData

*JWTData

JwtData is added to sessions where a Tyk key (embedding a shared secret) is used as the public key for signing the JWT. The JWT token's KID header value references the ID of a Tyk key.

HmacEnabled

bool

HmacEnabled is set to true to indicate generation of a HMAC signature using the secret provided in hmac_secret. If the generated signature matches the signature provided in the Authorizaton header then authentication of the request has passed.

HmacSecret

string

HmacSecret represents the HMAC secret.

IsInactive

bool

IsInactive when set to true, indicates that access is denied.

ApplyPolicyId

string

ApplyPolicyId represents the policy ID that is bound to the token. Deprecated use apply_policies instead.

DataExpires

int64

DataExpires is a value, in seconds, that defines when data generated by the session token expires in the analytics DB (must be using Pro edition and MongoDB).

Monitor

*Monitor

Monitor represents the quota monitor settings, currently unsupported in gRPC sessions.

EnableDetailedRecording

bool

EnableDetailedRecording should be set to true to have Tyk store the inbound request and outbound response data in HTTP Wire format as part of the analytics data.

Metadata

map[string]string

Metadata represents meta-data to be included as part of the session that can be used in other middleware such as transforms and header injection to embed user-specific data into a request, or alternatively to query the providence of a key.

Tags

[]string

Tags is a list of tags to embed into analytics data when the request completes. If a policy has tags, those tags take precedence and are used instead.

Alias

string

Alias is an identifier for the token for use in analytics, to allow easier tracing of hashed and unhashed tokens.

LastUpdated

string

LastUpdated is a timestamp that represents the time the session was last updated. With PostAuth hooks this is a UNIX timestamp.

IdExtractorDeadline

int64

IdExtractorDeadline is a UNIX timestamp that signifies when a cached key or ID will expire. This relates to custom authentication, where authenticated keys can be cached to save repeated requests to the gRPC server.

SessionLifetime

int64

SessionLifetime is a UNIX timestamp that denotes when the key will automatically expire. Any·subsequent API request made using the key will be rejected. Overrides the global session lifetime.

ApplyPolicies

[]string

ApplyPolicies is a list of IDs for the policies that are bound to the token.

Certificate

string

Certificate is the client certificate used to authenticate the request. Exists in the session instance if mTLS is configured for the API. Currently unsupported.

MaxQueryDepth

int64

MaxQueryDepth relates to graphQL APIs. If the session key has a maximum query depth limit defined then it is included in the session instance. Currently unsupported and under development.

type SessionState struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// LastCheck is deprecated.
	LastCheck	int64	`protobuf:"varint,1,opt,name=last_check,json=lastCheck,proto3" json:"last_check,omitempty"`
	// Allowance is deprecated, replaced by rate.
	Allowance	float64	`protobuf:"fixed64,2,opt,name=allowance,proto3" json:"allowance,omitempty"`
	// Rate is the number of requests that are allowed in the specified rate limiting window.
	Rate	float64	`protobuf:"fixed64,3,opt,name=rate,proto3" json:"rate,omitempty"`
	// Per is the duration of the rate window, in seconds.
	Per	float64	`protobuf:"fixed64,4,opt,name=per,proto3" json:"per,omitempty"`
	// Expires is an epoch that defines when the key should expire.
	Expires	int64	`protobuf:"varint,5,opt,name=expires,proto3" json:"expires,omitempty"`
	// QuotaMax is the maximum number of requests allowed during the quota period.
	QuotaMax	int64	`protobuf:"varint,6,opt,name=quota_max,json=quotaMax,proto3" json:"quota_max,omitempty"`
	// QuotaRenews is an epoch that defines when the quota renews.
	QuotaRenews	int64	`protobuf:"varint,7,opt,name=quota_renews,json=quotaRenews,proto3" json:"quota_renews,omitempty"`
	// QuotaRemaining is the number of requests remaining for this user’s quota (unrelated to rate
	// limit).
	QuotaRemaining	int64	`protobuf:"varint,8,opt,name=quota_remaining,json=quotaRemaining,proto3" json:"quota_remaining,omitempty"`
	// QuotaRenewalRate is the time in seconds during which the quota is valid.
	// So for 1000 requests per hour, this value would be 3600 while quota_max and
	// quota_remaining would be 1000.
	QuotaRenewalRate	int64	`protobuf:"varint,9,opt,name=quota_renewal_rate,json=quotaRenewalRate,proto3" json:"quota_renewal_rate,omitempty"`
	// AccessRights maps the session's API ID to an AccessDefinition. The AccessDefinition defines the access rights for the API in terms
	// of allowed: versions and URLs(endpoints). Each URL (endpoint) has a list of allowed methods.
	AccessRights	map[string]*AccessDefinition	`protobuf:"bytes,10,rep,name=access_rights,json=accessRights,proto3" json:"access_rights,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// OrgId represents the organisation the session user belongs to. This can be used in conjunction with the org_id
	// setting in the API Definition object to have tokens owned by organisations.
	OrgId	string	`protobuf:"bytes,11,opt,name=org_id,json=orgId,proto3" json:"org_id,omitempty"`
	// OauthClientId is the OAuth client ID that is set if the token is generated by an OAuth client during an
	// OAuth authorisation flow.
	OauthClientId	string	`protobuf:"bytes,12,opt,name=oauth_client_id,json=oauthClientId,proto3" json:"oauth_client_id,omitempty"`
	// OauthKeys maps an OAuth client ID with a corresponding access token value. Currently unsupported and under development.
	OauthKeys	map[string]string	`protobuf:"bytes,13,rep,name=oauth_keys,json=oauthKeys,proto3" json:"oauth_keys,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// BasicAuthData contains a hashed password and the name of the hashing algorithm used.
	BasicAuthData	*BasicAuthData	`protobuf:"bytes,14,opt,name=basic_auth_data,json=basicAuthData,proto3" json:"basic_auth_data,omitempty"`
	// JwtData is added to sessions where a Tyk key (embedding a shared secret) is used as the public key
	// for signing the JWT. The JWT token's KID header value references the ID of a Tyk key.
	JwtData	*JWTData	`protobuf:"bytes,15,opt,name=jwt_data,json=jwtData,proto3" json:"jwt_data,omitempty"`
	// HmacEnabled is set to `true` to indicate generation of a HMAC signature using the secret provided in `hmac_secret`.
	// If the generated signature matches the signature provided in the Authorizaton header then authentication of
	// the request has passed.
	HmacEnabled	bool	`protobuf:"varint,16,opt,name=hmac_enabled,json=hmacEnabled,proto3" json:"hmac_enabled,omitempty"`
	// HmacSecret represents the HMAC secret.
	HmacSecret	string	`protobuf:"bytes,17,opt,name=hmac_secret,json=hmacSecret,proto3" json:"hmac_secret,omitempty"`
	// IsInactive when set to true, indicates that access is denied.
	IsInactive	bool	`protobuf:"varint,18,opt,name=is_inactive,json=isInactive,proto3" json:"is_inactive,omitempty"`
	// ApplyPolicyId represents the policy ID that is bound to the token. Deprecated use apply_policies instead.
	ApplyPolicyId	string	`protobuf:"bytes,19,opt,name=apply_policy_id,json=applyPolicyId,proto3" json:"apply_policy_id,omitempty"`
	// DataExpires is a value, in seconds, that defines when data generated by the session token expires in
	// the analytics DB (must be using Pro edition and MongoDB).
	DataExpires	int64	`protobuf:"varint,20,opt,name=data_expires,json=dataExpires,proto3" json:"data_expires,omitempty"`
	// Monitor represents the quota monitor settings, currently unsupported in gRPC sessions.
	Monitor	*Monitor	`protobuf:"bytes,21,opt,name=monitor,proto3" json:"monitor,omitempty"`
	// EnableDetailedRecording should be set to true to have Tyk store the inbound request and outbound
	// response data in HTTP Wire format as part of the analytics data.
	EnableDetailedRecording	bool	`protobuf:"varint,22,opt,name=enable_detailed_recording,json=enableDetailedRecording,proto3" json:"enable_detailed_recording,omitempty"`
	// Metadata represents meta-data to be included as part of the session that can be used in other
	// middleware such as transforms and header injection to embed user-specific
	// data into a request, or alternatively to query the providence of a key.
	Metadata	map[string]string	`protobuf:"bytes,23,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// Tags is a list of tags to embed into analytics data when the request completes. If a policy
	// has tags, those tags take precedence and are used instead.
	Tags	[]string	`protobuf:"bytes,24,rep,name=tags,proto3" json:"tags,omitempty"`
	// Alias is an identifier for the token for use in analytics, to allow easier tracing of hashed
	// and unhashed tokens.
	Alias	string	`protobuf:"bytes,25,opt,name=alias,proto3" json:"alias,omitempty"`
	// LastUpdated is a timestamp that represents the time the session was last updated.
	// With *PostAuth* hooks this is a UNIX timestamp.
	LastUpdated	string	`protobuf:"bytes,26,opt,name=last_updated,json=lastUpdated,proto3" json:"last_updated,omitempty"`
	// IdExtractorDeadline is a UNIX timestamp that signifies when a cached key or ID will expire.
	// This relates to custom authentication, where authenticated keys can be cached to save repeated requests
	// to the gRPC server.
	IdExtractorDeadline	int64	`protobuf:"varint,27,opt,name=id_extractor_deadline,json=idExtractorDeadline,proto3" json:"id_extractor_deadline,omitempty"`
	// SessionLifetime is a UNIX timestamp that denotes when the key will automatically expire.
	// Any·subsequent API request made using the key will be rejected.
	// Overrides the global session lifetime.
	SessionLifetime	int64	`protobuf:"varint,28,opt,name=session_lifetime,json=sessionLifetime,proto3" json:"session_lifetime,omitempty"`
	// ApplyPolicies is a list of IDs for the policies that are bound to the token.
	ApplyPolicies	[]string	`protobuf:"bytes,29,rep,name=apply_policies,json=applyPolicies,proto3" json:"apply_policies,omitempty"`
	// Certificate is the client certificate used to authenticate the request. Exists in the session instance if mTLS is configured
	// for the API. Currently unsupported.
	Certificate	string	`protobuf:"bytes,30,opt,name=certificate,proto3" json:"certificate,omitempty"`
	// MaxQueryDepth relates to graphQL APIs. If the session key has a maximum query depth limit defined then it is included in the
	// session instance. Currently unsupported and under development.
	MaxQueryDepth	int64	`protobuf:"varint,31,opt,name=max_query_depth,json=maxQueryDepth,proto3" json:"max_query_depth,omitempty"`
}

StringSlice

StringSlice is a list of strings.

Field name Field type Comment
state

protoimpl.MessageState

No comment on field.
sizeCache

protoimpl.SizeCache

No comment on field.
unknownFields

protoimpl.UnknownFields

No comment on field.
Items

[]string

Items is a list of string items.

type StringSlice struct {
	state		protoimpl.MessageState
	sizeCache	protoimpl.SizeCache
	unknownFields	protoimpl.UnknownFields

	// Items is a list of string items.
	Items	[]string	`protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
}

UnimplementedDispatcherServer

UnimplementedDispatcherServer should be embedded to have forward compatible implementations.

type UnimplementedDispatcherServer struct {
}

UnsafeDispatcherServer

UnsafeDispatcherServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to DispatcherServer will result in compilation errors.

Field name Field type Comment
type

any

No comment on field.
type UnsafeDispatcherServer interface {
	mustEmbedUnimplementedDispatcherServer()
}

dispatcherClient

This type doesn't have documentation.

Field name Field type Comment
cc

grpc.ClientConnInterface

No comment on field.
type dispatcherClient struct {
	cc grpc.ClientConnInterface
}

Functions

func NewDispatcherClient

func NewDispatcherClient(cc grpc.ClientConnInterface) DispatcherClient {
	return &dispatcherClient{cc}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func RegisterDispatcherServer

func RegisterDispatcherServer(s grpc.ServiceRegistrar, srv DispatcherServer) {
	s.RegisterService(&Dispatcher_ServiceDesc, srv)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*AccessDefinition) Descriptor

Deprecated: Use AccessDefinition.ProtoReflect.Descriptor instead.

func (*AccessDefinition) Descriptor() ([]byte, []int) {
	return file_coprocess_session_state_proto_rawDescGZIP(), []int{1}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*AccessDefinition) GetAllowedUrls

func (x *AccessDefinition) GetAllowedUrls() []*AccessSpec {
	if x != nil {
		return x.AllowedUrls
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*AccessDefinition) GetApiId

func (x *AccessDefinition) GetApiId() string {
	if x != nil {
		return x.ApiId
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*AccessDefinition) GetApiName

func (x *AccessDefinition) GetApiName() string {
	if x != nil {
		return x.ApiName
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*AccessDefinition) GetVersions

func (x *AccessDefinition) GetVersions() []string {
	if x != nil {
		return x.Versions
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*AccessDefinition) ProtoMessage

func (*AccessDefinition) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*AccessDefinition) ProtoReflect

func (x *AccessDefinition) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_session_state_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*AccessDefinition) Reset

func (x *AccessDefinition) Reset() {
	*x = AccessDefinition{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_session_state_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*AccessDefinition) String

func (x *AccessDefinition) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*AccessSpec) Descriptor

Deprecated: Use AccessSpec.ProtoReflect.Descriptor instead.

func (*AccessSpec) Descriptor() ([]byte, []int) {
	return file_coprocess_session_state_proto_rawDescGZIP(), []int{0}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*AccessSpec) GetMethods

func (x *AccessSpec) GetMethods() []string {
	if x != nil {
		return x.Methods
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*AccessSpec) GetUrl

func (x *AccessSpec) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*AccessSpec) ProtoMessage

func (*AccessSpec) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*AccessSpec) ProtoReflect

func (x *AccessSpec) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_session_state_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*AccessSpec) Reset

func (x *AccessSpec) Reset() {
	*x = AccessSpec{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_session_state_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*AccessSpec) String

func (x *AccessSpec) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*BasicAuthData) Descriptor

Deprecated: Use BasicAuthData.ProtoReflect.Descriptor instead.

func (*BasicAuthData) Descriptor() ([]byte, []int) {
	return file_coprocess_session_state_proto_rawDescGZIP(), []int{2}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*BasicAuthData) GetHash

func (x *BasicAuthData) GetHash() string {
	if x != nil {
		return x.Hash
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*BasicAuthData) GetPassword

func (x *BasicAuthData) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*BasicAuthData) ProtoMessage

func (*BasicAuthData) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*BasicAuthData) ProtoReflect

func (x *BasicAuthData) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_session_state_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*BasicAuthData) Reset

func (x *BasicAuthData) Reset() {
	*x = BasicAuthData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_session_state_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*BasicAuthData) String

func (x *BasicAuthData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*Event) Descriptor

Deprecated: Use Event.ProtoReflect.Descriptor instead.

func (*Event) Descriptor() ([]byte, []int) {
	return file_coprocess_object_proto_rawDescGZIP(), []int{1}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*Event) GetPayload

func (x *Event) GetPayload() string {
	if x != nil {
		return x.Payload
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Event) ProtoMessage

func (*Event) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*Event) ProtoReflect

func (x *Event) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_object_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Event) Reset

func (x *Event) Reset() {
	*x = Event{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_object_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Event) String

func (x *Event) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*EventReply) Descriptor

Deprecated: Use EventReply.ProtoReflect.Descriptor instead.

func (*EventReply) Descriptor() ([]byte, []int) {
	return file_coprocess_object_proto_rawDescGZIP(), []int{2}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*EventReply) ProtoMessage

func (*EventReply) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*EventReply) ProtoReflect

func (x *EventReply) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_object_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*EventReply) Reset

func (x *EventReply) Reset() {
	*x = EventReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_object_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*EventReply) String

func (x *EventReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*Header) Descriptor

Deprecated: Use Header.ProtoReflect.Descriptor instead.

func (*Header) Descriptor() ([]byte, []int) {
	return file_coprocess_response_object_proto_rawDescGZIP(), []int{1}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*Header) GetKey

func (x *Header) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Header) GetValues

func (x *Header) GetValues() []string {
	if x != nil {
		return x.Values
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Header) ProtoMessage

func (*Header) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*Header) ProtoReflect

func (x *Header) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_response_object_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Header) Reset

func (x *Header) Reset() {
	*x = Header{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_response_object_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Header) String

func (x *Header) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*JWTData) Descriptor

Deprecated: Use JWTData.ProtoReflect.Descriptor instead.

func (*JWTData) Descriptor() ([]byte, []int) {
	return file_coprocess_session_state_proto_rawDescGZIP(), []int{3}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*JWTData) GetSecret

func (x *JWTData) GetSecret() string {
	if x != nil {
		return x.Secret
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*JWTData) ProtoMessage

func (*JWTData) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*JWTData) ProtoReflect

func (x *JWTData) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_session_state_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*JWTData) Reset

func (x *JWTData) Reset() {
	*x = JWTData{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_session_state_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*JWTData) String

func (x *JWTData) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*MiniRequestObject) Descriptor

Deprecated: Use MiniRequestObject.ProtoReflect.Descriptor instead.

func (*MiniRequestObject) Descriptor() ([]byte, []int) {
	return file_coprocess_mini_request_object_proto_rawDescGZIP(), []int{0}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*MiniRequestObject) GetAddParams

func (x *MiniRequestObject) GetAddParams() map[string]string {
	if x != nil {
		return x.AddParams
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetBody

func (x *MiniRequestObject) GetBody() string {
	if x != nil {
		return x.Body
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetDeleteHeaders

func (x *MiniRequestObject) GetDeleteHeaders() []string {
	if x != nil {
		return x.DeleteHeaders
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetDeleteParams

func (x *MiniRequestObject) GetDeleteParams() []string {
	if x != nil {
		return x.DeleteParams
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetExtendedParams

func (x *MiniRequestObject) GetExtendedParams() map[string]string {
	if x != nil {
		return x.ExtendedParams
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetHeaders

func (x *MiniRequestObject) GetHeaders() map[string]string {
	if x != nil {
		return x.Headers
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetMethod

func (x *MiniRequestObject) GetMethod() string {
	if x != nil {
		return x.Method
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetParams

func (x *MiniRequestObject) GetParams() map[string]string {
	if x != nil {
		return x.Params
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetRawBody

func (x *MiniRequestObject) GetRawBody() []byte {
	if x != nil {
		return x.RawBody
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetRequestUri

func (x *MiniRequestObject) GetRequestUri() string {
	if x != nil {
		return x.RequestUri
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetReturnOverrides

func (x *MiniRequestObject) GetReturnOverrides() *ReturnOverrides {
	if x != nil {
		return x.ReturnOverrides
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetScheme

func (x *MiniRequestObject) GetScheme() string {
	if x != nil {
		return x.Scheme
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetSetHeaders

func (x *MiniRequestObject) GetSetHeaders() map[string]string {
	if x != nil {
		return x.SetHeaders
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) GetUrl

func (x *MiniRequestObject) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*MiniRequestObject) ProtoMessage

func (*MiniRequestObject) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*MiniRequestObject) ProtoReflect

func (x *MiniRequestObject) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_mini_request_object_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*MiniRequestObject) Reset

func (x *MiniRequestObject) Reset() {
	*x = MiniRequestObject{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_mini_request_object_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*MiniRequestObject) String

func (x *MiniRequestObject) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*Monitor) Descriptor

Deprecated: Use Monitor.ProtoReflect.Descriptor instead.

func (*Monitor) Descriptor() ([]byte, []int) {
	return file_coprocess_session_state_proto_rawDescGZIP(), []int{4}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*Monitor) GetTriggerLimits

func (x *Monitor) GetTriggerLimits() []float64 {
	if x != nil {
		return x.TriggerLimits
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Monitor) ProtoMessage

func (*Monitor) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*Monitor) ProtoReflect

func (x *Monitor) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_session_state_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Monitor) Reset

func (x *Monitor) Reset() {
	*x = Monitor{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_session_state_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Monitor) String

func (x *Monitor) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*Object) Descriptor

Deprecated: Use Object.ProtoReflect.Descriptor instead.

func (*Object) Descriptor() ([]byte, []int) {
	return file_coprocess_object_proto_rawDescGZIP(), []int{0}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*Object) GetHookName

func (x *Object) GetHookName() string {
	if x != nil {
		return x.HookName
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Object) GetHookType

func (x *Object) GetHookType() HookType {
	if x != nil {
		return x.HookType
	}
	return HookType_Unknown
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Object) GetMetadata

func (x *Object) GetMetadata() map[string]string {
	if x != nil {
		return x.Metadata
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Object) GetRequest

func (x *Object) GetRequest() *MiniRequestObject {
	if x != nil {
		return x.Request
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Object) GetResponse

func (x *Object) GetResponse() *ResponseObject {
	if x != nil {
		return x.Response
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Object) GetSession

func (x *Object) GetSession() *SessionState {
	if x != nil {
		return x.Session
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Object) GetSpec

func (x *Object) GetSpec() map[string]string {
	if x != nil {
		return x.Spec
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*Object) ProtoMessage

func (*Object) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*Object) ProtoReflect

func (x *Object) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_object_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Object) Reset

func (x *Object) Reset() {
	*x = Object{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_object_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*Object) String

func (x *Object) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*ResponseObject) Descriptor

Deprecated: Use ResponseObject.ProtoReflect.Descriptor instead.

func (*ResponseObject) Descriptor() ([]byte, []int) {
	return file_coprocess_response_object_proto_rawDescGZIP(), []int{0}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*ResponseObject) GetBody

func (x *ResponseObject) GetBody() string {
	if x != nil {
		return x.Body
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ResponseObject) GetHeaders

func (x *ResponseObject) GetHeaders() map[string]string {
	if x != nil {
		return x.Headers
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ResponseObject) GetMultivalueHeaders

func (x *ResponseObject) GetMultivalueHeaders() []*Header {
	if x != nil {
		return x.MultivalueHeaders
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ResponseObject) GetRawBody

func (x *ResponseObject) GetRawBody() []byte {
	if x != nil {
		return x.RawBody
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ResponseObject) GetStatusCode

func (x *ResponseObject) GetStatusCode() int32 {
	if x != nil {
		return x.StatusCode
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ResponseObject) ProtoMessage

func (*ResponseObject) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*ResponseObject) ProtoReflect

func (x *ResponseObject) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_response_object_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*ResponseObject) Reset

func (x *ResponseObject) Reset() {
	*x = ResponseObject{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_response_object_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*ResponseObject) String

func (x *ResponseObject) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*ReturnOverrides) Descriptor

Deprecated: Use ReturnOverrides.ProtoReflect.Descriptor instead.

func (*ReturnOverrides) Descriptor() ([]byte, []int) {
	return file_coprocess_return_overrides_proto_rawDescGZIP(), []int{0}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*ReturnOverrides) GetHeaders

func (x *ReturnOverrides) GetHeaders() map[string]string {
	if x != nil {
		return x.Headers
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ReturnOverrides) GetOverrideError

func (x *ReturnOverrides) GetOverrideError() bool {
	if x != nil {
		return x.OverrideError
	}
	return false
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ReturnOverrides) GetResponseBody

func (x *ReturnOverrides) GetResponseBody() string {
	if x != nil {
		return x.ResponseBody
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ReturnOverrides) GetResponseCode

func (x *ReturnOverrides) GetResponseCode() int32 {
	if x != nil {
		return x.ResponseCode
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ReturnOverrides) GetResponseError

func (x *ReturnOverrides) GetResponseError() string {
	if x != nil {
		return x.ResponseError
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*ReturnOverrides) ProtoMessage

func (*ReturnOverrides) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*ReturnOverrides) ProtoReflect

func (x *ReturnOverrides) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_return_overrides_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*ReturnOverrides) Reset

func (x *ReturnOverrides) Reset() {
	*x = ReturnOverrides{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_return_overrides_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*ReturnOverrides) String

func (x *ReturnOverrides) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*SessionState) Descriptor

Deprecated: Use SessionState.ProtoReflect.Descriptor instead.

func (*SessionState) Descriptor() ([]byte, []int) {
	return file_coprocess_session_state_proto_rawDescGZIP(), []int{5}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*SessionState) GetAccessRights

func (x *SessionState) GetAccessRights() map[string]*AccessDefinition {
	if x != nil {
		return x.AccessRights
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetAlias

func (x *SessionState) GetAlias() string {
	if x != nil {
		return x.Alias
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetAllowance

func (x *SessionState) GetAllowance() float64 {
	if x != nil {
		return x.Allowance
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetApplyPolicies

func (x *SessionState) GetApplyPolicies() []string {
	if x != nil {
		return x.ApplyPolicies
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetApplyPolicyId

func (x *SessionState) GetApplyPolicyId() string {
	if x != nil {
		return x.ApplyPolicyId
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetBasicAuthData

func (x *SessionState) GetBasicAuthData() *BasicAuthData {
	if x != nil {
		return x.BasicAuthData
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetCertificate

func (x *SessionState) GetCertificate() string {
	if x != nil {
		return x.Certificate
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetDataExpires

func (x *SessionState) GetDataExpires() int64 {
	if x != nil {
		return x.DataExpires
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetEnableDetailedRecording

func (x *SessionState) GetEnableDetailedRecording() bool {
	if x != nil {
		return x.EnableDetailedRecording
	}
	return false
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetExpires

func (x *SessionState) GetExpires() int64 {
	if x != nil {
		return x.Expires
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetHmacEnabled

func (x *SessionState) GetHmacEnabled() bool {
	if x != nil {
		return x.HmacEnabled
	}
	return false
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetHmacSecret

func (x *SessionState) GetHmacSecret() string {
	if x != nil {
		return x.HmacSecret
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetIdExtractorDeadline

func (x *SessionState) GetIdExtractorDeadline() int64 {
	if x != nil {
		return x.IdExtractorDeadline
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetIsInactive

func (x *SessionState) GetIsInactive() bool {
	if x != nil {
		return x.IsInactive
	}
	return false
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetJwtData

func (x *SessionState) GetJwtData() *JWTData {
	if x != nil {
		return x.JwtData
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetLastCheck

func (x *SessionState) GetLastCheck() int64 {
	if x != nil {
		return x.LastCheck
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetLastUpdated

func (x *SessionState) GetLastUpdated() string {
	if x != nil {
		return x.LastUpdated
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetMaxQueryDepth

func (x *SessionState) GetMaxQueryDepth() int64 {
	if x != nil {
		return x.MaxQueryDepth
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetMetadata

func (x *SessionState) GetMetadata() map[string]string {
	if x != nil {
		return x.Metadata
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetMonitor

func (x *SessionState) GetMonitor() *Monitor {
	if x != nil {
		return x.Monitor
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetOauthClientId

func (x *SessionState) GetOauthClientId() string {
	if x != nil {
		return x.OauthClientId
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetOauthKeys

func (x *SessionState) GetOauthKeys() map[string]string {
	if x != nil {
		return x.OauthKeys
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetOrgId

func (x *SessionState) GetOrgId() string {
	if x != nil {
		return x.OrgId
	}
	return ""
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetPer

func (x *SessionState) GetPer() float64 {
	if x != nil {
		return x.Per
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetQuotaMax

func (x *SessionState) GetQuotaMax() int64 {
	if x != nil {
		return x.QuotaMax
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetQuotaRemaining

func (x *SessionState) GetQuotaRemaining() int64 {
	if x != nil {
		return x.QuotaRemaining
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetQuotaRenewalRate

func (x *SessionState) GetQuotaRenewalRate() int64 {
	if x != nil {
		return x.QuotaRenewalRate
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetQuotaRenews

func (x *SessionState) GetQuotaRenews() int64 {
	if x != nil {
		return x.QuotaRenews
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetRate

func (x *SessionState) GetRate() float64 {
	if x != nil {
		return x.Rate
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetSessionLifetime

func (x *SessionState) GetSessionLifetime() int64 {
	if x != nil {
		return x.SessionLifetime
	}
	return 0
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) GetTags

func (x *SessionState) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*SessionState) ProtoMessage

func (*SessionState) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*SessionState) ProtoReflect

func (x *SessionState) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_session_state_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*SessionState) Reset

func (x *SessionState) Reset() {
	*x = SessionState{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_session_state_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*SessionState) String

func (x *SessionState) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*StringSlice) Descriptor

Deprecated: Use StringSlice.ProtoReflect.Descriptor instead.

func (*StringSlice) Descriptor() ([]byte, []int) {
	return file_coprocess_common_proto_rawDescGZIP(), []int{0}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (*StringSlice) GetItems

func (x *StringSlice) GetItems() []string {
	if x != nil {
		return x.Items
	}
	return nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*StringSlice) ProtoMessage

func (*StringSlice) ProtoMessage()	{}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (*StringSlice) ProtoReflect

func (x *StringSlice) ProtoReflect() protoreflect.Message {
	mi := &file_coprocess_common_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

Cognitive complexity: 4, Cyclomatic complexity: 4

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*StringSlice) Reset

func (x *StringSlice) Reset() {
	*x = StringSlice{}
	if protoimpl.UnsafeEnabled {
		mi := &file_coprocess_common_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

Cognitive complexity: 3, Cyclomatic complexity: 2

Uses: protoimpl.Pointer, protoimpl.UnsafeEnabled, protoimpl.X.

func (*StringSlice) String

func (x *StringSlice) String() string {
	return protoimpl.X.MessageStringOf(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X.

func (*dispatcherClient) Dispatch

func (c *dispatcherClient) Dispatch(ctx context.Context, in *Object, opts ...grpc.CallOption) (*Object, error) {
	out := new(Object)
	err := c.cc.Invoke(ctx, Dispatcher_Dispatch_FullMethodName, in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (*dispatcherClient) DispatchEvent

func (c *dispatcherClient) DispatchEvent(ctx context.Context, in *Event, opts ...grpc.CallOption) (*EventReply, error) {
	out := new(EventReply)
	err := c.cc.Invoke(ctx, Dispatcher_DispatchEvent_FullMethodName, in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

Cognitive complexity: 2, Cyclomatic complexity: 2

func (HookType) Descriptor

func (HookType) Descriptor() protoreflect.EnumDescriptor {
	return file_coprocess_common_proto_enumTypes[0].Descriptor()
}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (HookType) Enum

func (x HookType) Enum() *HookType {
	p := new(HookType)
	*p = x
	return p
}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (HookType) EnumDescriptor

Deprecated: Use HookType.Descriptor instead.

func (HookType) EnumDescriptor() ([]byte, []int) {
	return file_coprocess_common_proto_rawDescGZIP(), []int{0}
}

Cognitive complexity: 1, Cyclomatic complexity: 1

func (HookType) Number

func (x HookType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoreflect.EnumNumber.

func (HookType) String

func (x HookType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: protoimpl.X, protoreflect.EnumNumber.

func (HookType) Type

func (HookType) Type() protoreflect.EnumType {
	return &file_coprocess_common_proto_enumTypes[0]
}

Cognitive complexity: 0, Cyclomatic complexity: 1

func (UnimplementedDispatcherServer) Dispatch

func (UnimplementedDispatcherServer) Dispatch(context.Context, *Object) (*Object, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Dispatch not implemented")
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: codes.Unimplemented, status.Errorf.

func (UnimplementedDispatcherServer) DispatchEvent

func (UnimplementedDispatcherServer) DispatchEvent(context.Context, *Event) (*EventReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DispatchEvent not implemented")
}

Cognitive complexity: 0, Cyclomatic complexity: 1

Uses: codes.Unimplemented, status.Errorf.

Private functions

func file_coprocess_common_proto_init

file_coprocess_common_proto_init ()
References: protoimpl.DescBuilder, protoimpl.TypeBuilder, protoimpl.UnsafeEnabled, reflect.TypeOf.

func file_coprocess_common_proto_rawDescGZIP

file_coprocess_common_proto_rawDescGZIP () []byte
References: protoimpl.X.

func file_coprocess_mini_request_object_proto_init

file_coprocess_mini_request_object_proto_init ()
References: protoimpl.DescBuilder, protoimpl.TypeBuilder, protoimpl.UnsafeEnabled, reflect.TypeOf.

func file_coprocess_mini_request_object_proto_rawDescGZIP

file_coprocess_mini_request_object_proto_rawDescGZIP () []byte
References: protoimpl.X.

func file_coprocess_object_proto_init

file_coprocess_object_proto_init ()
References: protoimpl.DescBuilder, protoimpl.TypeBuilder, protoimpl.UnsafeEnabled, reflect.TypeOf.

func file_coprocess_object_proto_rawDescGZIP

file_coprocess_object_proto_rawDescGZIP () []byte
References: protoimpl.X.

func file_coprocess_response_object_proto_init

file_coprocess_response_object_proto_init ()
References: protoimpl.DescBuilder, protoimpl.TypeBuilder, protoimpl.UnsafeEnabled, reflect.TypeOf.

func file_coprocess_response_object_proto_rawDescGZIP

file_coprocess_response_object_proto_rawDescGZIP () []byte
References: protoimpl.X.

func file_coprocess_return_overrides_proto_init

file_coprocess_return_overrides_proto_init ()
References: protoimpl.DescBuilder, protoimpl.TypeBuilder, protoimpl.UnsafeEnabled, reflect.TypeOf.

func file_coprocess_return_overrides_proto_rawDescGZIP

file_coprocess_return_overrides_proto_rawDescGZIP () []byte
References: protoimpl.X.

func file_coprocess_session_state_proto_init

file_coprocess_session_state_proto_init ()
References: protoimpl.DescBuilder, protoimpl.TypeBuilder, protoimpl.UnsafeEnabled, reflect.TypeOf.

func file_coprocess_session_state_proto_rawDescGZIP

file_coprocess_session_state_proto_rawDescGZIP () []byte
References: protoimpl.X.

func init

init ()