// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.1 // protoc v3.17.3 // source: internal.proto package internal import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type Source struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID int64 `protobuf:"varint,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID of the source Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the user-defined name for the source Type string `protobuf:"bytes,3,opt,name=Type,proto3" json:"Type,omitempty"` // Type specifies which kinds of source (enterprise vs oss) Username string `protobuf:"bytes,4,opt,name=Username,proto3" json:"Username,omitempty"` // Username is the username to connect to the source Password string `protobuf:"bytes,5,opt,name=Password,proto3" json:"Password,omitempty"` URL string `protobuf:"bytes,6,opt,name=URL,proto3" json:"URL,omitempty"` // URL are the connections to the source Default bool `protobuf:"varint,7,opt,name=Default,proto3" json:"Default,omitempty"` // Flags an source as the default. Telegraf string `protobuf:"bytes,8,opt,name=Telegraf,proto3" json:"Telegraf,omitempty"` // Telegraf is the db telegraf is written to. By default it is "telegraf" InsecureSkipVerify bool `protobuf:"varint,9,opt,name=InsecureSkipVerify,proto3" json:"InsecureSkipVerify,omitempty"` // InsecureSkipVerify accepts any certificate from the influx server MetaURL string `protobuf:"bytes,10,opt,name=MetaURL,proto3" json:"MetaURL,omitempty"` // MetaURL is the connection URL for the meta node. SharedSecret string `protobuf:"bytes,11,opt,name=SharedSecret,proto3" json:"SharedSecret,omitempty"` // SharedSecret signs the optional InfluxDB JWT Authorization Organization string `protobuf:"bytes,12,opt,name=Organization,proto3" json:"Organization,omitempty"` // Organization is the organization ID that resource belongs to Role string `protobuf:"bytes,13,opt,name=Role,proto3" json:"Role,omitempty"` // Role is the name of the miniumum role that a user must possess to access the resource DefaultRP string `protobuf:"bytes,14,opt,name=DefaultRP,proto3" json:"DefaultRP,omitempty"` // DefaultRP is the default retention policy used in database queries to this source Version string `protobuf:"bytes,15,opt,name=Version,proto3" json:"Version,omitempty"` // Version of the InfluxDB or Unknown } func (x *Source) Reset() { *x = Source{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Source) String() string { return protoimpl.X.MessageStringOf(x) } func (*Source) ProtoMessage() {} func (x *Source) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Source.ProtoReflect.Descriptor instead. func (*Source) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{0} } func (x *Source) GetID() int64 { if x != nil { return x.ID } return 0 } func (x *Source) GetName() string { if x != nil { return x.Name } return "" } func (x *Source) GetType() string { if x != nil { return x.Type } return "" } func (x *Source) GetUsername() string { if x != nil { return x.Username } return "" } func (x *Source) GetPassword() string { if x != nil { return x.Password } return "" } func (x *Source) GetURL() string { if x != nil { return x.URL } return "" } func (x *Source) GetDefault() bool { if x != nil { return x.Default } return false } func (x *Source) GetTelegraf() string { if x != nil { return x.Telegraf } return "" } func (x *Source) GetInsecureSkipVerify() bool { if x != nil { return x.InsecureSkipVerify } return false } func (x *Source) GetMetaURL() string { if x != nil { return x.MetaURL } return "" } func (x *Source) GetSharedSecret() string { if x != nil { return x.SharedSecret } return "" } func (x *Source) GetOrganization() string { if x != nil { return x.Organization } return "" } func (x *Source) GetRole() string { if x != nil { return x.Role } return "" } func (x *Source) GetDefaultRP() string { if x != nil { return x.DefaultRP } return "" } func (x *Source) GetVersion() string { if x != nil { return x.Version } return "" } type Dashboard struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID int64 `protobuf:"varint,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID of the dashboard Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the user-defined name of the dashboard Cells []*DashboardCell `protobuf:"bytes,3,rep,name=cells,proto3" json:"cells,omitempty"` // a representation of all visual data required for rendering the dashboard Templates []*Template `protobuf:"bytes,4,rep,name=templates,proto3" json:"templates,omitempty"` // Templates replace template variables within InfluxQL Organization string `protobuf:"bytes,5,opt,name=Organization,proto3" json:"Organization,omitempty"` // Organization is the organization ID that resource belongs to } func (x *Dashboard) Reset() { *x = Dashboard{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Dashboard) String() string { return protoimpl.X.MessageStringOf(x) } func (*Dashboard) ProtoMessage() {} func (x *Dashboard) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Dashboard.ProtoReflect.Descriptor instead. func (*Dashboard) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{1} } func (x *Dashboard) GetID() int64 { if x != nil { return x.ID } return 0 } func (x *Dashboard) GetName() string { if x != nil { return x.Name } return "" } func (x *Dashboard) GetCells() []*DashboardCell { if x != nil { return x.Cells } return nil } func (x *Dashboard) GetTemplates() []*Template { if x != nil { return x.Templates } return nil } func (x *Dashboard) GetOrganization() string { if x != nil { return x.Organization } return "" } type DashboardCell struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` // X-coordinate of Cell in the Dashboard Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` // Y-coordinate of Cell in the Dashboard W int32 `protobuf:"varint,3,opt,name=w,proto3" json:"w,omitempty"` // Width of Cell in the Dashboard H int32 `protobuf:"varint,4,opt,name=h,proto3" json:"h,omitempty"` // Height of Cell in the Dashboard Queries []*Query `protobuf:"bytes,5,rep,name=queries,proto3" json:"queries,omitempty"` // Time-series data queries for Dashboard Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"` // User-facing name for this Dashboard Type string `protobuf:"bytes,7,opt,name=type,proto3" json:"type,omitempty"` // Dashboard visualization type ID string `protobuf:"bytes,8,opt,name=ID,proto3" json:"ID,omitempty"` // id is the unique id of the dashboard. MIGRATED FIELD added in 1.2.0-beta6 Axes map[string]*Axis `protobuf:"bytes,9,rep,name=axes,proto3" json:"axes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Axes represent the graphical viewport for a cell's visualizations Colors []*Color `protobuf:"bytes,10,rep,name=colors,proto3" json:"colors,omitempty"` // Colors represent encoding data values to color Legend *Legend `protobuf:"bytes,11,opt,name=legend,proto3" json:"legend,omitempty"` // Legend is summary information for a cell TableOptions *TableOptions `protobuf:"bytes,12,opt,name=tableOptions,proto3" json:"tableOptions,omitempty"` // TableOptions for visualization of cell with type 'table' FieldOptions []*RenamableField `protobuf:"bytes,13,rep,name=fieldOptions,proto3" json:"fieldOptions,omitempty"` // Options for each of the fields returned in a cell TimeFormat string `protobuf:"bytes,14,opt,name=timeFormat,proto3" json:"timeFormat,omitempty"` // format for time DecimalPlaces *DecimalPlaces `protobuf:"bytes,15,opt,name=decimalPlaces,proto3" json:"decimalPlaces,omitempty"` // Represents how precise the values of this field should be Note string `protobuf:"bytes,16,opt,name=note,proto3" json:"note,omitempty"` // arbitrary string for note-taking/making NoteVisibility string `protobuf:"bytes,17,opt,name=noteVisibility,proto3" json:"noteVisibility,omitempty"` // config option for showing note } func (x *DashboardCell) Reset() { *x = DashboardCell{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DashboardCell) String() string { return protoimpl.X.MessageStringOf(x) } func (*DashboardCell) ProtoMessage() {} func (x *DashboardCell) ProtoReflect() protoreflect.Message { mi := &file_internal_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 DashboardCell.ProtoReflect.Descriptor instead. func (*DashboardCell) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{2} } func (x *DashboardCell) GetX() int32 { if x != nil { return x.X } return 0 } func (x *DashboardCell) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *DashboardCell) GetW() int32 { if x != nil { return x.W } return 0 } func (x *DashboardCell) GetH() int32 { if x != nil { return x.H } return 0 } func (x *DashboardCell) GetQueries() []*Query { if x != nil { return x.Queries } return nil } func (x *DashboardCell) GetName() string { if x != nil { return x.Name } return "" } func (x *DashboardCell) GetType() string { if x != nil { return x.Type } return "" } func (x *DashboardCell) GetID() string { if x != nil { return x.ID } return "" } func (x *DashboardCell) GetAxes() map[string]*Axis { if x != nil { return x.Axes } return nil } func (x *DashboardCell) GetColors() []*Color { if x != nil { return x.Colors } return nil } func (x *DashboardCell) GetLegend() *Legend { if x != nil { return x.Legend } return nil } func (x *DashboardCell) GetTableOptions() *TableOptions { if x != nil { return x.TableOptions } return nil } func (x *DashboardCell) GetFieldOptions() []*RenamableField { if x != nil { return x.FieldOptions } return nil } func (x *DashboardCell) GetTimeFormat() string { if x != nil { return x.TimeFormat } return "" } func (x *DashboardCell) GetDecimalPlaces() *DecimalPlaces { if x != nil { return x.DecimalPlaces } return nil } func (x *DashboardCell) GetNote() string { if x != nil { return x.Note } return "" } func (x *DashboardCell) GetNoteVisibility() string { if x != nil { return x.NoteVisibility } return "" } type DecimalPlaces struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields IsEnforced bool `protobuf:"varint,1,opt,name=isEnforced,proto3" json:"isEnforced,omitempty"` // whether decimal places should be enforced Digits int32 `protobuf:"varint,2,opt,name=digits,proto3" json:"digits,omitempty"` // the number of digits to display after decical point } func (x *DecimalPlaces) Reset() { *x = DecimalPlaces{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DecimalPlaces) String() string { return protoimpl.X.MessageStringOf(x) } func (*DecimalPlaces) ProtoMessage() {} func (x *DecimalPlaces) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use DecimalPlaces.ProtoReflect.Descriptor instead. func (*DecimalPlaces) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{3} } func (x *DecimalPlaces) GetIsEnforced() bool { if x != nil { return x.IsEnforced } return false } func (x *DecimalPlaces) GetDigits() int32 { if x != nil { return x.Digits } return 0 } type TableOptions struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields VerticalTimeAxis bool `protobuf:"varint,2,opt,name=verticalTimeAxis,proto3" json:"verticalTimeAxis,omitempty"` // time axis should be a column not row SortBy *RenamableField `protobuf:"bytes,3,opt,name=sortBy,proto3" json:"sortBy,omitempty"` // which column should a table be sorted by Wrapping string `protobuf:"bytes,4,opt,name=wrapping,proto3" json:"wrapping,omitempty"` // option for text wrapping FixFirstColumn bool `protobuf:"varint,6,opt,name=fixFirstColumn,proto3" json:"fixFirstColumn,omitempty"` // first column should be fixed/frozen } func (x *TableOptions) Reset() { *x = TableOptions{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TableOptions) String() string { return protoimpl.X.MessageStringOf(x) } func (*TableOptions) ProtoMessage() {} func (x *TableOptions) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TableOptions.ProtoReflect.Descriptor instead. func (*TableOptions) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{4} } func (x *TableOptions) GetVerticalTimeAxis() bool { if x != nil { return x.VerticalTimeAxis } return false } func (x *TableOptions) GetSortBy() *RenamableField { if x != nil { return x.SortBy } return nil } func (x *TableOptions) GetWrapping() string { if x != nil { return x.Wrapping } return "" } func (x *TableOptions) GetFixFirstColumn() bool { if x != nil { return x.FixFirstColumn } return false } type RenamableField struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields InternalName string `protobuf:"bytes,1,opt,name=internalName,proto3" json:"internalName,omitempty"` // name of column DisplayName string `protobuf:"bytes,2,opt,name=displayName,proto3" json:"displayName,omitempty"` // what column is renamed to Visible bool `protobuf:"varint,3,opt,name=visible,proto3" json:"visible,omitempty"` // Represents whether RenamableField is visible } func (x *RenamableField) Reset() { *x = RenamableField{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RenamableField) String() string { return protoimpl.X.MessageStringOf(x) } func (*RenamableField) ProtoMessage() {} func (x *RenamableField) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RenamableField.ProtoReflect.Descriptor instead. func (*RenamableField) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{5} } func (x *RenamableField) GetInternalName() string { if x != nil { return x.InternalName } return "" } func (x *RenamableField) GetDisplayName() string { if x != nil { return x.DisplayName } return "" } func (x *RenamableField) GetVisible() bool { if x != nil { return x.Visible } return false } type Color struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique id of the cell color Type string `protobuf:"bytes,2,opt,name=Type,proto3" json:"Type,omitempty"` // Type is how the color is used. Accepted (min,max,threshold) Hex string `protobuf:"bytes,3,opt,name=Hex,proto3" json:"Hex,omitempty"` // Hex is the hex number of the color Name string `protobuf:"bytes,4,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the user-facing name of the hex color Value string `protobuf:"bytes,5,opt,name=Value,proto3" json:"Value,omitempty"` // Value is the data value mapped to this color } func (x *Color) Reset() { *x = Color{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Color) String() string { return protoimpl.X.MessageStringOf(x) } func (*Color) ProtoMessage() {} func (x *Color) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[6] 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 Color.ProtoReflect.Descriptor instead. func (*Color) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{6} } func (x *Color) GetID() string { if x != nil { return x.ID } return "" } func (x *Color) GetType() string { if x != nil { return x.Type } return "" } func (x *Color) GetHex() string { if x != nil { return x.Hex } return "" } func (x *Color) GetName() string { if x != nil { return x.Name } return "" } func (x *Color) GetValue() string { if x != nil { return x.Value } return "" } type Legend struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type string `protobuf:"bytes,1,opt,name=Type,proto3" json:"Type,omitempty"` // Type is how the legend is used Orientation string `protobuf:"bytes,2,opt,name=Orientation,proto3" json:"Orientation,omitempty"` // Orientation is the location of the legend on the cell } func (x *Legend) Reset() { *x = Legend{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Legend) String() string { return protoimpl.X.MessageStringOf(x) } func (*Legend) ProtoMessage() {} func (x *Legend) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[7] 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 Legend.ProtoReflect.Descriptor instead. func (*Legend) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{7} } func (x *Legend) GetType() string { if x != nil { return x.Type } return "" } func (x *Legend) GetOrientation() string { if x != nil { return x.Orientation } return "" } type Axis struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields LegacyBounds []int64 `protobuf:"varint,1,rep,packed,name=legacyBounds,proto3" json:"legacyBounds,omitempty"` // legacyBounds are an ordered 2-tuple consisting of lower and upper axis extents, respectively Bounds []string `protobuf:"bytes,2,rep,name=bounds,proto3" json:"bounds,omitempty"` // bounds are an arbitrary list of client-defined bounds. Label string `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"` // label is a description of this axis Prefix string `protobuf:"bytes,4,opt,name=prefix,proto3" json:"prefix,omitempty"` // specifies the prefix for axis values Suffix string `protobuf:"bytes,5,opt,name=suffix,proto3" json:"suffix,omitempty"` // specifies the suffix for axis values Base string `protobuf:"bytes,6,opt,name=base,proto3" json:"base,omitempty"` // defines the base for axis values Scale string `protobuf:"bytes,7,opt,name=scale,proto3" json:"scale,omitempty"` // represents the magnitude of the numbers on this axis } func (x *Axis) Reset() { *x = Axis{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Axis) String() string { return protoimpl.X.MessageStringOf(x) } func (*Axis) ProtoMessage() {} func (x *Axis) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[8] 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 Axis.ProtoReflect.Descriptor instead. func (*Axis) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{8} } func (x *Axis) GetLegacyBounds() []int64 { if x != nil { return x.LegacyBounds } return nil } func (x *Axis) GetBounds() []string { if x != nil { return x.Bounds } return nil } func (x *Axis) GetLabel() string { if x != nil { return x.Label } return "" } func (x *Axis) GetPrefix() string { if x != nil { return x.Prefix } return "" } func (x *Axis) GetSuffix() string { if x != nil { return x.Suffix } return "" } func (x *Axis) GetBase() string { if x != nil { return x.Base } return "" } func (x *Axis) GetScale() string { if x != nil { return x.Scale } return "" } type Template struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID associated with this template TempVar string `protobuf:"bytes,2,opt,name=temp_var,json=tempVar,proto3" json:"temp_var,omitempty"` Values []*TemplateValue `protobuf:"bytes,3,rep,name=values,proto3" json:"values,omitempty"` Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` // Type can be fieldKeys, tagKeys, tagValues, CSV, constant, query, measurements, databases Label string `protobuf:"bytes,5,opt,name=label,proto3" json:"label,omitempty"` // Label is a user-facing description of the Template Query *TemplateQuery `protobuf:"bytes,6,opt,name=query,proto3" json:"query,omitempty"` // Query is used to generate the choices for a template SourceID string `protobuf:"bytes,7,opt,name=sourceID,proto3" json:"sourceID,omitempty"` // Source is the id of the data source } func (x *Template) Reset() { *x = Template{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Template) String() string { return protoimpl.X.MessageStringOf(x) } func (*Template) ProtoMessage() {} func (x *Template) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[9] 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 Template.ProtoReflect.Descriptor instead. func (*Template) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{9} } func (x *Template) GetID() string { if x != nil { return x.ID } return "" } func (x *Template) GetTempVar() string { if x != nil { return x.TempVar } return "" } func (x *Template) GetValues() []*TemplateValue { if x != nil { return x.Values } return nil } func (x *Template) GetType() string { if x != nil { return x.Type } return "" } func (x *Template) GetLabel() string { if x != nil { return x.Label } return "" } func (x *Template) GetQuery() *TemplateQuery { if x != nil { return x.Query } return nil } func (x *Template) GetSourceID() string { if x != nil { return x.SourceID } return "" } type TemplateValue struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` // Type can be tagKey, tagValue, fieldKey, csv, map, measurement, database, constant Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // Value is the specific value used to replace a template in an InfluxQL query Selected bool `protobuf:"varint,3,opt,name=selected,proto3" json:"selected,omitempty"` // Selected states that this variable has been picked to use for replacement Key string `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"` // Key is the key for a specific Value if the Template Type is map (optional) } func (x *TemplateValue) Reset() { *x = TemplateValue{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TemplateValue) String() string { return protoimpl.X.MessageStringOf(x) } func (*TemplateValue) ProtoMessage() {} func (x *TemplateValue) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[10] 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 TemplateValue.ProtoReflect.Descriptor instead. func (*TemplateValue) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{10} } func (x *TemplateValue) GetType() string { if x != nil { return x.Type } return "" } func (x *TemplateValue) GetValue() string { if x != nil { return x.Value } return "" } func (x *TemplateValue) GetSelected() bool { if x != nil { return x.Selected } return false } func (x *TemplateValue) GetKey() string { if x != nil { return x.Key } return "" } type TemplateQuery struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Command string `protobuf:"bytes,1,opt,name=command,proto3" json:"command,omitempty"` // Command is the query itself Db string `protobuf:"bytes,2,opt,name=db,proto3" json:"db,omitempty"` // DB the database for the query (optional) Rp string `protobuf:"bytes,3,opt,name=rp,proto3" json:"rp,omitempty"` // RP is a retention policy and optional; Measurement string `protobuf:"bytes,4,opt,name=measurement,proto3" json:"measurement,omitempty"` // Measurement is the optinally selected measurement for the query TagKey string `protobuf:"bytes,5,opt,name=tag_key,json=tagKey,proto3" json:"tag_key,omitempty"` // TagKey is the optionally selected tag key for the query FieldKey string `protobuf:"bytes,6,opt,name=field_key,json=fieldKey,proto3" json:"field_key,omitempty"` // FieldKey is the optionally selected field key for the query Flux string `protobuf:"bytes,7,opt,name=flux,proto3" json:"flux,omitempty"` // Flux script content } func (x *TemplateQuery) Reset() { *x = TemplateQuery{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TemplateQuery) String() string { return protoimpl.X.MessageStringOf(x) } func (*TemplateQuery) ProtoMessage() {} func (x *TemplateQuery) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[11] 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 TemplateQuery.ProtoReflect.Descriptor instead. func (*TemplateQuery) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{11} } func (x *TemplateQuery) GetCommand() string { if x != nil { return x.Command } return "" } func (x *TemplateQuery) GetDb() string { if x != nil { return x.Db } return "" } func (x *TemplateQuery) GetRp() string { if x != nil { return x.Rp } return "" } func (x *TemplateQuery) GetMeasurement() string { if x != nil { return x.Measurement } return "" } func (x *TemplateQuery) GetTagKey() string { if x != nil { return x.TagKey } return "" } func (x *TemplateQuery) GetFieldKey() string { if x != nil { return x.FieldKey } return "" } func (x *TemplateQuery) GetFlux() string { if x != nil { return x.Flux } return "" } type Server struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID int64 `protobuf:"varint,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID of the server Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the user-defined name for the server Username string `protobuf:"bytes,3,opt,name=Username,proto3" json:"Username,omitempty"` // Username is the username to connect to the server Password string `protobuf:"bytes,4,opt,name=Password,proto3" json:"Password,omitempty"` URL string `protobuf:"bytes,5,opt,name=URL,proto3" json:"URL,omitempty"` // URL is the path to the server SrcID int64 `protobuf:"varint,6,opt,name=SrcID,proto3" json:"SrcID,omitempty"` // SrcID is the ID of the data source Active bool `protobuf:"varint,7,opt,name=Active,proto3" json:"Active,omitempty"` // is this the currently active server for the source Organization string `protobuf:"bytes,8,opt,name=Organization,proto3" json:"Organization,omitempty"` // Organization is the organization ID that resource belongs to InsecureSkipVerify bool `protobuf:"varint,9,opt,name=InsecureSkipVerify,proto3" json:"InsecureSkipVerify,omitempty"` // InsecureSkipVerify accepts any certificate from the client Type string `protobuf:"bytes,10,opt,name=Type,proto3" json:"Type,omitempty"` // Type is the kind of the server (e.g. flux) MetadataJSON string `protobuf:"bytes,11,opt,name=MetadataJSON,proto3" json:"MetadataJSON,omitempty"` // JSON byte representation of the metadata } func (x *Server) Reset() { *x = Server{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Server) String() string { return protoimpl.X.MessageStringOf(x) } func (*Server) ProtoMessage() {} func (x *Server) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[12] 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 Server.ProtoReflect.Descriptor instead. func (*Server) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{12} } func (x *Server) GetID() int64 { if x != nil { return x.ID } return 0 } func (x *Server) GetName() string { if x != nil { return x.Name } return "" } func (x *Server) GetUsername() string { if x != nil { return x.Username } return "" } func (x *Server) GetPassword() string { if x != nil { return x.Password } return "" } func (x *Server) GetURL() string { if x != nil { return x.URL } return "" } func (x *Server) GetSrcID() int64 { if x != nil { return x.SrcID } return 0 } func (x *Server) GetActive() bool { if x != nil { return x.Active } return false } func (x *Server) GetOrganization() string { if x != nil { return x.Organization } return "" } func (x *Server) GetInsecureSkipVerify() bool { if x != nil { return x.InsecureSkipVerify } return false } func (x *Server) GetType() string { if x != nil { return x.Type } return "" } func (x *Server) GetMetadataJSON() string { if x != nil { return x.MetadataJSON } return "" } type Layout struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID of the layout. Application string `protobuf:"bytes,2,opt,name=Application,proto3" json:"Application,omitempty"` // Application is the user facing name of this Layout. Measurement string `protobuf:"bytes,3,opt,name=Measurement,proto3" json:"Measurement,omitempty"` // Measurement is the descriptive name of the time series data. Cells []*Cell `protobuf:"bytes,4,rep,name=Cells,proto3" json:"Cells,omitempty"` // Cells are the individual visualization elements. Autoflow bool `protobuf:"varint,5,opt,name=Autoflow,proto3" json:"Autoflow,omitempty"` // Autoflow indicates whether the frontend should layout the cells automatically. } func (x *Layout) Reset() { *x = Layout{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Layout) String() string { return protoimpl.X.MessageStringOf(x) } func (*Layout) ProtoMessage() {} func (x *Layout) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[13] 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 Layout.ProtoReflect.Descriptor instead. func (*Layout) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{13} } func (x *Layout) GetID() string { if x != nil { return x.ID } return "" } func (x *Layout) GetApplication() string { if x != nil { return x.Application } return "" } func (x *Layout) GetMeasurement() string { if x != nil { return x.Measurement } return "" } func (x *Layout) GetCells() []*Cell { if x != nil { return x.Cells } return nil } func (x *Layout) GetAutoflow() bool { if x != nil { return x.Autoflow } return false } type Cell struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields X int32 `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"` // X-coordinate of Cell in the Layout Y int32 `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"` // Y-coordinate of Cell in the Layout W int32 `protobuf:"varint,3,opt,name=w,proto3" json:"w,omitempty"` // Width of Cell in the Layout H int32 `protobuf:"varint,4,opt,name=h,proto3" json:"h,omitempty"` // Height of Cell in the Layout Queries []*Query `protobuf:"bytes,5,rep,name=queries,proto3" json:"queries,omitempty"` // Time-series data queries for Cell. I string `protobuf:"bytes,6,opt,name=i,proto3" json:"i,omitempty"` // Unique identifier for the cell Name string `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"` // User-facing name for this cell Yranges []int64 `protobuf:"varint,8,rep,packed,name=yranges,proto3" json:"yranges,omitempty"` // Limits of the y-axes Ylabels []string `protobuf:"bytes,9,rep,name=ylabels,proto3" json:"ylabels,omitempty"` // Labels of the y-axes Type string `protobuf:"bytes,10,opt,name=type,proto3" json:"type,omitempty"` // Cell visualization type Axes map[string]*Axis `protobuf:"bytes,11,rep,name=axes,proto3" json:"axes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Axes represent the graphical viewport for a cell's visualizations } func (x *Cell) Reset() { *x = Cell{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Cell) String() string { return protoimpl.X.MessageStringOf(x) } func (*Cell) ProtoMessage() {} func (x *Cell) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[14] 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 Cell.ProtoReflect.Descriptor instead. func (*Cell) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{14} } func (x *Cell) GetX() int32 { if x != nil { return x.X } return 0 } func (x *Cell) GetY() int32 { if x != nil { return x.Y } return 0 } func (x *Cell) GetW() int32 { if x != nil { return x.W } return 0 } func (x *Cell) GetH() int32 { if x != nil { return x.H } return 0 } func (x *Cell) GetQueries() []*Query { if x != nil { return x.Queries } return nil } func (x *Cell) GetI() string { if x != nil { return x.I } return "" } func (x *Cell) GetName() string { if x != nil { return x.Name } return "" } func (x *Cell) GetYranges() []int64 { if x != nil { return x.Yranges } return nil } func (x *Cell) GetYlabels() []string { if x != nil { return x.Ylabels } return nil } func (x *Cell) GetType() string { if x != nil { return x.Type } return "" } func (x *Cell) GetAxes() map[string]*Axis { if x != nil { return x.Axes } return nil } type Query struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Command string `protobuf:"bytes,1,opt,name=Command,proto3" json:"Command,omitempty"` // Command is the query itself DB string `protobuf:"bytes,2,opt,name=DB,proto3" json:"DB,omitempty"` // DB the database for the query (optional) RP string `protobuf:"bytes,3,opt,name=RP,proto3" json:"RP,omitempty"` // RP is a retention policy and optional; GroupBys []string `protobuf:"bytes,4,rep,name=GroupBys,proto3" json:"GroupBys,omitempty"` // GroupBys define the groups to combine in the query Wheres []string `protobuf:"bytes,5,rep,name=Wheres,proto3" json:"Wheres,omitempty"` // Wheres define the restrictions on the query Label string `protobuf:"bytes,6,opt,name=Label,proto3" json:"Label,omitempty"` // Label is the name of the Y-Axis Range *Range `protobuf:"bytes,7,opt,name=Range,proto3" json:"Range,omitempty"` // Range is the upper and lower bound of the Y-Axis Source string `protobuf:"bytes,8,opt,name=Source,proto3" json:"Source,omitempty"` // Source is the optional URI to the data source Shifts []*TimeShift `protobuf:"bytes,9,rep,name=Shifts,proto3" json:"Shifts,omitempty"` // TimeShift represents a shift to apply to an influxql query's time range Type string `protobuf:"bytes,10,opt,name=Type,proto3" json:"Type,omitempty"` // Type is the language used by the query (influxql or flux) } func (x *Query) Reset() { *x = Query{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Query) String() string { return protoimpl.X.MessageStringOf(x) } func (*Query) ProtoMessage() {} func (x *Query) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[15] 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 Query.ProtoReflect.Descriptor instead. func (*Query) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{15} } func (x *Query) GetCommand() string { if x != nil { return x.Command } return "" } func (x *Query) GetDB() string { if x != nil { return x.DB } return "" } func (x *Query) GetRP() string { if x != nil { return x.RP } return "" } func (x *Query) GetGroupBys() []string { if x != nil { return x.GroupBys } return nil } func (x *Query) GetWheres() []string { if x != nil { return x.Wheres } return nil } func (x *Query) GetLabel() string { if x != nil { return x.Label } return "" } func (x *Query) GetRange() *Range { if x != nil { return x.Range } return nil } func (x *Query) GetSource() string { if x != nil { return x.Source } return "" } func (x *Query) GetShifts() []*TimeShift { if x != nil { return x.Shifts } return nil } func (x *Query) GetType() string { if x != nil { return x.Type } return "" } type TimeShift struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Label string `protobuf:"bytes,1,opt,name=Label,proto3" json:"Label,omitempty"` // Label user facing description Unit string `protobuf:"bytes,2,opt,name=Unit,proto3" json:"Unit,omitempty"` // Unit influxql time unit representation i.e. ms, s, m, h, d Quantity string `protobuf:"bytes,3,opt,name=Quantity,proto3" json:"Quantity,omitempty"` // Quantity number of units } func (x *TimeShift) Reset() { *x = TimeShift{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TimeShift) String() string { return protoimpl.X.MessageStringOf(x) } func (*TimeShift) ProtoMessage() {} func (x *TimeShift) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[16] 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 TimeShift.ProtoReflect.Descriptor instead. func (*TimeShift) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{16} } func (x *TimeShift) GetLabel() string { if x != nil { return x.Label } return "" } func (x *TimeShift) GetUnit() string { if x != nil { return x.Unit } return "" } func (x *TimeShift) GetQuantity() string { if x != nil { return x.Quantity } return "" } type Range struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Upper int64 `protobuf:"varint,1,opt,name=Upper,proto3" json:"Upper,omitempty"` // Upper is the upper-bound of the range Lower int64 `protobuf:"varint,2,opt,name=Lower,proto3" json:"Lower,omitempty"` // Lower is the lower-bound of the range } func (x *Range) Reset() { *x = Range{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Range) String() string { return protoimpl.X.MessageStringOf(x) } func (*Range) ProtoMessage() {} func (x *Range) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[17] 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 Range.ProtoReflect.Descriptor instead. func (*Range) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{17} } func (x *Range) GetUpper() int64 { if x != nil { return x.Upper } return 0 } func (x *Range) GetLower() int64 { if x != nil { return x.Lower } return 0 } type AlertRule struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID of this alert rule JSON string `protobuf:"bytes,2,opt,name=JSON,proto3" json:"JSON,omitempty"` // JSON byte representation of the alert SrcID int64 `protobuf:"varint,3,opt,name=SrcID,proto3" json:"SrcID,omitempty"` // SrcID is the id of the source this alert is associated with KapaID int64 `protobuf:"varint,4,opt,name=KapaID,proto3" json:"KapaID,omitempty"` // KapaID is the id of the kapacitor this alert is associated with } func (x *AlertRule) Reset() { *x = AlertRule{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AlertRule) String() string { return protoimpl.X.MessageStringOf(x) } func (*AlertRule) ProtoMessage() {} func (x *AlertRule) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[18] 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 AlertRule.ProtoReflect.Descriptor instead. func (*AlertRule) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{18} } func (x *AlertRule) GetID() string { if x != nil { return x.ID } return "" } func (x *AlertRule) GetJSON() string { if x != nil { return x.JSON } return "" } func (x *AlertRule) GetSrcID() int64 { if x != nil { return x.SrcID } return 0 } func (x *AlertRule) GetKapaID() int64 { if x != nil { return x.KapaID } return 0 } type User struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID uint64 `protobuf:"varint,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID of this user Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the user's login name Provider string `protobuf:"bytes,3,opt,name=Provider,proto3" json:"Provider,omitempty"` // Provider is the provider that certifies and issues this user's authentication, e.g. GitHub Scheme string `protobuf:"bytes,4,opt,name=Scheme,proto3" json:"Scheme,omitempty"` // Scheme is the scheme used to perform this user's authentication, e.g. OAuth2 or LDAP Roles []*Role `protobuf:"bytes,5,rep,name=Roles,proto3" json:"Roles,omitempty"` // Roles is set of roles a user has SuperAdmin bool `protobuf:"varint,6,opt,name=SuperAdmin,proto3" json:"SuperAdmin,omitempty"` // SuperAdmin is bool that specifies whether a user is a super admin } func (x *User) Reset() { *x = User{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *User) String() string { return protoimpl.X.MessageStringOf(x) } func (*User) ProtoMessage() {} func (x *User) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[19] 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 User.ProtoReflect.Descriptor instead. func (*User) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{19} } func (x *User) GetID() uint64 { if x != nil { return x.ID } return 0 } func (x *User) GetName() string { if x != nil { return x.Name } return "" } func (x *User) GetProvider() string { if x != nil { return x.Provider } return "" } func (x *User) GetScheme() string { if x != nil { return x.Scheme } return "" } func (x *User) GetRoles() []*Role { if x != nil { return x.Roles } return nil } func (x *User) GetSuperAdmin() bool { if x != nil { return x.SuperAdmin } return false } type Role struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Organization string `protobuf:"bytes,1,opt,name=Organization,proto3" json:"Organization,omitempty"` // Organization is the ID of the organization that this user has a role in Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the name of the role of this user in the respective organization } func (x *Role) Reset() { *x = Role{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Role) String() string { return protoimpl.X.MessageStringOf(x) } func (*Role) ProtoMessage() {} func (x *Role) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[20] 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 Role.ProtoReflect.Descriptor instead. func (*Role) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{20} } func (x *Role) GetOrganization() string { if x != nil { return x.Organization } return "" } func (x *Role) GetName() string { if x != nil { return x.Name } return "" } type Mapping struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Provider string `protobuf:"bytes,1,opt,name=Provider,proto3" json:"Provider,omitempty"` // Provider is the provider that certifies and issues this user's authentication, e.g. GitHub Scheme string `protobuf:"bytes,2,opt,name=Scheme,proto3" json:"Scheme,omitempty"` // Scheme is the scheme used to perform this user's authentication, e.g. OAuth2 or LDAP ProviderOrganization string `protobuf:"bytes,3,opt,name=ProviderOrganization,proto3" json:"ProviderOrganization,omitempty"` // ProviderOrganization is the group or organizations that you are a part of in an auth provider ID string `protobuf:"bytes,4,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID for the mapping Organization string `protobuf:"bytes,5,opt,name=Organization,proto3" json:"Organization,omitempty"` // Organization is the organization ID that resource belongs to } func (x *Mapping) Reset() { *x = Mapping{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Mapping) String() string { return protoimpl.X.MessageStringOf(x) } func (*Mapping) ProtoMessage() {} func (x *Mapping) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[21] 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 Mapping.ProtoReflect.Descriptor instead. func (*Mapping) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{21} } func (x *Mapping) GetProvider() string { if x != nil { return x.Provider } return "" } func (x *Mapping) GetScheme() string { if x != nil { return x.Scheme } return "" } func (x *Mapping) GetProviderOrganization() string { if x != nil { return x.ProviderOrganization } return "" } func (x *Mapping) GetID() string { if x != nil { return x.ID } return "" } func (x *Mapping) GetOrganization() string { if x != nil { return x.Organization } return "" } type Organization struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` // ID is the unique ID of the organization Name string `protobuf:"bytes,2,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the organization's name DefaultRole string `protobuf:"bytes,3,opt,name=DefaultRole,proto3" json:"DefaultRole,omitempty"` // DefaultRole is the name of the role that is the default for any users added to the organization } func (x *Organization) Reset() { *x = Organization{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Organization) String() string { return protoimpl.X.MessageStringOf(x) } func (*Organization) ProtoMessage() {} func (x *Organization) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[22] 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 Organization.ProtoReflect.Descriptor instead. func (*Organization) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{22} } func (x *Organization) GetID() string { if x != nil { return x.ID } return "" } func (x *Organization) GetName() string { if x != nil { return x.Name } return "" } func (x *Organization) GetDefaultRole() string { if x != nil { return x.DefaultRole } return "" } type Config struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Auth *AuthConfig `protobuf:"bytes,1,opt,name=Auth,proto3" json:"Auth,omitempty"` // Auth is the configuration for options that auth related } func (x *Config) Reset() { *x = Config{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Config) String() string { return protoimpl.X.MessageStringOf(x) } func (*Config) ProtoMessage() {} func (x *Config) ProtoReflect() protoreflect.Message { mi := &file_internal_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 Config.ProtoReflect.Descriptor instead. func (*Config) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{23} } func (x *Config) GetAuth() *AuthConfig { if x != nil { return x.Auth } return nil } type AuthConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields SuperAdminNewUsers bool `protobuf:"varint,1,opt,name=SuperAdminNewUsers,proto3" json:"SuperAdminNewUsers,omitempty"` // SuperAdminNewUsers configuration option that specifies which users will auto become super admin } func (x *AuthConfig) Reset() { *x = AuthConfig{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AuthConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*AuthConfig) ProtoMessage() {} func (x *AuthConfig) ProtoReflect() protoreflect.Message { mi := &file_internal_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 AuthConfig.ProtoReflect.Descriptor instead. func (*AuthConfig) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{24} } func (x *AuthConfig) GetSuperAdminNewUsers() bool { if x != nil { return x.SuperAdminNewUsers } return false } type OrganizationConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields OrganizationID string `protobuf:"bytes,1,opt,name=OrganizationID,proto3" json:"OrganizationID,omitempty"` // OrganizationID is the ID of the organization this config belogs to LogViewer *LogViewerConfig `protobuf:"bytes,2,opt,name=LogViewer,proto3" json:"LogViewer,omitempty"` // LogViewer is the organization configuration for log viewer } func (x *OrganizationConfig) Reset() { *x = OrganizationConfig{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *OrganizationConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*OrganizationConfig) ProtoMessage() {} func (x *OrganizationConfig) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[25] 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 OrganizationConfig.ProtoReflect.Descriptor instead. func (*OrganizationConfig) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{25} } func (x *OrganizationConfig) GetOrganizationID() string { if x != nil { return x.OrganizationID } return "" } func (x *OrganizationConfig) GetLogViewer() *LogViewerConfig { if x != nil { return x.LogViewer } return nil } type LogViewerConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Columns []*LogViewerColumn `protobuf:"bytes,1,rep,name=Columns,proto3" json:"Columns,omitempty"` // Columns is the array of columns in the log viewer } func (x *LogViewerConfig) Reset() { *x = LogViewerConfig{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *LogViewerConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*LogViewerConfig) ProtoMessage() {} func (x *LogViewerConfig) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[26] 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 LogViewerConfig.ProtoReflect.Descriptor instead. func (*LogViewerConfig) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{26} } func (x *LogViewerConfig) GetColumns() []*LogViewerColumn { if x != nil { return x.Columns } return nil } type LogViewerColumn struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the unique identifier of the log viewer column Position int32 `protobuf:"varint,2,opt,name=Position,proto3" json:"Position,omitempty"` // Position is the position of the column in the log viewer's array of columns Encodings []*ColumnEncoding `protobuf:"bytes,3,rep,name=Encodings,proto3" json:"Encodings,omitempty"` // Encodings is the array of encoded properties associated with a log viewer column } func (x *LogViewerColumn) Reset() { *x = LogViewerColumn{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *LogViewerColumn) String() string { return protoimpl.X.MessageStringOf(x) } func (*LogViewerColumn) ProtoMessage() {} func (x *LogViewerColumn) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[27] 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 LogViewerColumn.ProtoReflect.Descriptor instead. func (*LogViewerColumn) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{27} } func (x *LogViewerColumn) GetName() string { if x != nil { return x.Name } return "" } func (x *LogViewerColumn) GetPosition() int32 { if x != nil { return x.Position } return 0 } func (x *LogViewerColumn) GetEncodings() []*ColumnEncoding { if x != nil { return x.Encodings } return nil } type ColumnEncoding struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type string `protobuf:"bytes,1,opt,name=Type,proto3" json:"Type,omitempty"` // Type is the purpose of the encoding, for example: severity color Value string `protobuf:"bytes,2,opt,name=Value,proto3" json:"Value,omitempty"` // Value is what the encoding corresponds to Name string `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"` // Name is the optional encoding name } func (x *ColumnEncoding) Reset() { *x = ColumnEncoding{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ColumnEncoding) String() string { return protoimpl.X.MessageStringOf(x) } func (*ColumnEncoding) ProtoMessage() {} func (x *ColumnEncoding) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[28] 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 ColumnEncoding.ProtoReflect.Descriptor instead. func (*ColumnEncoding) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{28} } func (x *ColumnEncoding) GetType() string { if x != nil { return x.Type } return "" } func (x *ColumnEncoding) GetValue() string { if x != nil { return x.Value } return "" } func (x *ColumnEncoding) GetName() string { if x != nil { return x.Name } return "" } type BuildInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Version string `protobuf:"bytes,1,opt,name=Version,proto3" json:"Version,omitempty"` // Version is a descriptive git SHA identifier Commit string `protobuf:"bytes,2,opt,name=Commit,proto3" json:"Commit,omitempty"` // Commit is an abbreviated SHA } func (x *BuildInfo) Reset() { *x = BuildInfo{} if protoimpl.UnsafeEnabled { mi := &file_internal_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BuildInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*BuildInfo) ProtoMessage() {} func (x *BuildInfo) ProtoReflect() protoreflect.Message { mi := &file_internal_proto_msgTypes[29] 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 BuildInfo.ProtoReflect.Descriptor instead. func (*BuildInfo) Descriptor() ([]byte, []int) { return file_internal_proto_rawDescGZIP(), []int{29} } func (x *BuildInfo) GetVersion() string { if x != nil { return x.Version } return "" } func (x *BuildInfo) GetCommit() string { if x != nil { return x.Commit } return "" } var File_internal_proto protoreflect.FileDescriptor var file_internal_proto_rawDesc = []byte{ 0x0a, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x22, 0x9e, 0x03, 0x0a, 0x06, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x52, 0x4c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x55, 0x52, 0x4c, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x65, 0x6c, 0x65, 0x67, 0x72, 0x61, 0x66, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x54, 0x65, 0x6c, 0x65, 0x67, 0x72, 0x61, 0x66, 0x12, 0x2e, 0x0a, 0x12, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x4d, 0x65, 0x74, 0x61, 0x55, 0x52, 0x4c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x4d, 0x65, 0x74, 0x61, 0x55, 0x52, 0x4c, 0x12, 0x22, 0x0a, 0x0c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x50, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x50, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xb4, 0x01, 0x0a, 0x09, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x09, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x09, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x92, 0x05, 0x0a, 0x0d, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x0c, 0x0a, 0x01, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x77, 0x12, 0x0c, 0x0a, 0x01, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x68, 0x12, 0x29, 0x0a, 0x07, 0x71, 0x75, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x07, 0x71, 0x75, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x35, 0x0a, 0x04, 0x61, 0x78, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x2e, 0x41, 0x78, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x61, 0x78, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x12, 0x28, 0x0a, 0x06, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x52, 0x06, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x0c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x0c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x3d, 0x0a, 0x0d, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x52, 0x0d, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6e, 0x6f, 0x74, 0x65, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6e, 0x6f, 0x74, 0x65, 0x56, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x1a, 0x47, 0x0a, 0x09, 0x41, 0x78, 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, 0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x78, 0x69, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x47, 0x0a, 0x0d, 0x44, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x45, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x45, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x0c, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x41, 0x78, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x41, 0x78, 0x69, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x06, 0x73, 0x6f, 0x72, 0x74, 0x42, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x72, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x72, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x69, 0x78, 0x46, 0x69, 0x72, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x66, 0x69, 0x78, 0x46, 0x69, 0x72, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x22, 0x70, 0x0a, 0x0e, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x22, 0x67, 0x0a, 0x05, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x48, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x48, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3e, 0x0a, 0x06, 0x4c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb2, 0x01, 0x0a, 0x04, 0x41, 0x78, 0x69, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x22, 0xdb, 0x01, 0x0a, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x5f, 0x76, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x6d, 0x70, 0x56, 0x61, 0x72, 0x12, 0x2f, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x2d, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x44, 0x22, 0x67, 0x0a, 0x0d, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0xb5, 0x01, 0x0a, 0x0d, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x64, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x64, 0x62, 0x12, 0x0e, 0x0a, 0x02, 0x72, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x72, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x6c, 0x75, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x6c, 0x75, 0x78, 0x22, 0xb0, 0x02, 0x0a, 0x06, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x52, 0x4c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x55, 0x52, 0x4c, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x72, 0x63, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x53, 0x72, 0x63, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x12, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4a, 0x53, 0x4f, 0x4e, 0x22, 0x9e, 0x01, 0x0a, 0x06, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x05, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x05, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x75, 0x74, 0x6f, 0x66, 0x6c, 0x6f, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x41, 0x75, 0x74, 0x6f, 0x66, 0x6c, 0x6f, 0x77, 0x22, 0xca, 0x02, 0x0a, 0x04, 0x43, 0x65, 0x6c, 0x6c, 0x12, 0x0c, 0x0a, 0x01, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x78, 0x12, 0x0c, 0x0a, 0x01, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x79, 0x12, 0x0c, 0x0a, 0x01, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x77, 0x12, 0x0c, 0x0a, 0x01, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x68, 0x12, 0x29, 0x0a, 0x07, 0x71, 0x75, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x07, 0x71, 0x75, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x69, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x01, 0x69, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x79, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x79, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x61, 0x78, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x2e, 0x41, 0x78, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x61, 0x78, 0x65, 0x73, 0x1a, 0x47, 0x0a, 0x09, 0x41, 0x78, 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, 0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x78, 0x69, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8b, 0x02, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x44, 0x42, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x44, 0x42, 0x12, 0x0e, 0x0a, 0x02, 0x52, 0x50, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x52, 0x50, 0x12, 0x1a, 0x0a, 0x08, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x79, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x79, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x57, 0x68, 0x65, 0x72, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x57, 0x68, 0x65, 0x72, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x06, 0x53, 0x68, 0x69, 0x66, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x68, 0x69, 0x66, 0x74, 0x52, 0x06, 0x53, 0x68, 0x69, 0x66, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x22, 0x51, 0x0a, 0x09, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x68, 0x69, 0x66, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x6e, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x33, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x55, 0x70, 0x70, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x55, 0x70, 0x70, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x22, 0x5d, 0x0a, 0x09, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x72, 0x63, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x53, 0x72, 0x63, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x4b, 0x61, 0x70, 0x61, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x4b, 0x61, 0x70, 0x61, 0x49, 0x44, 0x22, 0xa4, 0x01, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x75, 0x70, 0x65, 0x72, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x53, 0x75, 0x70, 0x65, 0x72, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x22, 0x3e, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x07, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x22, 0x32, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x28, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x04, 0x41, 0x75, 0x74, 0x68, 0x22, 0x3c, 0x0a, 0x0a, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2e, 0x0a, 0x12, 0x53, 0x75, 0x70, 0x65, 0x72, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x53, 0x75, 0x70, 0x65, 0x72, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x73, 0x22, 0x75, 0x0a, 0x12, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x26, 0x0a, 0x0e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x37, 0x0a, 0x09, 0x4c, 0x6f, 0x67, 0x56, 0x69, 0x65, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c, 0x6f, 0x67, 0x56, 0x69, 0x65, 0x77, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x4c, 0x6f, 0x67, 0x56, 0x69, 0x65, 0x77, 0x65, 0x72, 0x22, 0x46, 0x0a, 0x0f, 0x4c, 0x6f, 0x67, 0x56, 0x69, 0x65, 0x77, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x33, 0x0a, 0x07, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c, 0x6f, 0x67, 0x56, 0x69, 0x65, 0x77, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x07, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x22, 0x79, 0x0a, 0x0f, 0x4c, 0x6f, 0x67, 0x56, 0x69, 0x65, 0x77, 0x65, 0x72, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x09, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x4e, 0x0a, 0x0e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3d, 0x0a, 0x09, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x42, 0x0c, 0x5a, 0x0a, 0x2e, 0x3b, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_internal_proto_rawDescOnce sync.Once file_internal_proto_rawDescData = file_internal_proto_rawDesc ) func file_internal_proto_rawDescGZIP() []byte { file_internal_proto_rawDescOnce.Do(func() { file_internal_proto_rawDescData = protoimpl.X.CompressGZIP(file_internal_proto_rawDescData) }) return file_internal_proto_rawDescData } var file_internal_proto_msgTypes = make([]protoimpl.MessageInfo, 32) var file_internal_proto_goTypes = []interface{}{ (*Source)(nil), // 0: internal.Source (*Dashboard)(nil), // 1: internal.Dashboard (*DashboardCell)(nil), // 2: internal.DashboardCell (*DecimalPlaces)(nil), // 3: internal.DecimalPlaces (*TableOptions)(nil), // 4: internal.TableOptions (*RenamableField)(nil), // 5: internal.RenamableField (*Color)(nil), // 6: internal.Color (*Legend)(nil), // 7: internal.Legend (*Axis)(nil), // 8: internal.Axis (*Template)(nil), // 9: internal.Template (*TemplateValue)(nil), // 10: internal.TemplateValue (*TemplateQuery)(nil), // 11: internal.TemplateQuery (*Server)(nil), // 12: internal.Server (*Layout)(nil), // 13: internal.Layout (*Cell)(nil), // 14: internal.Cell (*Query)(nil), // 15: internal.Query (*TimeShift)(nil), // 16: internal.TimeShift (*Range)(nil), // 17: internal.Range (*AlertRule)(nil), // 18: internal.AlertRule (*User)(nil), // 19: internal.User (*Role)(nil), // 20: internal.Role (*Mapping)(nil), // 21: internal.Mapping (*Organization)(nil), // 22: internal.Organization (*Config)(nil), // 23: internal.Config (*AuthConfig)(nil), // 24: internal.AuthConfig (*OrganizationConfig)(nil), // 25: internal.OrganizationConfig (*LogViewerConfig)(nil), // 26: internal.LogViewerConfig (*LogViewerColumn)(nil), // 27: internal.LogViewerColumn (*ColumnEncoding)(nil), // 28: internal.ColumnEncoding (*BuildInfo)(nil), // 29: internal.BuildInfo nil, // 30: internal.DashboardCell.AxesEntry nil, // 31: internal.Cell.AxesEntry } var file_internal_proto_depIdxs = []int32{ 2, // 0: internal.Dashboard.cells:type_name -> internal.DashboardCell 9, // 1: internal.Dashboard.templates:type_name -> internal.Template 15, // 2: internal.DashboardCell.queries:type_name -> internal.Query 30, // 3: internal.DashboardCell.axes:type_name -> internal.DashboardCell.AxesEntry 6, // 4: internal.DashboardCell.colors:type_name -> internal.Color 7, // 5: internal.DashboardCell.legend:type_name -> internal.Legend 4, // 6: internal.DashboardCell.tableOptions:type_name -> internal.TableOptions 5, // 7: internal.DashboardCell.fieldOptions:type_name -> internal.RenamableField 3, // 8: internal.DashboardCell.decimalPlaces:type_name -> internal.DecimalPlaces 5, // 9: internal.TableOptions.sortBy:type_name -> internal.RenamableField 10, // 10: internal.Template.values:type_name -> internal.TemplateValue 11, // 11: internal.Template.query:type_name -> internal.TemplateQuery 14, // 12: internal.Layout.Cells:type_name -> internal.Cell 15, // 13: internal.Cell.queries:type_name -> internal.Query 31, // 14: internal.Cell.axes:type_name -> internal.Cell.AxesEntry 17, // 15: internal.Query.Range:type_name -> internal.Range 16, // 16: internal.Query.Shifts:type_name -> internal.TimeShift 20, // 17: internal.User.Roles:type_name -> internal.Role 24, // 18: internal.Config.Auth:type_name -> internal.AuthConfig 26, // 19: internal.OrganizationConfig.LogViewer:type_name -> internal.LogViewerConfig 27, // 20: internal.LogViewerConfig.Columns:type_name -> internal.LogViewerColumn 28, // 21: internal.LogViewerColumn.Encodings:type_name -> internal.ColumnEncoding 8, // 22: internal.DashboardCell.AxesEntry.value:type_name -> internal.Axis 8, // 23: internal.Cell.AxesEntry.value:type_name -> internal.Axis 24, // [24:24] is the sub-list for method output_type 24, // [24:24] is the sub-list for method input_type 24, // [24:24] is the sub-list for extension type_name 24, // [24:24] is the sub-list for extension extendee 0, // [0:24] is the sub-list for field type_name } func init() { file_internal_proto_init() } func file_internal_proto_init() { if File_internal_proto != nil { return } if !protoimpl.UnsafeEnabled { file_internal_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Source); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Dashboard); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DashboardCell); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DecimalPlaces); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TableOptions); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RenamableField); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Color); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Legend); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Axis); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Template); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TemplateValue); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TemplateQuery); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Server); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Layout); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Cell); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Query); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TimeShift); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Range); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AlertRule); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*User); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Role); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Mapping); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Organization); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Config); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AuthConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*OrganizationConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*LogViewerConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*LogViewerColumn); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ColumnEncoding); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_internal_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BuildInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_internal_proto_rawDesc, NumEnums: 0, NumMessages: 32, NumExtensions: 0, NumServices: 0, }, GoTypes: file_internal_proto_goTypes, DependencyIndexes: file_internal_proto_depIdxs, MessageInfos: file_internal_proto_msgTypes, }.Build() File_internal_proto = out.File file_internal_proto_rawDesc = nil file_internal_proto_goTypes = nil file_internal_proto_depIdxs = nil }