From aa0b7cc5f399055145dea8871295d209ebccdee3 Mon Sep 17 00:00:00 2001 From: Kazuma Watanabe Date: Sun, 2 Oct 2022 16:45:25 +0000 Subject: [PATCH] Allow plugins to set host version constraints --- go.mod | 1 + go.sum | 2 + plugin/host2plugin/client.go | 14 + plugin/host2plugin/server.go | 5 + plugin/proto/tflint.pb.go | 1451 ++++++++++++++++++-------------- plugin/proto/tflint.proto | 8 + plugin/proto/tflint_grpc.pb.go | 36 + tflint/interface.go | 3 + tflint/ruleset.go | 13 +- 9 files changed, 892 insertions(+), 641 deletions(-) diff --git a/go.mod b/go.mod index 6516379..7d9f51d 100644 --- a/go.mod +++ b/go.mod @@ -19,6 +19,7 @@ require ( github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect github.com/fatih/color v1.13.0 // indirect github.com/golang/protobuf v1.5.2 // indirect + github.com/hashicorp/go-version v1.6.0 // indirect github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb // indirect github.com/mattn/go-colorable v0.1.12 // indirect github.com/mattn/go-isatty v0.0.14 // indirect diff --git a/go.sum b/go.sum index 3b16ed5..0b9a9b0 100644 --- a/go.sum +++ b/go.sum @@ -41,6 +41,8 @@ github.com/hashicorp/go-hclog v1.3.0 h1:G0ACM8Z2WilWgPv3Vdzwm3V0BQu/kSmrkVtpe1fy github.com/hashicorp/go-hclog v1.3.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-plugin v1.4.5 h1:oTE/oQR4eghggRg8VY7PAz3dr++VwDNBGCcOfIvHpBo= github.com/hashicorp/go-plugin v1.4.5/go.mod h1:viDMjcLJuDui6pXb8U4HVfb8AamCWhHGUjr2IrTF67s= +github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= +github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/hcl/v2 v2.14.0 h1:jX6+Q38Ly9zaAJlAjnFVyeNSNCKKW8D0wvyg7vij5Wc= github.com/hashicorp/hcl/v2 v2.14.0/go.mod h1:e4z5nxYlWNPdDSNYX+ph14EvWYMFm3eP0zIUqPc2jr0= github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb h1:b5rjCoWHc7eqmAS4/qyk21ZsHyb6Mxv/jykxvNTkU4M= diff --git a/plugin/host2plugin/client.go b/plugin/host2plugin/client.go index 474e629..52fa2e0 100644 --- a/plugin/host2plugin/client.go +++ b/plugin/host2plugin/client.go @@ -5,6 +5,7 @@ import ( "os/exec" "github.com/hashicorp/go-plugin" + "github.com/hashicorp/go-version" "github.com/terraform-linters/tflint-plugin-sdk/hclext" "github.com/terraform-linters/tflint-plugin-sdk/logger" "github.com/terraform-linters/tflint-plugin-sdk/plugin/fromproto" @@ -67,6 +68,19 @@ func (c *GRPCClient) RuleNames() ([]string, error) { return resp.Names, nil } +// VersionConstraints returns constraints of TFLint versions. +func (c *GRPCClient) VersionConstraints() (version.Constraints, error) { + resp, err := c.client.GetVersionConstraint(context.Background(), &proto.GetVersionConstraint_Request{}) + if err != nil { + return nil, fromproto.Error(err) + } + + if resp.Constraint == "" { + return version.Constraints{}, nil + } + return version.NewConstraint(resp.Constraint) +} + // ConfigSchema fetches the config schema from a plugin. func (c *GRPCClient) ConfigSchema() (*hclext.BodySchema, error) { resp, err := c.client.GetConfigSchema(context.Background(), &proto.GetConfigSchema_Request{}) diff --git a/plugin/host2plugin/server.go b/plugin/host2plugin/server.go index 574af22..9a5832e 100644 --- a/plugin/host2plugin/server.go +++ b/plugin/host2plugin/server.go @@ -63,6 +63,11 @@ func (s *GRPCServer) GetRuleNames(ctx context.Context, req *proto.GetRuleNames_R return &proto.GetRuleNames_Response{Names: s.impl.RuleNames()}, nil } +// GetVersionConstraint returns a constraint of TFLint versions. +func (s *GRPCServer) GetVersionConstraint(ctx context.Context, req *proto.GetVersionConstraint_Request) (*proto.GetVersionConstraint_Response, error) { + return &proto.GetVersionConstraint_Response{Constraint: s.impl.VersionConstraint()}, nil +} + // GetConfigSchema returns the config schema of the plugin. func (s *GRPCServer) GetConfigSchema(ctx context.Context, req *proto.GetConfigSchema_Request) (*proto.GetConfigSchema_Response, error) { return &proto.GetConfigSchema_Response{Schema: toproto.BodySchema(s.impl.ConfigSchema())}, nil diff --git a/plugin/proto/tflint.pb.go b/plugin/proto/tflint.pb.go index 12034da68a..15cb8f7 100644 --- a/plugin/proto/tflint.pb.go +++ b/plugin/proto/tflint.pb.go @@ -222,7 +222,7 @@ func (x EmitIssue_Severity) Number() protoreflect.EnumNumber { // Deprecated: Use EmitIssue_Severity.Descriptor instead. func (EmitIssue_Severity) EnumDescriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{13, 0} + return file_tflint_proto_rawDescGZIP(), []int{14, 0} } type GetName struct { @@ -301,6 +301,44 @@ func (*GetVersion) Descriptor() ([]byte, []int) { return file_tflint_proto_rawDescGZIP(), []int{1} } +type GetVersionConstraint struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GetVersionConstraint) Reset() { + *x = GetVersionConstraint{} + if protoimpl.UnsafeEnabled { + mi := &file_tflint_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetVersionConstraint) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetVersionConstraint) ProtoMessage() {} + +func (x *GetVersionConstraint) ProtoReflect() protoreflect.Message { + mi := &file_tflint_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) +} + +// Deprecated: Use GetVersionConstraint.ProtoReflect.Descriptor instead. +func (*GetVersionConstraint) Descriptor() ([]byte, []int) { + return file_tflint_proto_rawDescGZIP(), []int{2} +} + type GetRuleNames struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -310,7 +348,7 @@ type GetRuleNames struct { func (x *GetRuleNames) Reset() { *x = GetRuleNames{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[2] + mi := &file_tflint_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -323,7 +361,7 @@ func (x *GetRuleNames) String() string { func (*GetRuleNames) ProtoMessage() {} func (x *GetRuleNames) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[2] + mi := &file_tflint_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -336,7 +374,7 @@ func (x *GetRuleNames) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRuleNames.ProtoReflect.Descriptor instead. func (*GetRuleNames) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{2} + return file_tflint_proto_rawDescGZIP(), []int{3} } type GetConfigSchema struct { @@ -348,7 +386,7 @@ type GetConfigSchema struct { func (x *GetConfigSchema) Reset() { *x = GetConfigSchema{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[3] + mi := &file_tflint_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -361,7 +399,7 @@ func (x *GetConfigSchema) String() string { func (*GetConfigSchema) ProtoMessage() {} func (x *GetConfigSchema) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[3] + mi := &file_tflint_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -374,7 +412,7 @@ func (x *GetConfigSchema) ProtoReflect() protoreflect.Message { // Deprecated: Use GetConfigSchema.ProtoReflect.Descriptor instead. func (*GetConfigSchema) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{3} + return file_tflint_proto_rawDescGZIP(), []int{4} } type ApplyGlobalConfig struct { @@ -386,7 +424,7 @@ type ApplyGlobalConfig struct { func (x *ApplyGlobalConfig) Reset() { *x = ApplyGlobalConfig{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[4] + mi := &file_tflint_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -399,7 +437,7 @@ func (x *ApplyGlobalConfig) String() string { func (*ApplyGlobalConfig) ProtoMessage() {} func (x *ApplyGlobalConfig) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[4] + mi := &file_tflint_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -412,7 +450,7 @@ func (x *ApplyGlobalConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyGlobalConfig.ProtoReflect.Descriptor instead. func (*ApplyGlobalConfig) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{4} + return file_tflint_proto_rawDescGZIP(), []int{5} } type ApplyConfig struct { @@ -424,7 +462,7 @@ type ApplyConfig struct { func (x *ApplyConfig) Reset() { *x = ApplyConfig{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[5] + mi := &file_tflint_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -437,7 +475,7 @@ func (x *ApplyConfig) String() string { func (*ApplyConfig) ProtoMessage() {} func (x *ApplyConfig) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[5] + mi := &file_tflint_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -450,7 +488,7 @@ func (x *ApplyConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyConfig.ProtoReflect.Descriptor instead. func (*ApplyConfig) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{5} + return file_tflint_proto_rawDescGZIP(), []int{6} } type Check struct { @@ -462,7 +500,7 @@ type Check struct { func (x *Check) Reset() { *x = Check{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[6] + mi := &file_tflint_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -475,7 +513,7 @@ func (x *Check) String() string { func (*Check) ProtoMessage() {} func (x *Check) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[6] + mi := &file_tflint_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -488,7 +526,7 @@ func (x *Check) ProtoReflect() protoreflect.Message { // Deprecated: Use Check.ProtoReflect.Descriptor instead. func (*Check) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{6} + return file_tflint_proto_rawDescGZIP(), []int{7} } type GetModulePath struct { @@ -500,7 +538,7 @@ type GetModulePath struct { func (x *GetModulePath) Reset() { *x = GetModulePath{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[7] + mi := &file_tflint_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -513,7 +551,7 @@ func (x *GetModulePath) String() string { func (*GetModulePath) ProtoMessage() {} func (x *GetModulePath) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[7] + mi := &file_tflint_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -526,7 +564,7 @@ func (x *GetModulePath) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModulePath.ProtoReflect.Descriptor instead. func (*GetModulePath) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{7} + return file_tflint_proto_rawDescGZIP(), []int{8} } type GetModuleContent struct { @@ -538,7 +576,7 @@ type GetModuleContent struct { func (x *GetModuleContent) Reset() { *x = GetModuleContent{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[8] + mi := &file_tflint_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -551,7 +589,7 @@ func (x *GetModuleContent) String() string { func (*GetModuleContent) ProtoMessage() {} func (x *GetModuleContent) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[8] + mi := &file_tflint_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -564,7 +602,7 @@ func (x *GetModuleContent) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModuleContent.ProtoReflect.Descriptor instead. func (*GetModuleContent) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{8} + return file_tflint_proto_rawDescGZIP(), []int{9} } type GetFile struct { @@ -576,7 +614,7 @@ type GetFile struct { func (x *GetFile) Reset() { *x = GetFile{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[9] + mi := &file_tflint_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -589,7 +627,7 @@ func (x *GetFile) String() string { func (*GetFile) ProtoMessage() {} func (x *GetFile) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[9] + mi := &file_tflint_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -602,7 +640,7 @@ func (x *GetFile) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFile.ProtoReflect.Descriptor instead. func (*GetFile) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{9} + return file_tflint_proto_rawDescGZIP(), []int{10} } type GetFiles struct { @@ -614,7 +652,7 @@ type GetFiles struct { func (x *GetFiles) Reset() { *x = GetFiles{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[10] + mi := &file_tflint_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -627,7 +665,7 @@ func (x *GetFiles) String() string { func (*GetFiles) ProtoMessage() {} func (x *GetFiles) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[10] + mi := &file_tflint_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -640,7 +678,7 @@ func (x *GetFiles) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFiles.ProtoReflect.Descriptor instead. func (*GetFiles) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{10} + return file_tflint_proto_rawDescGZIP(), []int{11} } type GetRuleConfigContent struct { @@ -652,7 +690,7 @@ type GetRuleConfigContent struct { func (x *GetRuleConfigContent) Reset() { *x = GetRuleConfigContent{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[11] + mi := &file_tflint_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -665,7 +703,7 @@ func (x *GetRuleConfigContent) String() string { func (*GetRuleConfigContent) ProtoMessage() {} func (x *GetRuleConfigContent) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[11] + mi := &file_tflint_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -678,7 +716,7 @@ func (x *GetRuleConfigContent) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRuleConfigContent.ProtoReflect.Descriptor instead. func (*GetRuleConfigContent) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{11} + return file_tflint_proto_rawDescGZIP(), []int{12} } type EvaluateExpr struct { @@ -690,7 +728,7 @@ type EvaluateExpr struct { func (x *EvaluateExpr) Reset() { *x = EvaluateExpr{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[12] + mi := &file_tflint_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -703,7 +741,7 @@ func (x *EvaluateExpr) String() string { func (*EvaluateExpr) ProtoMessage() {} func (x *EvaluateExpr) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[12] + mi := &file_tflint_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -716,7 +754,7 @@ func (x *EvaluateExpr) ProtoReflect() protoreflect.Message { // Deprecated: Use EvaluateExpr.ProtoReflect.Descriptor instead. func (*EvaluateExpr) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{12} + return file_tflint_proto_rawDescGZIP(), []int{13} } type EmitIssue struct { @@ -728,7 +766,7 @@ type EmitIssue struct { func (x *EmitIssue) Reset() { *x = EmitIssue{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[13] + mi := &file_tflint_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -741,7 +779,7 @@ func (x *EmitIssue) String() string { func (*EmitIssue) ProtoMessage() {} func (x *EmitIssue) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[13] + mi := &file_tflint_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -754,7 +792,7 @@ func (x *EmitIssue) ProtoReflect() protoreflect.Message { // Deprecated: Use EmitIssue.ProtoReflect.Descriptor instead. func (*EmitIssue) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{13} + return file_tflint_proto_rawDescGZIP(), []int{14} } type BodySchema struct { @@ -770,7 +808,7 @@ type BodySchema struct { func (x *BodySchema) Reset() { *x = BodySchema{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[14] + mi := &file_tflint_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -783,7 +821,7 @@ func (x *BodySchema) String() string { func (*BodySchema) ProtoMessage() {} func (x *BodySchema) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[14] + mi := &file_tflint_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -796,7 +834,7 @@ func (x *BodySchema) ProtoReflect() protoreflect.Message { // Deprecated: Use BodySchema.ProtoReflect.Descriptor instead. func (*BodySchema) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{14} + return file_tflint_proto_rawDescGZIP(), []int{15} } func (x *BodySchema) GetAttributes() []*BodySchema_Attribute { @@ -832,7 +870,7 @@ type BodyContent struct { func (x *BodyContent) Reset() { *x = BodyContent{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[15] + mi := &file_tflint_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -845,7 +883,7 @@ func (x *BodyContent) String() string { func (*BodyContent) ProtoMessage() {} func (x *BodyContent) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[15] + mi := &file_tflint_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -858,7 +896,7 @@ func (x *BodyContent) ProtoReflect() protoreflect.Message { // Deprecated: Use BodyContent.ProtoReflect.Descriptor instead. func (*BodyContent) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{15} + return file_tflint_proto_rawDescGZIP(), []int{16} } func (x *BodyContent) GetAttributes() map[string]*BodyContent_Attribute { @@ -888,7 +926,7 @@ type Range struct { func (x *Range) Reset() { *x = Range{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[16] + mi := &file_tflint_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -901,7 +939,7 @@ func (x *Range) String() string { func (*Range) ProtoMessage() {} func (x *Range) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[16] + mi := &file_tflint_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -914,7 +952,7 @@ func (x *Range) ProtoReflect() protoreflect.Message { // Deprecated: Use Range.ProtoReflect.Descriptor instead. func (*Range) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{16} + return file_tflint_proto_rawDescGZIP(), []int{17} } func (x *Range) GetFilename() string { @@ -950,7 +988,7 @@ type ErrorDetail struct { func (x *ErrorDetail) Reset() { *x = ErrorDetail{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[17] + mi := &file_tflint_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -963,7 +1001,7 @@ func (x *ErrorDetail) String() string { func (*ErrorDetail) ProtoMessage() {} func (x *ErrorDetail) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[17] + mi := &file_tflint_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -976,7 +1014,7 @@ func (x *ErrorDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use ErrorDetail.ProtoReflect.Descriptor instead. func (*ErrorDetail) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{17} + return file_tflint_proto_rawDescGZIP(), []int{18} } func (x *ErrorDetail) GetCode() ErrorCode { @@ -1002,7 +1040,7 @@ type GetName_Request struct { func (x *GetName_Request) Reset() { *x = GetName_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[18] + mi := &file_tflint_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1015,7 +1053,7 @@ func (x *GetName_Request) String() string { func (*GetName_Request) ProtoMessage() {} func (x *GetName_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[18] + mi := &file_tflint_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1042,7 +1080,7 @@ type GetName_Response struct { func (x *GetName_Response) Reset() { *x = GetName_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[19] + mi := &file_tflint_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1055,7 +1093,7 @@ func (x *GetName_Response) String() string { func (*GetName_Response) ProtoMessage() {} func (x *GetName_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[19] + mi := &file_tflint_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1087,7 +1125,7 @@ type GetVersion_Request struct { func (x *GetVersion_Request) Reset() { *x = GetVersion_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[20] + mi := &file_tflint_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1100,7 +1138,7 @@ func (x *GetVersion_Request) String() string { func (*GetVersion_Request) ProtoMessage() {} func (x *GetVersion_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[20] + mi := &file_tflint_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1127,7 +1165,7 @@ type GetVersion_Response struct { func (x *GetVersion_Response) Reset() { *x = GetVersion_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[21] + mi := &file_tflint_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1140,7 +1178,7 @@ func (x *GetVersion_Response) String() string { func (*GetVersion_Response) ProtoMessage() {} func (x *GetVersion_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[21] + mi := &file_tflint_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1163,6 +1201,91 @@ func (x *GetVersion_Response) GetVersion() string { return "" } +type GetVersionConstraint_Request struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GetVersionConstraint_Request) Reset() { + *x = GetVersionConstraint_Request{} + if protoimpl.UnsafeEnabled { + mi := &file_tflint_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetVersionConstraint_Request) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetVersionConstraint_Request) ProtoMessage() {} + +func (x *GetVersionConstraint_Request) ProtoReflect() protoreflect.Message { + mi := &file_tflint_proto_msgTypes[23] + 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) +} + +// Deprecated: Use GetVersionConstraint_Request.ProtoReflect.Descriptor instead. +func (*GetVersionConstraint_Request) Descriptor() ([]byte, []int) { + return file_tflint_proto_rawDescGZIP(), []int{2, 0} +} + +type GetVersionConstraint_Response struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Constraint string `protobuf:"bytes,1,opt,name=constraint,proto3" json:"constraint,omitempty"` +} + +func (x *GetVersionConstraint_Response) Reset() { + *x = GetVersionConstraint_Response{} + if protoimpl.UnsafeEnabled { + mi := &file_tflint_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetVersionConstraint_Response) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetVersionConstraint_Response) ProtoMessage() {} + +func (x *GetVersionConstraint_Response) ProtoReflect() protoreflect.Message { + mi := &file_tflint_proto_msgTypes[24] + 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) +} + +// Deprecated: Use GetVersionConstraint_Response.ProtoReflect.Descriptor instead. +func (*GetVersionConstraint_Response) Descriptor() ([]byte, []int) { + return file_tflint_proto_rawDescGZIP(), []int{2, 1} +} + +func (x *GetVersionConstraint_Response) GetConstraint() string { + if x != nil { + return x.Constraint + } + return "" +} + type GetRuleNames_Request struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1172,7 +1295,7 @@ type GetRuleNames_Request struct { func (x *GetRuleNames_Request) Reset() { *x = GetRuleNames_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[22] + mi := &file_tflint_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1185,7 +1308,7 @@ func (x *GetRuleNames_Request) String() string { func (*GetRuleNames_Request) ProtoMessage() {} func (x *GetRuleNames_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[22] + mi := &file_tflint_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1198,7 +1321,7 @@ func (x *GetRuleNames_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRuleNames_Request.ProtoReflect.Descriptor instead. func (*GetRuleNames_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{2, 0} + return file_tflint_proto_rawDescGZIP(), []int{3, 0} } type GetRuleNames_Response struct { @@ -1212,7 +1335,7 @@ type GetRuleNames_Response struct { func (x *GetRuleNames_Response) Reset() { *x = GetRuleNames_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[23] + mi := &file_tflint_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1225,7 +1348,7 @@ func (x *GetRuleNames_Response) String() string { func (*GetRuleNames_Response) ProtoMessage() {} func (x *GetRuleNames_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[23] + mi := &file_tflint_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1238,7 +1361,7 @@ func (x *GetRuleNames_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRuleNames_Response.ProtoReflect.Descriptor instead. func (*GetRuleNames_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{2, 1} + return file_tflint_proto_rawDescGZIP(), []int{3, 1} } func (x *GetRuleNames_Response) GetNames() []string { @@ -1257,7 +1380,7 @@ type GetConfigSchema_Request struct { func (x *GetConfigSchema_Request) Reset() { *x = GetConfigSchema_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[24] + mi := &file_tflint_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1270,7 +1393,7 @@ func (x *GetConfigSchema_Request) String() string { func (*GetConfigSchema_Request) ProtoMessage() {} func (x *GetConfigSchema_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[24] + mi := &file_tflint_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1283,7 +1406,7 @@ func (x *GetConfigSchema_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetConfigSchema_Request.ProtoReflect.Descriptor instead. func (*GetConfigSchema_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{3, 0} + return file_tflint_proto_rawDescGZIP(), []int{4, 0} } type GetConfigSchema_Response struct { @@ -1297,7 +1420,7 @@ type GetConfigSchema_Response struct { func (x *GetConfigSchema_Response) Reset() { *x = GetConfigSchema_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[25] + mi := &file_tflint_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1310,7 +1433,7 @@ func (x *GetConfigSchema_Response) String() string { func (*GetConfigSchema_Response) ProtoMessage() {} func (x *GetConfigSchema_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[25] + mi := &file_tflint_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1323,7 +1446,7 @@ func (x *GetConfigSchema_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetConfigSchema_Response.ProtoReflect.Descriptor instead. func (*GetConfigSchema_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{3, 1} + return file_tflint_proto_rawDescGZIP(), []int{4, 1} } func (x *GetConfigSchema_Response) GetSchema() *BodySchema { @@ -1346,7 +1469,7 @@ type ApplyGlobalConfig_Config struct { func (x *ApplyGlobalConfig_Config) Reset() { *x = ApplyGlobalConfig_Config{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[26] + mi := &file_tflint_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1359,7 +1482,7 @@ func (x *ApplyGlobalConfig_Config) String() string { func (*ApplyGlobalConfig_Config) ProtoMessage() {} func (x *ApplyGlobalConfig_Config) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[26] + mi := &file_tflint_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1372,7 +1495,7 @@ func (x *ApplyGlobalConfig_Config) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyGlobalConfig_Config.ProtoReflect.Descriptor instead. func (*ApplyGlobalConfig_Config) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{4, 0} + return file_tflint_proto_rawDescGZIP(), []int{5, 0} } func (x *ApplyGlobalConfig_Config) GetRules() map[string]*ApplyGlobalConfig_RuleConfig { @@ -1408,7 +1531,7 @@ type ApplyGlobalConfig_RuleConfig struct { func (x *ApplyGlobalConfig_RuleConfig) Reset() { *x = ApplyGlobalConfig_RuleConfig{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[27] + mi := &file_tflint_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1421,7 +1544,7 @@ func (x *ApplyGlobalConfig_RuleConfig) String() string { func (*ApplyGlobalConfig_RuleConfig) ProtoMessage() {} func (x *ApplyGlobalConfig_RuleConfig) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[27] + mi := &file_tflint_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1434,7 +1557,7 @@ func (x *ApplyGlobalConfig_RuleConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyGlobalConfig_RuleConfig.ProtoReflect.Descriptor instead. func (*ApplyGlobalConfig_RuleConfig) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{4, 1} + return file_tflint_proto_rawDescGZIP(), []int{5, 1} } func (x *ApplyGlobalConfig_RuleConfig) GetName() string { @@ -1462,7 +1585,7 @@ type ApplyGlobalConfig_Request struct { func (x *ApplyGlobalConfig_Request) Reset() { *x = ApplyGlobalConfig_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[28] + mi := &file_tflint_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1475,7 +1598,7 @@ func (x *ApplyGlobalConfig_Request) String() string { func (*ApplyGlobalConfig_Request) ProtoMessage() {} func (x *ApplyGlobalConfig_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[28] + mi := &file_tflint_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1488,7 +1611,7 @@ func (x *ApplyGlobalConfig_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyGlobalConfig_Request.ProtoReflect.Descriptor instead. func (*ApplyGlobalConfig_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{4, 2} + return file_tflint_proto_rawDescGZIP(), []int{5, 2} } func (x *ApplyGlobalConfig_Request) GetConfig() *ApplyGlobalConfig_Config { @@ -1507,7 +1630,7 @@ type ApplyGlobalConfig_Response struct { func (x *ApplyGlobalConfig_Response) Reset() { *x = ApplyGlobalConfig_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[29] + mi := &file_tflint_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1520,7 +1643,7 @@ func (x *ApplyGlobalConfig_Response) String() string { func (*ApplyGlobalConfig_Response) ProtoMessage() {} func (x *ApplyGlobalConfig_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[29] + mi := &file_tflint_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1533,7 +1656,7 @@ func (x *ApplyGlobalConfig_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyGlobalConfig_Response.ProtoReflect.Descriptor instead. func (*ApplyGlobalConfig_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{4, 3} + return file_tflint_proto_rawDescGZIP(), []int{5, 3} } type ApplyConfig_Request struct { @@ -1547,7 +1670,7 @@ type ApplyConfig_Request struct { func (x *ApplyConfig_Request) Reset() { *x = ApplyConfig_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[31] + mi := &file_tflint_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1560,7 +1683,7 @@ func (x *ApplyConfig_Request) String() string { func (*ApplyConfig_Request) ProtoMessage() {} func (x *ApplyConfig_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[31] + mi := &file_tflint_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1573,7 +1696,7 @@ func (x *ApplyConfig_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyConfig_Request.ProtoReflect.Descriptor instead. func (*ApplyConfig_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{5, 0} + return file_tflint_proto_rawDescGZIP(), []int{6, 0} } func (x *ApplyConfig_Request) GetContent() *BodyContent { @@ -1592,7 +1715,7 @@ type ApplyConfig_Response struct { func (x *ApplyConfig_Response) Reset() { *x = ApplyConfig_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[32] + mi := &file_tflint_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1605,7 +1728,7 @@ func (x *ApplyConfig_Response) String() string { func (*ApplyConfig_Response) ProtoMessage() {} func (x *ApplyConfig_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[32] + mi := &file_tflint_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1618,7 +1741,7 @@ func (x *ApplyConfig_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyConfig_Response.ProtoReflect.Descriptor instead. func (*ApplyConfig_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{5, 1} + return file_tflint_proto_rawDescGZIP(), []int{6, 1} } type Check_Request struct { @@ -1632,7 +1755,7 @@ type Check_Request struct { func (x *Check_Request) Reset() { *x = Check_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[33] + mi := &file_tflint_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1645,7 +1768,7 @@ func (x *Check_Request) String() string { func (*Check_Request) ProtoMessage() {} func (x *Check_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[33] + mi := &file_tflint_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1658,7 +1781,7 @@ func (x *Check_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use Check_Request.ProtoReflect.Descriptor instead. func (*Check_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{6, 0} + return file_tflint_proto_rawDescGZIP(), []int{7, 0} } func (x *Check_Request) GetRunner() uint32 { @@ -1677,7 +1800,7 @@ type Check_Response struct { func (x *Check_Response) Reset() { *x = Check_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[34] + mi := &file_tflint_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1690,7 +1813,7 @@ func (x *Check_Response) String() string { func (*Check_Response) ProtoMessage() {} func (x *Check_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[34] + mi := &file_tflint_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1703,7 +1826,7 @@ func (x *Check_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use Check_Response.ProtoReflect.Descriptor instead. func (*Check_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{6, 1} + return file_tflint_proto_rawDescGZIP(), []int{7, 1} } type GetModulePath_Request struct { @@ -1715,7 +1838,7 @@ type GetModulePath_Request struct { func (x *GetModulePath_Request) Reset() { *x = GetModulePath_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[35] + mi := &file_tflint_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1728,7 +1851,7 @@ func (x *GetModulePath_Request) String() string { func (*GetModulePath_Request) ProtoMessage() {} func (x *GetModulePath_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[35] + mi := &file_tflint_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1741,7 +1864,7 @@ func (x *GetModulePath_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModulePath_Request.ProtoReflect.Descriptor instead. func (*GetModulePath_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{7, 0} + return file_tflint_proto_rawDescGZIP(), []int{8, 0} } type GetModulePath_Response struct { @@ -1755,7 +1878,7 @@ type GetModulePath_Response struct { func (x *GetModulePath_Response) Reset() { *x = GetModulePath_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[36] + mi := &file_tflint_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1768,7 +1891,7 @@ func (x *GetModulePath_Response) String() string { func (*GetModulePath_Response) ProtoMessage() {} func (x *GetModulePath_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[36] + mi := &file_tflint_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1781,7 +1904,7 @@ func (x *GetModulePath_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModulePath_Response.ProtoReflect.Descriptor instead. func (*GetModulePath_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{7, 1} + return file_tflint_proto_rawDescGZIP(), []int{8, 1} } func (x *GetModulePath_Response) GetPath() []string { @@ -1802,7 +1925,7 @@ type GetModuleContent_Hint struct { func (x *GetModuleContent_Hint) Reset() { *x = GetModuleContent_Hint{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[37] + mi := &file_tflint_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1815,7 +1938,7 @@ func (x *GetModuleContent_Hint) String() string { func (*GetModuleContent_Hint) ProtoMessage() {} func (x *GetModuleContent_Hint) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[37] + mi := &file_tflint_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1828,7 +1951,7 @@ func (x *GetModuleContent_Hint) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModuleContent_Hint.ProtoReflect.Descriptor instead. func (*GetModuleContent_Hint) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{8, 0} + return file_tflint_proto_rawDescGZIP(), []int{9, 0} } func (x *GetModuleContent_Hint) GetResourceType() string { @@ -1851,7 +1974,7 @@ type GetModuleContent_Option struct { func (x *GetModuleContent_Option) Reset() { *x = GetModuleContent_Option{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[38] + mi := &file_tflint_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1864,7 +1987,7 @@ func (x *GetModuleContent_Option) String() string { func (*GetModuleContent_Option) ProtoMessage() {} func (x *GetModuleContent_Option) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[38] + mi := &file_tflint_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1877,7 +2000,7 @@ func (x *GetModuleContent_Option) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModuleContent_Option.ProtoReflect.Descriptor instead. func (*GetModuleContent_Option) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{8, 1} + return file_tflint_proto_rawDescGZIP(), []int{9, 1} } func (x *GetModuleContent_Option) GetModuleCtx() ModuleCtxType { @@ -1913,7 +2036,7 @@ type GetModuleContent_Request struct { func (x *GetModuleContent_Request) Reset() { *x = GetModuleContent_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[39] + mi := &file_tflint_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1926,7 +2049,7 @@ func (x *GetModuleContent_Request) String() string { func (*GetModuleContent_Request) ProtoMessage() {} func (x *GetModuleContent_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[39] + mi := &file_tflint_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1939,7 +2062,7 @@ func (x *GetModuleContent_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModuleContent_Request.ProtoReflect.Descriptor instead. func (*GetModuleContent_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{8, 2} + return file_tflint_proto_rawDescGZIP(), []int{9, 2} } func (x *GetModuleContent_Request) GetSchema() *BodySchema { @@ -1967,7 +2090,7 @@ type GetModuleContent_Response struct { func (x *GetModuleContent_Response) Reset() { *x = GetModuleContent_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[40] + mi := &file_tflint_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1980,7 +2103,7 @@ func (x *GetModuleContent_Response) String() string { func (*GetModuleContent_Response) ProtoMessage() {} func (x *GetModuleContent_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[40] + mi := &file_tflint_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1993,7 +2116,7 @@ func (x *GetModuleContent_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetModuleContent_Response.ProtoReflect.Descriptor instead. func (*GetModuleContent_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{8, 3} + return file_tflint_proto_rawDescGZIP(), []int{9, 3} } func (x *GetModuleContent_Response) GetContent() *BodyContent { @@ -2014,7 +2137,7 @@ type GetFile_Request struct { func (x *GetFile_Request) Reset() { *x = GetFile_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[41] + mi := &file_tflint_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2027,7 +2150,7 @@ func (x *GetFile_Request) String() string { func (*GetFile_Request) ProtoMessage() {} func (x *GetFile_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[41] + mi := &file_tflint_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2040,7 +2163,7 @@ func (x *GetFile_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFile_Request.ProtoReflect.Descriptor instead. func (*GetFile_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{9, 0} + return file_tflint_proto_rawDescGZIP(), []int{10, 0} } func (x *GetFile_Request) GetName() string { @@ -2061,7 +2184,7 @@ type GetFile_Response struct { func (x *GetFile_Response) Reset() { *x = GetFile_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[42] + mi := &file_tflint_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2074,7 +2197,7 @@ func (x *GetFile_Response) String() string { func (*GetFile_Response) ProtoMessage() {} func (x *GetFile_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[42] + mi := &file_tflint_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2087,7 +2210,7 @@ func (x *GetFile_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFile_Response.ProtoReflect.Descriptor instead. func (*GetFile_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{9, 1} + return file_tflint_proto_rawDescGZIP(), []int{10, 1} } func (x *GetFile_Response) GetFile() []byte { @@ -2106,7 +2229,7 @@ type GetFiles_Request struct { func (x *GetFiles_Request) Reset() { *x = GetFiles_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[43] + mi := &file_tflint_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2119,7 +2242,7 @@ func (x *GetFiles_Request) String() string { func (*GetFiles_Request) ProtoMessage() {} func (x *GetFiles_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[43] + mi := &file_tflint_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2132,7 +2255,7 @@ func (x *GetFiles_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFiles_Request.ProtoReflect.Descriptor instead. func (*GetFiles_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{10, 0} + return file_tflint_proto_rawDescGZIP(), []int{11, 0} } type GetFiles_Response struct { @@ -2146,7 +2269,7 @@ type GetFiles_Response struct { func (x *GetFiles_Response) Reset() { *x = GetFiles_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[44] + mi := &file_tflint_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2159,7 +2282,7 @@ func (x *GetFiles_Response) String() string { func (*GetFiles_Response) ProtoMessage() {} func (x *GetFiles_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[44] + mi := &file_tflint_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2172,7 +2295,7 @@ func (x *GetFiles_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetFiles_Response.ProtoReflect.Descriptor instead. func (*GetFiles_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{10, 1} + return file_tflint_proto_rawDescGZIP(), []int{11, 1} } func (x *GetFiles_Response) GetFiles() map[string][]byte { @@ -2194,7 +2317,7 @@ type GetRuleConfigContent_Request struct { func (x *GetRuleConfigContent_Request) Reset() { *x = GetRuleConfigContent_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[46] + mi := &file_tflint_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2207,7 +2330,7 @@ func (x *GetRuleConfigContent_Request) String() string { func (*GetRuleConfigContent_Request) ProtoMessage() {} func (x *GetRuleConfigContent_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[46] + mi := &file_tflint_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2220,7 +2343,7 @@ func (x *GetRuleConfigContent_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRuleConfigContent_Request.ProtoReflect.Descriptor instead. func (*GetRuleConfigContent_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{11, 0} + return file_tflint_proto_rawDescGZIP(), []int{12, 0} } func (x *GetRuleConfigContent_Request) GetName() string { @@ -2248,7 +2371,7 @@ type GetRuleConfigContent_Response struct { func (x *GetRuleConfigContent_Response) Reset() { *x = GetRuleConfigContent_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[47] + mi := &file_tflint_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2261,7 +2384,7 @@ func (x *GetRuleConfigContent_Response) String() string { func (*GetRuleConfigContent_Response) ProtoMessage() {} func (x *GetRuleConfigContent_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[47] + mi := &file_tflint_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2274,7 +2397,7 @@ func (x *GetRuleConfigContent_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetRuleConfigContent_Response.ProtoReflect.Descriptor instead. func (*GetRuleConfigContent_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{11, 1} + return file_tflint_proto_rawDescGZIP(), []int{12, 1} } func (x *GetRuleConfigContent_Response) GetContent() *BodyContent { @@ -2296,7 +2419,7 @@ type EvaluateExpr_Option struct { func (x *EvaluateExpr_Option) Reset() { *x = EvaluateExpr_Option{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[48] + mi := &file_tflint_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2309,7 +2432,7 @@ func (x *EvaluateExpr_Option) String() string { func (*EvaluateExpr_Option) ProtoMessage() {} func (x *EvaluateExpr_Option) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[48] + mi := &file_tflint_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2322,7 +2445,7 @@ func (x *EvaluateExpr_Option) ProtoReflect() protoreflect.Message { // Deprecated: Use EvaluateExpr_Option.ProtoReflect.Descriptor instead. func (*EvaluateExpr_Option) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{12, 0} + return file_tflint_proto_rawDescGZIP(), []int{13, 0} } func (x *EvaluateExpr_Option) GetType() []byte { @@ -2352,7 +2475,7 @@ type EvaluateExpr_Request struct { func (x *EvaluateExpr_Request) Reset() { *x = EvaluateExpr_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[49] + mi := &file_tflint_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2365,7 +2488,7 @@ func (x *EvaluateExpr_Request) String() string { func (*EvaluateExpr_Request) ProtoMessage() {} func (x *EvaluateExpr_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[49] + mi := &file_tflint_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2378,7 +2501,7 @@ func (x *EvaluateExpr_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use EvaluateExpr_Request.ProtoReflect.Descriptor instead. func (*EvaluateExpr_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{12, 1} + return file_tflint_proto_rawDescGZIP(), []int{13, 1} } func (x *EvaluateExpr_Request) GetExpr() []byte { @@ -2413,7 +2536,7 @@ type EvaluateExpr_Response struct { func (x *EvaluateExpr_Response) Reset() { *x = EvaluateExpr_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[50] + mi := &file_tflint_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2426,7 +2549,7 @@ func (x *EvaluateExpr_Response) String() string { func (*EvaluateExpr_Response) ProtoMessage() {} func (x *EvaluateExpr_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[50] + mi := &file_tflint_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2439,7 +2562,7 @@ func (x *EvaluateExpr_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use EvaluateExpr_Response.ProtoReflect.Descriptor instead. func (*EvaluateExpr_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{12, 2} + return file_tflint_proto_rawDescGZIP(), []int{13, 2} } func (x *EvaluateExpr_Response) GetValue() []byte { @@ -2463,7 +2586,7 @@ type EmitIssue_Rule struct { func (x *EmitIssue_Rule) Reset() { *x = EmitIssue_Rule{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[51] + mi := &file_tflint_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2476,7 +2599,7 @@ func (x *EmitIssue_Rule) String() string { func (*EmitIssue_Rule) ProtoMessage() {} func (x *EmitIssue_Rule) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[51] + mi := &file_tflint_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2489,7 +2612,7 @@ func (x *EmitIssue_Rule) ProtoReflect() protoreflect.Message { // Deprecated: Use EmitIssue_Rule.ProtoReflect.Descriptor instead. func (*EmitIssue_Rule) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{13, 0} + return file_tflint_proto_rawDescGZIP(), []int{14, 0} } func (x *EmitIssue_Rule) GetName() string { @@ -2533,7 +2656,7 @@ type EmitIssue_Request struct { func (x *EmitIssue_Request) Reset() { *x = EmitIssue_Request{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[52] + mi := &file_tflint_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2546,7 +2669,7 @@ func (x *EmitIssue_Request) String() string { func (*EmitIssue_Request) ProtoMessage() {} func (x *EmitIssue_Request) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[52] + mi := &file_tflint_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2559,7 +2682,7 @@ func (x *EmitIssue_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use EmitIssue_Request.ProtoReflect.Descriptor instead. func (*EmitIssue_Request) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{13, 1} + return file_tflint_proto_rawDescGZIP(), []int{14, 1} } func (x *EmitIssue_Request) GetRule() *EmitIssue_Rule { @@ -2592,7 +2715,7 @@ type EmitIssue_Response struct { func (x *EmitIssue_Response) Reset() { *x = EmitIssue_Response{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[53] + mi := &file_tflint_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2605,7 +2728,7 @@ func (x *EmitIssue_Response) String() string { func (*EmitIssue_Response) ProtoMessage() {} func (x *EmitIssue_Response) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[53] + mi := &file_tflint_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2618,7 +2741,7 @@ func (x *EmitIssue_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use EmitIssue_Response.ProtoReflect.Descriptor instead. func (*EmitIssue_Response) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{13, 2} + return file_tflint_proto_rawDescGZIP(), []int{14, 2} } type BodySchema_Attribute struct { @@ -2633,7 +2756,7 @@ type BodySchema_Attribute struct { func (x *BodySchema_Attribute) Reset() { *x = BodySchema_Attribute{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[54] + mi := &file_tflint_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2646,7 +2769,7 @@ func (x *BodySchema_Attribute) String() string { func (*BodySchema_Attribute) ProtoMessage() {} func (x *BodySchema_Attribute) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[54] + mi := &file_tflint_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2659,7 +2782,7 @@ func (x *BodySchema_Attribute) ProtoReflect() protoreflect.Message { // Deprecated: Use BodySchema_Attribute.ProtoReflect.Descriptor instead. func (*BodySchema_Attribute) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{14, 0} + return file_tflint_proto_rawDescGZIP(), []int{15, 0} } func (x *BodySchema_Attribute) GetName() string { @@ -2689,7 +2812,7 @@ type BodySchema_Block struct { func (x *BodySchema_Block) Reset() { *x = BodySchema_Block{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[55] + mi := &file_tflint_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2702,7 +2825,7 @@ func (x *BodySchema_Block) String() string { func (*BodySchema_Block) ProtoMessage() {} func (x *BodySchema_Block) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[55] + mi := &file_tflint_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2715,7 +2838,7 @@ func (x *BodySchema_Block) ProtoReflect() protoreflect.Message { // Deprecated: Use BodySchema_Block.ProtoReflect.Descriptor instead. func (*BodySchema_Block) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{14, 1} + return file_tflint_proto_rawDescGZIP(), []int{15, 1} } func (x *BodySchema_Block) GetType() string { @@ -2754,7 +2877,7 @@ type BodyContent_Attribute struct { func (x *BodyContent_Attribute) Reset() { *x = BodyContent_Attribute{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[56] + mi := &file_tflint_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2767,7 +2890,7 @@ func (x *BodyContent_Attribute) String() string { func (*BodyContent_Attribute) ProtoMessage() {} func (x *BodyContent_Attribute) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[56] + mi := &file_tflint_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2780,7 +2903,7 @@ func (x *BodyContent_Attribute) ProtoReflect() protoreflect.Message { // Deprecated: Use BodyContent_Attribute.ProtoReflect.Descriptor instead. func (*BodyContent_Attribute) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{15, 0} + return file_tflint_proto_rawDescGZIP(), []int{16, 0} } func (x *BodyContent_Attribute) GetName() string { @@ -2834,7 +2957,7 @@ type BodyContent_Block struct { func (x *BodyContent_Block) Reset() { *x = BodyContent_Block{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[57] + mi := &file_tflint_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2847,7 +2970,7 @@ func (x *BodyContent_Block) String() string { func (*BodyContent_Block) ProtoMessage() {} func (x *BodyContent_Block) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[57] + mi := &file_tflint_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2860,7 +2983,7 @@ func (x *BodyContent_Block) ProtoReflect() protoreflect.Message { // Deprecated: Use BodyContent_Block.ProtoReflect.Descriptor instead. func (*BodyContent_Block) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{15, 1} + return file_tflint_proto_rawDescGZIP(), []int{16, 1} } func (x *BodyContent_Block) GetType() string { @@ -2918,7 +3041,7 @@ type Range_Pos struct { func (x *Range_Pos) Reset() { *x = Range_Pos{} if protoimpl.UnsafeEnabled { - mi := &file_tflint_proto_msgTypes[59] + mi := &file_tflint_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2931,7 +3054,7 @@ func (x *Range_Pos) String() string { func (*Range_Pos) ProtoMessage() {} func (x *Range_Pos) ProtoReflect() protoreflect.Message { - mi := &file_tflint_proto_msgTypes[59] + mi := &file_tflint_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2944,7 +3067,7 @@ func (x *Range_Pos) ProtoReflect() protoreflect.Message { // Deprecated: Use Range_Pos.ProtoReflect.Descriptor instead. func (*Range_Pos) Descriptor() ([]byte, []int) { - return file_tflint_proto_rawDescGZIP(), []int{16, 0} + return file_tflint_proto_rawDescGZIP(), []int{17, 0} } func (x *Range_Pos) GetLine() int64 { @@ -2979,312 +3102,323 @@ var file_tflint_proto_rawDesc = []byte{ 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x3b, 0x0a, 0x0c, 0x47, 0x65, - 0x74, 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x53, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x8f, 0x03, 0x0a, - 0x11, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x1a, 0xed, 0x01, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, - 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, - 0x2e, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, 0x64, - 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, - 0x12, 0x0a, 0x04, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6f, - 0x6e, 0x6c, 0x79, 0x1a, 0x5d, 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 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, 0x39, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x75, 0x6c, - 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x1a, 0x3a, 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x42, - 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x1a, 0x0a, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52, - 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x37, 0x0a, - 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x0a, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x36, 0x0a, 0x05, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x1a, 0x21, 0x0a, 0x07, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x1a, 0x0a, - 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x0a, 0x0d, 0x47, 0x65, - 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x1a, 0x09, 0x0a, 0x07, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x89, 0x03, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x2b, 0x0a, 0x04, 0x48, - 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x9f, 0x01, 0x0a, 0x06, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x74, - 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x74, 0x78, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, - 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x74, 0x78, 0x12, 0x30, 0x0a, 0x04, 0x68, 0x69, 0x6e, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, - 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, - 0x48, 0x69, 0x6e, 0x74, 0x52, 0x04, 0x68, 0x69, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, - 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, - 0x4e, 0x6f, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x1a, 0x6c, 0x0a, 0x07, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, - 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x12, 0x36, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, - 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x38, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, - 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x22, 0x48, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x1a, 0x1d, 0x0a, + 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x14, 0x47, 0x65, + 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, + 0x6e, 0x74, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x0a, + 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x22, 0x3b, 0x0a, 0x0c, 0x47, 0x65, 0x74, + 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x53, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x29, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x8f, 0x03, 0x0a, 0x11, + 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x1a, 0xed, 0x01, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x05, + 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x2e, + 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x79, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6f, 0x6e, + 0x6c, 0x79, 0x1a, 0x5d, 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 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, 0x39, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x75, 0x6c, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x1a, 0x3a, 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x42, 0x0a, + 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x1a, 0x0a, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52, 0x0a, + 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x37, 0x0a, 0x07, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x0a, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x36, 0x0a, 0x05, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x1a, 0x21, 0x0a, 0x07, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x1a, 0x0a, 0x0a, + 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x0a, 0x0d, 0x47, 0x65, 0x74, + 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x89, 0x03, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x2b, 0x0a, 0x04, 0x48, 0x69, + 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x9f, 0x01, 0x0a, 0x06, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x74, 0x78, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x74, 0x78, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, 0x6f, + 0x64, 0x75, 0x6c, 0x65, 0x43, 0x74, 0x78, 0x12, 0x30, 0x0a, 0x04, 0x68, 0x69, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, + 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x48, + 0x69, 0x6e, 0x74, 0x52, 0x04, 0x68, 0x69, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x4e, + 0x6f, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x1a, 0x6c, 0x0a, 0x07, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, + 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, + 0x36, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x38, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, + 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x48, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x1a, 0x1d, 0x0a, 0x07, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x1e, 0x0a, 0x08, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x96, 0x01, 0x0a, 0x08, + 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x7f, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x39, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x2e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x1a, 0x38, 0x0a, 0x0a, 0x46, 0x69, + 0x6c, 0x65, 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, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9a, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x48, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x1e, 0x0a, 0x08, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x96, 0x01, 0x0a, - 0x08, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x1a, 0x09, 0x0a, 0x07, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x7f, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x39, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, - 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x1a, 0x38, 0x0a, 0x0a, 0x46, - 0x69, 0x6c, 0x65, 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, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9a, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, - 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x48, - 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, - 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x38, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, - 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x22, 0x83, 0x02, 0x0a, 0x0c, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x45, - 0x78, 0x70, 0x72, 0x1a, 0x51, 0x0a, 0x06, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x74, 0x78, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, - 0x64, 0x75, 0x6c, 0x65, 0x43, 0x74, 0x78, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, 0x6f, 0x64, - 0x75, 0x6c, 0x65, 0x43, 0x74, 0x78, 0x1a, 0x7e, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2b, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x72, 0x5f, 0x72, 0x61, - 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x65, 0x78, 0x70, 0x72, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x12, 0x32, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, - 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x20, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xf1, 0x02, 0x0a, 0x09, 0x45, 0x6d, 0x69, - 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x1a, 0x7f, 0x0a, 0x04, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x08, - 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, - 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, - 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x1a, 0x72, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x29, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, - 0x75, 0x65, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, - 0x61, 0x6e, 0x67, 0x65, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x0a, 0x0a, 0x08, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x63, 0x0a, 0x08, 0x53, 0x65, 0x76, 0x65, 0x72, - 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, 0x54, 0x59, 0x5f, - 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, - 0x0e, 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, - 0x01, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x57, 0x41, - 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x56, 0x45, 0x52, - 0x49, 0x54, 0x59, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x43, 0x45, 0x10, 0x03, 0x22, 0xc3, 0x02, 0x0a, - 0x0a, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x3b, 0x0a, 0x0a, 0x61, - 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, - 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x06, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x25, 0x0a, 0x04, 0x4d, 0x6f, 0x64, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x4d, 0x6f, 0x64, 0x65, - 0x1a, 0x3b, 0x0a, 0x09, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x12, 0x0a, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x06, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, + 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x38, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, + 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x22, 0x83, 0x02, 0x0a, 0x0c, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x45, 0x78, + 0x70, 0x72, 0x1a, 0x51, 0x0a, 0x06, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x33, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x74, 0x78, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, + 0x75, 0x6c, 0x65, 0x43, 0x74, 0x78, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x43, 0x74, 0x78, 0x1a, 0x7e, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x12, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, + 0x65, 0x78, 0x70, 0x72, 0x12, 0x2b, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x72, 0x5f, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x65, 0x78, 0x70, 0x72, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x12, 0x32, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, + 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x20, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xf1, 0x02, 0x0a, 0x09, 0x45, 0x6d, 0x69, 0x74, + 0x49, 0x73, 0x73, 0x75, 0x65, 0x1a, 0x7f, 0x0a, 0x04, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x1a, 0x63, 0x0a, - 0x05, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0a, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x04, 0x62, - 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x04, 0x62, 0x6f, - 0x64, 0x79, 0x22, 0xfb, 0x04, 0x0a, 0x0b, 0x42, 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, - 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, - 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, - 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, - 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, - 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x1a, 0xb1, 0x01, 0x0a, 0x09, 0x41, 0x74, 0x74, - 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x78, - 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2b, - 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x72, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x08, 0x73, + 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x2e, + 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, + 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x1a, 0x72, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x29, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, 0x75, + 0x65, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, + 0x6e, 0x67, 0x65, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0x0a, 0x0a, 0x08, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x63, 0x0a, 0x08, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, + 0x74, 0x79, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, + 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x01, + 0x12, 0x14, 0x0a, 0x10, 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x57, 0x41, 0x52, + 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, + 0x54, 0x59, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x43, 0x45, 0x10, 0x03, 0x22, 0xc3, 0x02, 0x0a, 0x0a, + 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x3b, 0x0a, 0x0a, 0x61, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, + 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x52, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x25, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x1a, + 0x3b, 0x0a, 0x09, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x1a, 0x63, 0x0a, 0x05, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x04, 0x62, 0x6f, 0x64, + 0x79, 0x22, 0xfb, 0x04, 0x0a, 0x0b, 0x42, 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x12, 0x42, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, + 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, + 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, + 0x06, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x1a, 0xb1, 0x01, 0x0a, 0x09, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x78, 0x70, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x12, 0x2b, 0x0a, + 0x0a, 0x65, 0x78, 0x70, 0x72, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, + 0x09, 0x65, 0x78, 0x70, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x05, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2b, + 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, - 0x52, 0x09, 0x65, 0x78, 0x70, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x05, 0x72, - 0x61, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x12, - 0x2b, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, - 0x65, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0xe4, 0x01, 0x0a, - 0x05, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x29, 0x0a, 0x09, 0x64, 0x65, - 0x66, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x64, 0x65, 0x66, - 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x72, 0x61, - 0x6e, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x74, 0x79, 0x70, 0x65, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x12, 0x2f, 0x0a, 0x0c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x72, 0x61, 0x6e, 0x67, - 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x73, 0x1a, 0x5b, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 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, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x42, 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x72, - 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0xb6, 0x01, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, - 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, - 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x22, - 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x52, 0x03, 0x65, - 0x6e, 0x64, 0x1a, 0x45, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x63, - 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x79, 0x74, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x04, 0x62, 0x79, 0x74, 0x65, 0x22, 0x4d, 0x0a, 0x0b, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x24, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0x64, 0x0a, 0x0d, 0x4d, 0x6f, 0x64, 0x75, - 0x6c, 0x65, 0x43, 0x74, 0x78, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x4d, 0x4f, 0x44, - 0x55, 0x4c, 0x45, 0x5f, 0x43, 0x54, 0x58, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, - 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x4f, - 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x43, 0x54, 0x58, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x45, - 0x4c, 0x46, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x4f, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x43, - 0x54, 0x58, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x4f, 0x4f, 0x54, 0x10, 0x02, 0x2a, 0x63, - 0x0a, 0x0a, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x17, - 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, - 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x43, 0x48, - 0x45, 0x4d, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, - 0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x4d, 0x4f, 0x44, - 0x45, 0x5f, 0x4a, 0x55, 0x53, 0x54, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, - 0x53, 0x10, 0x02, 0x2a, 0x96, 0x01, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, - 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, - 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, - 0x18, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, - 0x4f, 0x57, 0x4e, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x5f, 0x56, - 0x41, 0x4c, 0x55, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x45, 0x56, 0x41, 0x4c, 0x55, 0x41, 0x42, 0x4c, 0x45, - 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, - 0x5f, 0x53, 0x45, 0x4e, 0x53, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, 0x32, 0x81, 0x04, 0x0a, - 0x07, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x12, 0x3a, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x47, 0x65, 0x74, - 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, - 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x11, 0x41, 0x70, 0x70, 0x6c, - 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x20, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, - 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x12, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x05, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x12, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x32, 0x98, 0x04, 0x0a, 0x06, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x4c, 0x0a, 0x0d, 0x47, - 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1c, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, - 0x74, 0x68, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, - 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x10, 0x47, 0x65, 0x74, - 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, + 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x1a, 0xe4, 0x01, 0x0a, 0x05, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x12, 0x26, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x29, 0x0a, 0x09, 0x64, 0x65, 0x66, + 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x64, 0x65, 0x66, 0x52, + 0x61, 0x6e, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x72, 0x61, 0x6e, + 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x74, 0x79, 0x70, 0x65, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x12, 0x2f, 0x0a, 0x0c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, + 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x73, 0x1a, 0x5b, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 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, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, + 0x6f, 0x64, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, + 0xb6, 0x01, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, + 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, + 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x22, 0x0a, + 0x03, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x52, 0x03, 0x65, 0x6e, + 0x64, 0x1a, 0x45, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x63, 0x6f, + 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x79, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x04, 0x62, 0x79, 0x74, 0x65, 0x22, 0x4d, 0x0a, 0x0b, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x24, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x72, + 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0x64, 0x0a, 0x0d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x43, 0x74, 0x78, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x4d, 0x4f, 0x44, 0x55, + 0x4c, 0x45, 0x5f, 0x43, 0x54, 0x58, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x4f, 0x44, + 0x55, 0x4c, 0x45, 0x5f, 0x43, 0x54, 0x58, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x45, 0x4c, + 0x46, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x4d, 0x4f, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x43, 0x54, + 0x58, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x4f, 0x4f, 0x54, 0x10, 0x02, 0x2a, 0x63, 0x0a, + 0x0a, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x53, + 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, + 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x43, 0x48, 0x45, + 0x4d, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, + 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x4d, 0x4f, 0x44, 0x45, + 0x5f, 0x4a, 0x55, 0x53, 0x54, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x53, + 0x10, 0x02, 0x2a, 0x96, 0x01, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, + 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x5f, 0x56, 0x41, + 0x4c, 0x55, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, + 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x45, 0x56, 0x41, 0x4c, 0x55, 0x41, 0x42, 0x4c, 0x45, 0x10, + 0x03, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, + 0x53, 0x45, 0x4e, 0x53, 0x49, 0x54, 0x49, 0x56, 0x45, 0x10, 0x04, 0x32, 0xe4, 0x04, 0x0a, 0x07, + 0x52, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x12, 0x3a, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, + 0x12, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x2e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, + 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, + 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x47, + 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2e, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x11, 0x41, 0x70, + 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, 0x6c, 0x6f, + 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x47, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, + 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x05, + 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x32, 0x98, 0x04, 0x0a, 0x06, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x4c, 0x0a, + 0x0d, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, + 0x50, 0x61, 0x74, 0x68, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x55, 0x0a, 0x10, 0x47, + 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, + 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, + 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, + 0x74, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, + 0x0a, 0x08, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x17, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, + 0x69, 0x6c, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, + 0x14, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, + 0x74, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x3a, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, - 0x69, 0x6c, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x08, - 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x69, 0x6c, - 0x65, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x61, 0x0a, 0x14, 0x47, - 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x12, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x52, - 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, - 0x0a, 0x0c, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, 0x12, 0x1b, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x45, - 0x78, 0x70, 0x72, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, - 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x45, 0x6d, 0x69, - 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x12, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, - 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, - 0x75, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x3d, 0x5a, 0x3b, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, 0x65, 0x72, 0x72, 0x61, 0x66, - 0x6f, 0x72, 0x6d, 0x2d, 0x6c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x2f, 0x74, 0x66, 0x6c, 0x69, - 0x6e, 0x74, 0x2d, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x70, 0x6c, - 0x75, 0x67, 0x69, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, + 0x12, 0x49, 0x0a, 0x0c, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x72, + 0x12, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, + 0x65, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x45, 0x78, + 0x70, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x45, + 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x12, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2e, 0x45, 0x6d, 0x69, 0x74, 0x49, 0x73, 0x73, 0x75, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x6d, 0x69, 0x74, 0x49, + 0x73, 0x73, 0x75, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x3d, 0x5a, + 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, 0x65, 0x72, 0x72, + 0x61, 0x66, 0x6f, 0x72, 0x6d, 0x2d, 0x6c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x2f, 0x74, 0x66, + 0x6c, 0x69, 0x6e, 0x74, 0x2d, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x2d, 0x73, 0x64, 0x6b, 0x2f, + 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -3300,7 +3434,7 @@ func file_tflint_proto_rawDescGZIP() []byte { } var file_tflint_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_tflint_proto_msgTypes = make([]protoimpl.MessageInfo, 60) +var file_tflint_proto_msgTypes = make([]protoimpl.MessageInfo, 63) var file_tflint_proto_goTypes = []interface{}{ (ModuleCtxType)(0), // 0: proto.ModuleCtxType (SchemaMode)(0), // 1: proto.SchemaMode @@ -3308,132 +3442,137 @@ var file_tflint_proto_goTypes = []interface{}{ (EmitIssue_Severity)(0), // 3: proto.EmitIssue.Severity (*GetName)(nil), // 4: proto.GetName (*GetVersion)(nil), // 5: proto.GetVersion - (*GetRuleNames)(nil), // 6: proto.GetRuleNames - (*GetConfigSchema)(nil), // 7: proto.GetConfigSchema - (*ApplyGlobalConfig)(nil), // 8: proto.ApplyGlobalConfig - (*ApplyConfig)(nil), // 9: proto.ApplyConfig - (*Check)(nil), // 10: proto.Check - (*GetModulePath)(nil), // 11: proto.GetModulePath - (*GetModuleContent)(nil), // 12: proto.GetModuleContent - (*GetFile)(nil), // 13: proto.GetFile - (*GetFiles)(nil), // 14: proto.GetFiles - (*GetRuleConfigContent)(nil), // 15: proto.GetRuleConfigContent - (*EvaluateExpr)(nil), // 16: proto.EvaluateExpr - (*EmitIssue)(nil), // 17: proto.EmitIssue - (*BodySchema)(nil), // 18: proto.BodySchema - (*BodyContent)(nil), // 19: proto.BodyContent - (*Range)(nil), // 20: proto.Range - (*ErrorDetail)(nil), // 21: proto.ErrorDetail - (*GetName_Request)(nil), // 22: proto.GetName.Request - (*GetName_Response)(nil), // 23: proto.GetName.Response - (*GetVersion_Request)(nil), // 24: proto.GetVersion.Request - (*GetVersion_Response)(nil), // 25: proto.GetVersion.Response - (*GetRuleNames_Request)(nil), // 26: proto.GetRuleNames.Request - (*GetRuleNames_Response)(nil), // 27: proto.GetRuleNames.Response - (*GetConfigSchema_Request)(nil), // 28: proto.GetConfigSchema.Request - (*GetConfigSchema_Response)(nil), // 29: proto.GetConfigSchema.Response - (*ApplyGlobalConfig_Config)(nil), // 30: proto.ApplyGlobalConfig.Config - (*ApplyGlobalConfig_RuleConfig)(nil), // 31: proto.ApplyGlobalConfig.RuleConfig - (*ApplyGlobalConfig_Request)(nil), // 32: proto.ApplyGlobalConfig.Request - (*ApplyGlobalConfig_Response)(nil), // 33: proto.ApplyGlobalConfig.Response - nil, // 34: proto.ApplyGlobalConfig.Config.RulesEntry - (*ApplyConfig_Request)(nil), // 35: proto.ApplyConfig.Request - (*ApplyConfig_Response)(nil), // 36: proto.ApplyConfig.Response - (*Check_Request)(nil), // 37: proto.Check.Request - (*Check_Response)(nil), // 38: proto.Check.Response - (*GetModulePath_Request)(nil), // 39: proto.GetModulePath.Request - (*GetModulePath_Response)(nil), // 40: proto.GetModulePath.Response - (*GetModuleContent_Hint)(nil), // 41: proto.GetModuleContent.Hint - (*GetModuleContent_Option)(nil), // 42: proto.GetModuleContent.Option - (*GetModuleContent_Request)(nil), // 43: proto.GetModuleContent.Request - (*GetModuleContent_Response)(nil), // 44: proto.GetModuleContent.Response - (*GetFile_Request)(nil), // 45: proto.GetFile.Request - (*GetFile_Response)(nil), // 46: proto.GetFile.Response - (*GetFiles_Request)(nil), // 47: proto.GetFiles.Request - (*GetFiles_Response)(nil), // 48: proto.GetFiles.Response - nil, // 49: proto.GetFiles.Response.FilesEntry - (*GetRuleConfigContent_Request)(nil), // 50: proto.GetRuleConfigContent.Request - (*GetRuleConfigContent_Response)(nil), // 51: proto.GetRuleConfigContent.Response - (*EvaluateExpr_Option)(nil), // 52: proto.EvaluateExpr.Option - (*EvaluateExpr_Request)(nil), // 53: proto.EvaluateExpr.Request - (*EvaluateExpr_Response)(nil), // 54: proto.EvaluateExpr.Response - (*EmitIssue_Rule)(nil), // 55: proto.EmitIssue.Rule - (*EmitIssue_Request)(nil), // 56: proto.EmitIssue.Request - (*EmitIssue_Response)(nil), // 57: proto.EmitIssue.Response - (*BodySchema_Attribute)(nil), // 58: proto.BodySchema.Attribute - (*BodySchema_Block)(nil), // 59: proto.BodySchema.Block - (*BodyContent_Attribute)(nil), // 60: proto.BodyContent.Attribute - (*BodyContent_Block)(nil), // 61: proto.BodyContent.Block - nil, // 62: proto.BodyContent.AttributesEntry - (*Range_Pos)(nil), // 63: proto.Range.Pos + (*GetVersionConstraint)(nil), // 6: proto.GetVersionConstraint + (*GetRuleNames)(nil), // 7: proto.GetRuleNames + (*GetConfigSchema)(nil), // 8: proto.GetConfigSchema + (*ApplyGlobalConfig)(nil), // 9: proto.ApplyGlobalConfig + (*ApplyConfig)(nil), // 10: proto.ApplyConfig + (*Check)(nil), // 11: proto.Check + (*GetModulePath)(nil), // 12: proto.GetModulePath + (*GetModuleContent)(nil), // 13: proto.GetModuleContent + (*GetFile)(nil), // 14: proto.GetFile + (*GetFiles)(nil), // 15: proto.GetFiles + (*GetRuleConfigContent)(nil), // 16: proto.GetRuleConfigContent + (*EvaluateExpr)(nil), // 17: proto.EvaluateExpr + (*EmitIssue)(nil), // 18: proto.EmitIssue + (*BodySchema)(nil), // 19: proto.BodySchema + (*BodyContent)(nil), // 20: proto.BodyContent + (*Range)(nil), // 21: proto.Range + (*ErrorDetail)(nil), // 22: proto.ErrorDetail + (*GetName_Request)(nil), // 23: proto.GetName.Request + (*GetName_Response)(nil), // 24: proto.GetName.Response + (*GetVersion_Request)(nil), // 25: proto.GetVersion.Request + (*GetVersion_Response)(nil), // 26: proto.GetVersion.Response + (*GetVersionConstraint_Request)(nil), // 27: proto.GetVersionConstraint.Request + (*GetVersionConstraint_Response)(nil), // 28: proto.GetVersionConstraint.Response + (*GetRuleNames_Request)(nil), // 29: proto.GetRuleNames.Request + (*GetRuleNames_Response)(nil), // 30: proto.GetRuleNames.Response + (*GetConfigSchema_Request)(nil), // 31: proto.GetConfigSchema.Request + (*GetConfigSchema_Response)(nil), // 32: proto.GetConfigSchema.Response + (*ApplyGlobalConfig_Config)(nil), // 33: proto.ApplyGlobalConfig.Config + (*ApplyGlobalConfig_RuleConfig)(nil), // 34: proto.ApplyGlobalConfig.RuleConfig + (*ApplyGlobalConfig_Request)(nil), // 35: proto.ApplyGlobalConfig.Request + (*ApplyGlobalConfig_Response)(nil), // 36: proto.ApplyGlobalConfig.Response + nil, // 37: proto.ApplyGlobalConfig.Config.RulesEntry + (*ApplyConfig_Request)(nil), // 38: proto.ApplyConfig.Request + (*ApplyConfig_Response)(nil), // 39: proto.ApplyConfig.Response + (*Check_Request)(nil), // 40: proto.Check.Request + (*Check_Response)(nil), // 41: proto.Check.Response + (*GetModulePath_Request)(nil), // 42: proto.GetModulePath.Request + (*GetModulePath_Response)(nil), // 43: proto.GetModulePath.Response + (*GetModuleContent_Hint)(nil), // 44: proto.GetModuleContent.Hint + (*GetModuleContent_Option)(nil), // 45: proto.GetModuleContent.Option + (*GetModuleContent_Request)(nil), // 46: proto.GetModuleContent.Request + (*GetModuleContent_Response)(nil), // 47: proto.GetModuleContent.Response + (*GetFile_Request)(nil), // 48: proto.GetFile.Request + (*GetFile_Response)(nil), // 49: proto.GetFile.Response + (*GetFiles_Request)(nil), // 50: proto.GetFiles.Request + (*GetFiles_Response)(nil), // 51: proto.GetFiles.Response + nil, // 52: proto.GetFiles.Response.FilesEntry + (*GetRuleConfigContent_Request)(nil), // 53: proto.GetRuleConfigContent.Request + (*GetRuleConfigContent_Response)(nil), // 54: proto.GetRuleConfigContent.Response + (*EvaluateExpr_Option)(nil), // 55: proto.EvaluateExpr.Option + (*EvaluateExpr_Request)(nil), // 56: proto.EvaluateExpr.Request + (*EvaluateExpr_Response)(nil), // 57: proto.EvaluateExpr.Response + (*EmitIssue_Rule)(nil), // 58: proto.EmitIssue.Rule + (*EmitIssue_Request)(nil), // 59: proto.EmitIssue.Request + (*EmitIssue_Response)(nil), // 60: proto.EmitIssue.Response + (*BodySchema_Attribute)(nil), // 61: proto.BodySchema.Attribute + (*BodySchema_Block)(nil), // 62: proto.BodySchema.Block + (*BodyContent_Attribute)(nil), // 63: proto.BodyContent.Attribute + (*BodyContent_Block)(nil), // 64: proto.BodyContent.Block + nil, // 65: proto.BodyContent.AttributesEntry + (*Range_Pos)(nil), // 66: proto.Range.Pos } var file_tflint_proto_depIdxs = []int32{ - 58, // 0: proto.BodySchema.attributes:type_name -> proto.BodySchema.Attribute - 59, // 1: proto.BodySchema.blocks:type_name -> proto.BodySchema.Block + 61, // 0: proto.BodySchema.attributes:type_name -> proto.BodySchema.Attribute + 62, // 1: proto.BodySchema.blocks:type_name -> proto.BodySchema.Block 1, // 2: proto.BodySchema.Mode:type_name -> proto.SchemaMode - 62, // 3: proto.BodyContent.attributes:type_name -> proto.BodyContent.AttributesEntry - 61, // 4: proto.BodyContent.blocks:type_name -> proto.BodyContent.Block - 63, // 5: proto.Range.start:type_name -> proto.Range.Pos - 63, // 6: proto.Range.end:type_name -> proto.Range.Pos + 65, // 3: proto.BodyContent.attributes:type_name -> proto.BodyContent.AttributesEntry + 64, // 4: proto.BodyContent.blocks:type_name -> proto.BodyContent.Block + 66, // 5: proto.Range.start:type_name -> proto.Range.Pos + 66, // 6: proto.Range.end:type_name -> proto.Range.Pos 2, // 7: proto.ErrorDetail.code:type_name -> proto.ErrorCode - 18, // 8: proto.GetConfigSchema.Response.schema:type_name -> proto.BodySchema - 34, // 9: proto.ApplyGlobalConfig.Config.rules:type_name -> proto.ApplyGlobalConfig.Config.RulesEntry - 30, // 10: proto.ApplyGlobalConfig.Request.config:type_name -> proto.ApplyGlobalConfig.Config - 31, // 11: proto.ApplyGlobalConfig.Config.RulesEntry.value:type_name -> proto.ApplyGlobalConfig.RuleConfig - 19, // 12: proto.ApplyConfig.Request.content:type_name -> proto.BodyContent + 19, // 8: proto.GetConfigSchema.Response.schema:type_name -> proto.BodySchema + 37, // 9: proto.ApplyGlobalConfig.Config.rules:type_name -> proto.ApplyGlobalConfig.Config.RulesEntry + 33, // 10: proto.ApplyGlobalConfig.Request.config:type_name -> proto.ApplyGlobalConfig.Config + 34, // 11: proto.ApplyGlobalConfig.Config.RulesEntry.value:type_name -> proto.ApplyGlobalConfig.RuleConfig + 20, // 12: proto.ApplyConfig.Request.content:type_name -> proto.BodyContent 0, // 13: proto.GetModuleContent.Option.module_ctx:type_name -> proto.ModuleCtxType - 41, // 14: proto.GetModuleContent.Option.hint:type_name -> proto.GetModuleContent.Hint - 18, // 15: proto.GetModuleContent.Request.schema:type_name -> proto.BodySchema - 42, // 16: proto.GetModuleContent.Request.option:type_name -> proto.GetModuleContent.Option - 19, // 17: proto.GetModuleContent.Response.content:type_name -> proto.BodyContent - 49, // 18: proto.GetFiles.Response.files:type_name -> proto.GetFiles.Response.FilesEntry - 18, // 19: proto.GetRuleConfigContent.Request.schema:type_name -> proto.BodySchema - 19, // 20: proto.GetRuleConfigContent.Response.content:type_name -> proto.BodyContent + 44, // 14: proto.GetModuleContent.Option.hint:type_name -> proto.GetModuleContent.Hint + 19, // 15: proto.GetModuleContent.Request.schema:type_name -> proto.BodySchema + 45, // 16: proto.GetModuleContent.Request.option:type_name -> proto.GetModuleContent.Option + 20, // 17: proto.GetModuleContent.Response.content:type_name -> proto.BodyContent + 52, // 18: proto.GetFiles.Response.files:type_name -> proto.GetFiles.Response.FilesEntry + 19, // 19: proto.GetRuleConfigContent.Request.schema:type_name -> proto.BodySchema + 20, // 20: proto.GetRuleConfigContent.Response.content:type_name -> proto.BodyContent 0, // 21: proto.EvaluateExpr.Option.module_ctx:type_name -> proto.ModuleCtxType - 20, // 22: proto.EvaluateExpr.Request.expr_range:type_name -> proto.Range - 52, // 23: proto.EvaluateExpr.Request.option:type_name -> proto.EvaluateExpr.Option + 21, // 22: proto.EvaluateExpr.Request.expr_range:type_name -> proto.Range + 55, // 23: proto.EvaluateExpr.Request.option:type_name -> proto.EvaluateExpr.Option 3, // 24: proto.EmitIssue.Rule.severity:type_name -> proto.EmitIssue.Severity - 55, // 25: proto.EmitIssue.Request.rule:type_name -> proto.EmitIssue.Rule - 20, // 26: proto.EmitIssue.Request.range:type_name -> proto.Range - 18, // 27: proto.BodySchema.Block.body:type_name -> proto.BodySchema - 20, // 28: proto.BodyContent.Attribute.expr_range:type_name -> proto.Range - 20, // 29: proto.BodyContent.Attribute.range:type_name -> proto.Range - 20, // 30: proto.BodyContent.Attribute.name_range:type_name -> proto.Range - 19, // 31: proto.BodyContent.Block.body:type_name -> proto.BodyContent - 20, // 32: proto.BodyContent.Block.def_range:type_name -> proto.Range - 20, // 33: proto.BodyContent.Block.type_range:type_name -> proto.Range - 20, // 34: proto.BodyContent.Block.label_ranges:type_name -> proto.Range - 60, // 35: proto.BodyContent.AttributesEntry.value:type_name -> proto.BodyContent.Attribute - 22, // 36: proto.RuleSet.GetName:input_type -> proto.GetName.Request - 24, // 37: proto.RuleSet.GetVersion:input_type -> proto.GetVersion.Request - 26, // 38: proto.RuleSet.GetRuleNames:input_type -> proto.GetRuleNames.Request - 28, // 39: proto.RuleSet.GetConfigSchema:input_type -> proto.GetConfigSchema.Request - 32, // 40: proto.RuleSet.ApplyGlobalConfig:input_type -> proto.ApplyGlobalConfig.Request - 35, // 41: proto.RuleSet.ApplyConfig:input_type -> proto.ApplyConfig.Request - 37, // 42: proto.RuleSet.Check:input_type -> proto.Check.Request - 39, // 43: proto.Runner.GetModulePath:input_type -> proto.GetModulePath.Request - 43, // 44: proto.Runner.GetModuleContent:input_type -> proto.GetModuleContent.Request - 45, // 45: proto.Runner.GetFile:input_type -> proto.GetFile.Request - 47, // 46: proto.Runner.GetFiles:input_type -> proto.GetFiles.Request - 50, // 47: proto.Runner.GetRuleConfigContent:input_type -> proto.GetRuleConfigContent.Request - 53, // 48: proto.Runner.EvaluateExpr:input_type -> proto.EvaluateExpr.Request - 56, // 49: proto.Runner.EmitIssue:input_type -> proto.EmitIssue.Request - 23, // 50: proto.RuleSet.GetName:output_type -> proto.GetName.Response - 25, // 51: proto.RuleSet.GetVersion:output_type -> proto.GetVersion.Response - 27, // 52: proto.RuleSet.GetRuleNames:output_type -> proto.GetRuleNames.Response - 29, // 53: proto.RuleSet.GetConfigSchema:output_type -> proto.GetConfigSchema.Response - 33, // 54: proto.RuleSet.ApplyGlobalConfig:output_type -> proto.ApplyGlobalConfig.Response - 36, // 55: proto.RuleSet.ApplyConfig:output_type -> proto.ApplyConfig.Response - 38, // 56: proto.RuleSet.Check:output_type -> proto.Check.Response - 40, // 57: proto.Runner.GetModulePath:output_type -> proto.GetModulePath.Response - 44, // 58: proto.Runner.GetModuleContent:output_type -> proto.GetModuleContent.Response - 46, // 59: proto.Runner.GetFile:output_type -> proto.GetFile.Response - 48, // 60: proto.Runner.GetFiles:output_type -> proto.GetFiles.Response - 51, // 61: proto.Runner.GetRuleConfigContent:output_type -> proto.GetRuleConfigContent.Response - 54, // 62: proto.Runner.EvaluateExpr:output_type -> proto.EvaluateExpr.Response - 57, // 63: proto.Runner.EmitIssue:output_type -> proto.EmitIssue.Response - 50, // [50:64] is the sub-list for method output_type - 36, // [36:50] is the sub-list for method input_type + 58, // 25: proto.EmitIssue.Request.rule:type_name -> proto.EmitIssue.Rule + 21, // 26: proto.EmitIssue.Request.range:type_name -> proto.Range + 19, // 27: proto.BodySchema.Block.body:type_name -> proto.BodySchema + 21, // 28: proto.BodyContent.Attribute.expr_range:type_name -> proto.Range + 21, // 29: proto.BodyContent.Attribute.range:type_name -> proto.Range + 21, // 30: proto.BodyContent.Attribute.name_range:type_name -> proto.Range + 20, // 31: proto.BodyContent.Block.body:type_name -> proto.BodyContent + 21, // 32: proto.BodyContent.Block.def_range:type_name -> proto.Range + 21, // 33: proto.BodyContent.Block.type_range:type_name -> proto.Range + 21, // 34: proto.BodyContent.Block.label_ranges:type_name -> proto.Range + 63, // 35: proto.BodyContent.AttributesEntry.value:type_name -> proto.BodyContent.Attribute + 23, // 36: proto.RuleSet.GetName:input_type -> proto.GetName.Request + 25, // 37: proto.RuleSet.GetVersion:input_type -> proto.GetVersion.Request + 27, // 38: proto.RuleSet.GetVersionConstraint:input_type -> proto.GetVersionConstraint.Request + 29, // 39: proto.RuleSet.GetRuleNames:input_type -> proto.GetRuleNames.Request + 31, // 40: proto.RuleSet.GetConfigSchema:input_type -> proto.GetConfigSchema.Request + 35, // 41: proto.RuleSet.ApplyGlobalConfig:input_type -> proto.ApplyGlobalConfig.Request + 38, // 42: proto.RuleSet.ApplyConfig:input_type -> proto.ApplyConfig.Request + 40, // 43: proto.RuleSet.Check:input_type -> proto.Check.Request + 42, // 44: proto.Runner.GetModulePath:input_type -> proto.GetModulePath.Request + 46, // 45: proto.Runner.GetModuleContent:input_type -> proto.GetModuleContent.Request + 48, // 46: proto.Runner.GetFile:input_type -> proto.GetFile.Request + 50, // 47: proto.Runner.GetFiles:input_type -> proto.GetFiles.Request + 53, // 48: proto.Runner.GetRuleConfigContent:input_type -> proto.GetRuleConfigContent.Request + 56, // 49: proto.Runner.EvaluateExpr:input_type -> proto.EvaluateExpr.Request + 59, // 50: proto.Runner.EmitIssue:input_type -> proto.EmitIssue.Request + 24, // 51: proto.RuleSet.GetName:output_type -> proto.GetName.Response + 26, // 52: proto.RuleSet.GetVersion:output_type -> proto.GetVersion.Response + 28, // 53: proto.RuleSet.GetVersionConstraint:output_type -> proto.GetVersionConstraint.Response + 30, // 54: proto.RuleSet.GetRuleNames:output_type -> proto.GetRuleNames.Response + 32, // 55: proto.RuleSet.GetConfigSchema:output_type -> proto.GetConfigSchema.Response + 36, // 56: proto.RuleSet.ApplyGlobalConfig:output_type -> proto.ApplyGlobalConfig.Response + 39, // 57: proto.RuleSet.ApplyConfig:output_type -> proto.ApplyConfig.Response + 41, // 58: proto.RuleSet.Check:output_type -> proto.Check.Response + 43, // 59: proto.Runner.GetModulePath:output_type -> proto.GetModulePath.Response + 47, // 60: proto.Runner.GetModuleContent:output_type -> proto.GetModuleContent.Response + 49, // 61: proto.Runner.GetFile:output_type -> proto.GetFile.Response + 51, // 62: proto.Runner.GetFiles:output_type -> proto.GetFiles.Response + 54, // 63: proto.Runner.GetRuleConfigContent:output_type -> proto.GetRuleConfigContent.Response + 57, // 64: proto.Runner.EvaluateExpr:output_type -> proto.EvaluateExpr.Response + 60, // 65: proto.Runner.EmitIssue:output_type -> proto.EmitIssue.Response + 51, // [51:66] is the sub-list for method output_type + 36, // [36:51] is the sub-list for method input_type 36, // [36:36] is the sub-list for extension type_name 36, // [36:36] is the sub-list for extension extendee 0, // [0:36] is the sub-list for field type_name @@ -3470,7 +3609,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRuleNames); i { + switch v := v.(*GetVersionConstraint); i { case 0: return &v.state case 1: @@ -3482,7 +3621,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConfigSchema); i { + switch v := v.(*GetRuleNames); i { case 0: return &v.state case 1: @@ -3494,7 +3633,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyGlobalConfig); i { + switch v := v.(*GetConfigSchema); i { case 0: return &v.state case 1: @@ -3506,7 +3645,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyConfig); i { + switch v := v.(*ApplyGlobalConfig); i { case 0: return &v.state case 1: @@ -3518,7 +3657,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Check); i { + switch v := v.(*ApplyConfig); i { case 0: return &v.state case 1: @@ -3530,7 +3669,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetModulePath); i { + switch v := v.(*Check); i { case 0: return &v.state case 1: @@ -3542,7 +3681,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetModuleContent); i { + switch v := v.(*GetModulePath); i { case 0: return &v.state case 1: @@ -3554,7 +3693,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetFile); i { + switch v := v.(*GetModuleContent); i { case 0: return &v.state case 1: @@ -3566,7 +3705,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetFiles); i { + switch v := v.(*GetFile); i { case 0: return &v.state case 1: @@ -3578,7 +3717,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRuleConfigContent); i { + switch v := v.(*GetFiles); i { case 0: return &v.state case 1: @@ -3590,7 +3729,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EvaluateExpr); i { + switch v := v.(*GetRuleConfigContent); i { case 0: return &v.state case 1: @@ -3602,7 +3741,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EmitIssue); i { + switch v := v.(*EvaluateExpr); i { case 0: return &v.state case 1: @@ -3614,7 +3753,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BodySchema); i { + switch v := v.(*EmitIssue); i { case 0: return &v.state case 1: @@ -3626,7 +3765,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BodyContent); i { + switch v := v.(*BodySchema); i { case 0: return &v.state case 1: @@ -3638,7 +3777,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Range); i { + switch v := v.(*BodyContent); i { case 0: return &v.state case 1: @@ -3650,7 +3789,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ErrorDetail); i { + switch v := v.(*Range); i { case 0: return &v.state case 1: @@ -3662,7 +3801,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetName_Request); i { + switch v := v.(*ErrorDetail); i { case 0: return &v.state case 1: @@ -3674,7 +3813,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetName_Response); i { + switch v := v.(*GetName_Request); i { case 0: return &v.state case 1: @@ -3686,7 +3825,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetVersion_Request); i { + switch v := v.(*GetName_Response); i { case 0: return &v.state case 1: @@ -3698,7 +3837,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetVersion_Response); i { + switch v := v.(*GetVersion_Request); i { case 0: return &v.state case 1: @@ -3710,7 +3849,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRuleNames_Request); i { + switch v := v.(*GetVersion_Response); i { case 0: return &v.state case 1: @@ -3722,7 +3861,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRuleNames_Response); i { + switch v := v.(*GetVersionConstraint_Request); i { case 0: return &v.state case 1: @@ -3734,7 +3873,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConfigSchema_Request); i { + switch v := v.(*GetVersionConstraint_Response); i { case 0: return &v.state case 1: @@ -3746,7 +3885,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConfigSchema_Response); i { + switch v := v.(*GetRuleNames_Request); i { case 0: return &v.state case 1: @@ -3758,7 +3897,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyGlobalConfig_Config); i { + switch v := v.(*GetRuleNames_Response); i { case 0: return &v.state case 1: @@ -3770,7 +3909,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyGlobalConfig_RuleConfig); i { + switch v := v.(*GetConfigSchema_Request); i { case 0: return &v.state case 1: @@ -3782,7 +3921,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyGlobalConfig_Request); i { + switch v := v.(*GetConfigSchema_Response); i { case 0: return &v.state case 1: @@ -3794,7 +3933,19 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyGlobalConfig_Response); i { + switch v := v.(*ApplyGlobalConfig_Config); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_tflint_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ApplyGlobalConfig_RuleConfig); i { case 0: return &v.state case 1: @@ -3806,7 +3957,7 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyConfig_Request); i { + switch v := v.(*ApplyGlobalConfig_Request); i { case 0: return &v.state case 1: @@ -3818,6 +3969,30 @@ func file_tflint_proto_init() { } } file_tflint_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ApplyGlobalConfig_Response); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_tflint_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ApplyConfig_Request); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_tflint_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ApplyConfig_Response); i { case 0: return &v.state @@ -3829,7 +4004,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Check_Request); i { case 0: return &v.state @@ -3841,7 +4016,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Check_Response); i { case 0: return &v.state @@ -3853,7 +4028,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetModulePath_Request); i { case 0: return &v.state @@ -3865,7 +4040,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetModulePath_Response); i { case 0: return &v.state @@ -3877,7 +4052,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetModuleContent_Hint); i { case 0: return &v.state @@ -3889,7 +4064,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetModuleContent_Option); i { case 0: return &v.state @@ -3901,7 +4076,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetModuleContent_Request); i { case 0: return &v.state @@ -3913,7 +4088,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetModuleContent_Response); i { case 0: return &v.state @@ -3925,7 +4100,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFile_Request); i { case 0: return &v.state @@ -3937,7 +4112,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFile_Response); i { case 0: return &v.state @@ -3949,7 +4124,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFiles_Request); i { case 0: return &v.state @@ -3961,7 +4136,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFiles_Response); i { case 0: return &v.state @@ -3973,7 +4148,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRuleConfigContent_Request); i { case 0: return &v.state @@ -3985,7 +4160,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetRuleConfigContent_Response); i { case 0: return &v.state @@ -3997,7 +4172,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EvaluateExpr_Option); i { case 0: return &v.state @@ -4009,7 +4184,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EvaluateExpr_Request); i { case 0: return &v.state @@ -4021,7 +4196,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EvaluateExpr_Response); i { case 0: return &v.state @@ -4033,7 +4208,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmitIssue_Rule); i { case 0: return &v.state @@ -4045,7 +4220,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmitIssue_Request); i { case 0: return &v.state @@ -4057,7 +4232,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmitIssue_Response); i { case 0: return &v.state @@ -4069,7 +4244,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BodySchema_Attribute); i { case 0: return &v.state @@ -4081,7 +4256,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BodySchema_Block); i { case 0: return &v.state @@ -4093,7 +4268,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BodyContent_Attribute); i { case 0: return &v.state @@ -4105,7 +4280,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BodyContent_Block); i { case 0: return &v.state @@ -4117,7 +4292,7 @@ func file_tflint_proto_init() { return nil } } - file_tflint_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + file_tflint_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Range_Pos); i { case 0: return &v.state @@ -4136,7 +4311,7 @@ func file_tflint_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_tflint_proto_rawDesc, NumEnums: 4, - NumMessages: 60, + NumMessages: 63, NumExtensions: 0, NumServices: 2, }, diff --git a/plugin/proto/tflint.proto b/plugin/proto/tflint.proto index 7196148..9f69dec 100644 --- a/plugin/proto/tflint.proto +++ b/plugin/proto/tflint.proto @@ -6,6 +6,7 @@ package proto; service RuleSet { rpc GetName(GetName.Request) returns (GetName.Response); rpc GetVersion(GetVersion.Request) returns (GetVersion.Response); + rpc GetVersionConstraint(GetVersionConstraint.Request) returns (GetVersionConstraint.Response); rpc GetRuleNames(GetRuleNames.Request) returns (GetRuleNames.Response); rpc GetConfigSchema(GetConfigSchema.Request) returns (GetConfigSchema.Response); rpc ApplyGlobalConfig(ApplyGlobalConfig.Request) returns (ApplyGlobalConfig.Response); @@ -27,6 +28,13 @@ message GetVersion { } } +message GetVersionConstraint { + message Request {} + message Response { + string constraint = 1; + } +} + message GetRuleNames { message Request {} message Response { diff --git a/plugin/proto/tflint_grpc.pb.go b/plugin/proto/tflint_grpc.pb.go index 8fdf086..1c19064 100644 --- a/plugin/proto/tflint_grpc.pb.go +++ b/plugin/proto/tflint_grpc.pb.go @@ -24,6 +24,7 @@ const _ = grpc.SupportPackageIsVersion7 type RuleSetClient interface { GetName(ctx context.Context, in *GetName_Request, opts ...grpc.CallOption) (*GetName_Response, error) GetVersion(ctx context.Context, in *GetVersion_Request, opts ...grpc.CallOption) (*GetVersion_Response, error) + GetVersionConstraint(ctx context.Context, in *GetVersionConstraint_Request, opts ...grpc.CallOption) (*GetVersionConstraint_Response, error) GetRuleNames(ctx context.Context, in *GetRuleNames_Request, opts ...grpc.CallOption) (*GetRuleNames_Response, error) GetConfigSchema(ctx context.Context, in *GetConfigSchema_Request, opts ...grpc.CallOption) (*GetConfigSchema_Response, error) ApplyGlobalConfig(ctx context.Context, in *ApplyGlobalConfig_Request, opts ...grpc.CallOption) (*ApplyGlobalConfig_Response, error) @@ -57,6 +58,15 @@ func (c *ruleSetClient) GetVersion(ctx context.Context, in *GetVersion_Request, return out, nil } +func (c *ruleSetClient) GetVersionConstraint(ctx context.Context, in *GetVersionConstraint_Request, opts ...grpc.CallOption) (*GetVersionConstraint_Response, error) { + out := new(GetVersionConstraint_Response) + err := c.cc.Invoke(ctx, "/proto.RuleSet/GetVersionConstraint", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *ruleSetClient) GetRuleNames(ctx context.Context, in *GetRuleNames_Request, opts ...grpc.CallOption) (*GetRuleNames_Response, error) { out := new(GetRuleNames_Response) err := c.cc.Invoke(ctx, "/proto.RuleSet/GetRuleNames", in, out, opts...) @@ -108,6 +118,7 @@ func (c *ruleSetClient) Check(ctx context.Context, in *Check_Request, opts ...gr type RuleSetServer interface { GetName(context.Context, *GetName_Request) (*GetName_Response, error) GetVersion(context.Context, *GetVersion_Request) (*GetVersion_Response, error) + GetVersionConstraint(context.Context, *GetVersionConstraint_Request) (*GetVersionConstraint_Response, error) GetRuleNames(context.Context, *GetRuleNames_Request) (*GetRuleNames_Response, error) GetConfigSchema(context.Context, *GetConfigSchema_Request) (*GetConfigSchema_Response, error) ApplyGlobalConfig(context.Context, *ApplyGlobalConfig_Request) (*ApplyGlobalConfig_Response, error) @@ -126,6 +137,9 @@ func (UnimplementedRuleSetServer) GetName(context.Context, *GetName_Request) (*G func (UnimplementedRuleSetServer) GetVersion(context.Context, *GetVersion_Request) (*GetVersion_Response, error) { return nil, status.Errorf(codes.Unimplemented, "method GetVersion not implemented") } +func (UnimplementedRuleSetServer) GetVersionConstraint(context.Context, *GetVersionConstraint_Request) (*GetVersionConstraint_Response, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetVersionConstraint not implemented") +} func (UnimplementedRuleSetServer) GetRuleNames(context.Context, *GetRuleNames_Request) (*GetRuleNames_Response, error) { return nil, status.Errorf(codes.Unimplemented, "method GetRuleNames not implemented") } @@ -190,6 +204,24 @@ func _RuleSet_GetVersion_Handler(srv interface{}, ctx context.Context, dec func( return interceptor(ctx, in, info, handler) } +func _RuleSet_GetVersionConstraint_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetVersionConstraint_Request) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(RuleSetServer).GetVersionConstraint(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/proto.RuleSet/GetVersionConstraint", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(RuleSetServer).GetVersionConstraint(ctx, req.(*GetVersionConstraint_Request)) + } + return interceptor(ctx, in, info, handler) +} + func _RuleSet_GetRuleNames_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetRuleNames_Request) if err := dec(in); err != nil { @@ -295,6 +327,10 @@ var RuleSet_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetVersion", Handler: _RuleSet_GetVersion_Handler, }, + { + MethodName: "GetVersionConstraint", + Handler: _RuleSet_GetVersionConstraint_Handler, + }, { MethodName: "GetRuleNames", Handler: _RuleSet_GetRuleNames_Handler, diff --git a/tflint/interface.go b/tflint/interface.go index 6532c9d..366cdcc 100644 --- a/tflint/interface.go +++ b/tflint/interface.go @@ -20,6 +20,9 @@ type RuleSet interface { // RuleNames is a list of rule names provided by the plugin. This method is not expected to be overridden. RuleNames() []string + // VersionConstraint declares the version of TFLint the plugin will work with. Default is no constraint. + VersionConstraint() string + // ConfigSchema returns the ruleset plugin config schema. // If you return a schema, TFLint will extract the config from .tflint.hcl based on that schema // and pass it to ApplyConfig. This schema should be a schema inside of "plugin" block. diff --git a/tflint/ruleset.go b/tflint/ruleset.go index 2e5f666..ac721ab 100644 --- a/tflint/ruleset.go +++ b/tflint/ruleset.go @@ -12,9 +12,10 @@ var _ RuleSet = &BuiltinRuleSet{} // BuiltinRuleSet is the basis of the ruleset. Plugins can serve this ruleset directly. // You can serve a custom ruleset by embedding this ruleset if you need special extensions. type BuiltinRuleSet struct { - Name string - Version string - Rules []Rule + Name string + Version string + Constraint string + Rules []Rule EnabledRules []Rule } @@ -39,6 +40,12 @@ func (r *BuiltinRuleSet) RuleNames() []string { return names } +// VersionConstraint declares the version of TFLint the plugin will work with. +// Default is no constraint. +func (r *BuiltinRuleSet) VersionConstraint() string { + return r.Constraint +} + // ApplyGlobalConfig applies the common config to the ruleset. // This is not supposed to be overridden from custom rulesets. // Override the ApplyConfig if you want to apply the plugin's own configuration.