// Code generated by protoc-gen-go.
// source: google/api/servicecontrol/v1/service_controller.proto
// DO NOT EDIT!

package servicecontrol

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "google/api"
import google_rpc "google/rpc"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// The request message of the Check method.
type CheckRequest struct {
	// The service name. The DNS address at which this service is available,
	// such as `"pubsub.googleapis.com"`.
	//
	// Please see `google.api.Service` for the definition of service name.
	ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName" json:"service_name,omitempty"`
	// The operation to be checked.
	Operation *Operation `protobuf:"bytes,2,opt,name=operation" json:"operation,omitempty"`
}

func (m *CheckRequest) Reset()                    { *m = CheckRequest{} }
func (m *CheckRequest) String() string            { return proto.CompactTextString(m) }
func (*CheckRequest) ProtoMessage()               {}
func (*CheckRequest) Descriptor() ([]byte, []int) { return fileDescriptor6, []int{0} }

func (m *CheckRequest) GetOperation() *Operation {
	if m != nil {
		return m.Operation
	}
	return nil
}

// The response message of the Check method.
type CheckResponse struct {
	// The same operation_id value used in the CheckRequest.
	// Used for logging and diagnostics purpose.
	OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
	// Indicate the decision of the check.
	//
	// If no check errors are present, the service should process the operation.
	// Otherwise the service should use the list of errors to determine the
	// appropriate action.
	CheckErrors []*CheckError `protobuf:"bytes,2,rep,name=check_errors,json=checkErrors" json:"check_errors,omitempty"`
}

func (m *CheckResponse) Reset()                    { *m = CheckResponse{} }
func (m *CheckResponse) String() string            { return proto.CompactTextString(m) }
func (*CheckResponse) ProtoMessage()               {}
func (*CheckResponse) Descriptor() ([]byte, []int) { return fileDescriptor6, []int{1} }

func (m *CheckResponse) GetCheckErrors() []*CheckError {
	if m != nil {
		return m.CheckErrors
	}
	return nil
}

// The request message of the Report method.
type ReportRequest struct {
	// The service name. The DNS address at which this service is available,
	// such as `"pubsub.googleapis.com"`.
	//
	// Please see `google.api.Service` for the definition of service name.
	ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName" json:"service_name,omitempty"`
	// Operations to be reported.
	//
	// Typically the service should report one operation per request.
	// Putting multiple operations into a single request is allowed, but should
	// be used only when multiple operations are natually available at the time
	// of the report.
	//
	// If multiple operations are in a single request, the total request size
	// should be no larger than 1MB. See
	// [ReportResponse.report_errors][google.api.servicecontrol.v1.ReportResponse.report_errors]
	// for
	// partial failure behavior.
	Operations []*Operation `protobuf:"bytes,2,rep,name=operations" json:"operations,omitempty"`
}

func (m *ReportRequest) Reset()                    { *m = ReportRequest{} }
func (m *ReportRequest) String() string            { return proto.CompactTextString(m) }
func (*ReportRequest) ProtoMessage()               {}
func (*ReportRequest) Descriptor() ([]byte, []int) { return fileDescriptor6, []int{2} }

func (m *ReportRequest) GetOperations() []*Operation {
	if m != nil {
		return m.Operations
	}
	return nil
}

// The response message of the Report method.
type ReportResponse struct {
	// The partial failures, one for each `Operation` in the request that failed
	// processing. There are three possible combinations of the RPC status and
	// this list:
	//
	// 1. The combination of a successful RPC status and an empty `report_errors`
	//    list indicates a complete success where all `Operation`s in the
	//    request are processed successfully.
	// 2. The combination of a successful RPC status and a non-empty
	//    `report_errors` list indicates a partial success where some
	//    `Operation`s in the request are processed successfully. Each
	//    `Operation` that failed processing has a corresponding item
	//    in this list.
	// 3. A failed RPC status indicates a complete failure where none of the
	//    `Operation`s in the request is processed successfully.
	ReportErrors []*ReportResponse_ReportError `protobuf:"bytes,1,rep,name=report_errors,json=reportErrors" json:"report_errors,omitempty"`
}

func (m *ReportResponse) Reset()                    { *m = ReportResponse{} }
func (m *ReportResponse) String() string            { return proto.CompactTextString(m) }
func (*ReportResponse) ProtoMessage()               {}
func (*ReportResponse) Descriptor() ([]byte, []int) { return fileDescriptor6, []int{3} }

func (m *ReportResponse) GetReportErrors() []*ReportResponse_ReportError {
	if m != nil {
		return m.ReportErrors
	}
	return nil
}

// Represents the processing error of one `Operation` in the request.
type ReportResponse_ReportError struct {
	// The
	// [Operation.operation_id][google.api.servicecontrol.v1.Operation.operation_id]
	// value from the request.
	OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
	// Details of the error when processing the `Operation`.
	Status *google_rpc.Status `protobuf:"bytes,2,opt,name=status" json:"status,omitempty"`
}

func (m *ReportResponse_ReportError) Reset()                    { *m = ReportResponse_ReportError{} }
func (m *ReportResponse_ReportError) String() string            { return proto.CompactTextString(m) }
func (*ReportResponse_ReportError) ProtoMessage()               {}
func (*ReportResponse_ReportError) Descriptor() ([]byte, []int) { return fileDescriptor6, []int{3, 0} }

func (m *ReportResponse_ReportError) GetStatus() *google_rpc.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func init() {
	proto.RegisterType((*CheckRequest)(nil), "google.api.servicecontrol.v1.CheckRequest")
	proto.RegisterType((*CheckResponse)(nil), "google.api.servicecontrol.v1.CheckResponse")
	proto.RegisterType((*ReportRequest)(nil), "google.api.servicecontrol.v1.ReportRequest")
	proto.RegisterType((*ReportResponse)(nil), "google.api.servicecontrol.v1.ReportResponse")
	proto.RegisterType((*ReportResponse_ReportError)(nil), "google.api.servicecontrol.v1.ReportResponse.ReportError")
}

func init() {
	proto.RegisterFile("google/api/servicecontrol/v1/service_controller.proto", fileDescriptor6)
}

var fileDescriptor6 = []byte{
	// 458 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x94, 0x53, 0xdd, 0x6a, 0xd4, 0x40,
	0x14, 0x66, 0x56, 0x5c, 0xe8, 0xc9, 0xae, 0xe0, 0x5c, 0xe8, 0x12, 0x7a, 0xb1, 0x9d, 0x0b, 0x1b,
	0xd2, 0x75, 0x42, 0x57, 0x04, 0xd9, 0x1b, 0xa1, 0xa5, 0x88, 0x08, 0x5a, 0xd2, 0x5b, 0x65, 0x89,
	0xd3, 0xa1, 0x06, 0x77, 0x33, 0xe3, 0xcc, 0x74, 0x11, 0x8a, 0x08, 0x3e, 0x80, 0x17, 0xfa, 0x34,
	0x3e, 0x84, 0x57, 0xbe, 0x82, 0x0f, 0xe1, 0xa5, 0x64, 0x7e, 0xd2, 0x94, 0x42, 0xc8, 0xde, 0x65,
	0xce, 0xcf, 0xf7, 0x9d, 0xef, 0x7c, 0x39, 0xf0, 0xf4, 0x42, 0x88, 0x8b, 0x15, 0xcf, 0x0a, 0x59,
	0x66, 0x9a, 0xab, 0x4d, 0xc9, 0x38, 0x13, 0x95, 0x51, 0x62, 0x95, 0x6d, 0x0e, 0x43, 0x64, 0xe9,
	0x43, 0x2b, 0xae, 0xa8, 0x54, 0xc2, 0x08, 0xbc, 0xeb, 0xda, 0x68, 0x21, 0x4b, 0x7a, 0xb3, 0x8d,
	0x6e, 0x0e, 0xe3, 0xdd, 0x16, 0x68, 0x51, 0x55, 0xc2, 0x14, 0xa6, 0x14, 0x95, 0x76, 0xbd, 0x31,
	0xed, 0xa4, 0x64, 0x1f, 0x38, 0xfb, 0xb8, 0xe4, 0x4a, 0x09, 0xcf, 0x15, 0xcf, 0x3a, 0xeb, 0x85,
	0xe4, 0xca, 0xc2, 0xfb, 0xea, 0x87, 0xbe, 0x5a, 0x49, 0x96, 0x69, 0x53, 0x98, 0x4b, 0x4f, 0x4b,
	0x3e, 0xc3, 0xe8, 0xb8, 0xc6, 0xce, 0xf9, 0xa7, 0x4b, 0xae, 0x0d, 0xde, 0x83, 0x51, 0x90, 0x57,
	0x15, 0x6b, 0x3e, 0x41, 0x53, 0x94, 0xec, 0xe4, 0x91, 0x8f, 0xbd, 0x2e, 0xd6, 0x1c, 0x9f, 0xc0,
	0x4e, 0x03, 0x3f, 0x19, 0x4c, 0x51, 0x12, 0xcd, 0xf7, 0x69, 0x97, 0x72, 0xfa, 0x26, 0x94, 0xe7,
	0xd7, 0x9d, 0xe4, 0x2b, 0x8c, 0x3d, 0xb3, 0x96, 0xa2, 0xd2, 0xbc, 0xa6, 0x6e, 0xb2, 0xcb, 0xf2,
	0x3c, 0x50, 0x37, 0xb1, 0x97, 0xe7, 0xf8, 0x15, 0x8c, 0x5a, 0x9b, 0xd0, 0x93, 0xc1, 0xf4, 0x4e,
	0x12, 0xcd, 0x93, 0x6e, 0x76, 0xcb, 0x72, 0x52, 0x37, 0xe4, 0x11, 0x6b, 0xbe, 0x35, 0xb9, 0x82,
	0x71, 0xce, 0xa5, 0x50, 0x66, 0x0b, 0xed, 0x2f, 0x00, 0x9a, 0x79, 0x02, 0x7d, 0x6f, 0xf1, 0xad,
	0x56, 0xf2, 0x1b, 0xc1, 0xbd, 0xc0, 0xee, 0xf5, 0xbf, 0x83, 0xb1, 0xb2, 0x91, 0xa0, 0x0e, 0x59,
	0xf8, 0x67, 0xdd, 0xf0, 0x37, 0x41, 0xfc, 0xd3, 0xa9, 0x1d, 0xa9, 0xeb, 0x87, 0x8e, 0xdf, 0x42,
	0xd4, 0x4a, 0xf6, 0xd9, 0x76, 0x0a, 0x43, 0xf7, 0xaf, 0x78, 0x97, 0x71, 0x98, 0x44, 0x49, 0x46,
	0xcf, 0x6c, 0x26, 0xf7, 0x15, 0xf3, 0x5f, 0x03, 0xb8, 0x7f, 0xe6, 0x86, 0x3b, 0x6e, 0xce, 0x02,
	0x7f, 0x47, 0x70, 0xd7, 0xae, 0x1f, 0xa7, 0x3d, 0x3c, 0xf2, 0x3e, 0xc4, 0x07, 0xbd, 0x6a, 0x9d,
	0x60, 0x32, 0xfb, 0xf6, 0xe7, 0xef, 0xcf, 0xc1, 0x23, 0xb2, 0xd7, 0xba, 0x4c, 0x9d, 0x5d, 0xb5,
	0x8d, 0xfc, 0xb2, 0xb0, 0xb6, 0x2f, 0x50, 0x8a, 0x7f, 0x20, 0x18, 0xba, 0x2d, 0xe0, 0x83, 0x7e,
	0x7b, 0x75, 0x23, 0xcd, 0xb6, 0x31, 0x81, 0x3c, 0xb6, 0x33, 0xed, 0x13, 0xd2, 0x35, 0x93, 0x33,
	0x67, 0x81, 0xd2, 0xa3, 0xe7, 0x30, 0x65, 0x62, 0xdd, 0xc9, 0x70, 0xf4, 0xe0, 0xd6, 0x72, 0x4f,
	0xeb, 0xfb, 0x3d, 0x45, 0xff, 0x10, 0x7a, 0x3f, 0xb4, 0xb7, 0xfc, 0xe4, 0x7f, 0x00, 0x00, 0x00,
	0xff, 0xff, 0x25, 0x78, 0xdd, 0x92, 0xb7, 0x04, 0x00, 0x00,
}
