// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.1 // protoc v3.21.12 // source: entity.proto package entity import ( reflect "reflect" sync "sync" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" ) 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) ) // Status enumeration type WriteEntityResponse_Status int32 const ( WriteEntityResponse_ERROR WriteEntityResponse_Status = 0 WriteEntityResponse_CREATED WriteEntityResponse_Status = 1 WriteEntityResponse_UPDATED WriteEntityResponse_Status = 2 WriteEntityResponse_UNCHANGED WriteEntityResponse_Status = 3 ) // Enum value maps for WriteEntityResponse_Status. var ( WriteEntityResponse_Status_name = map[int32]string{ 0: "ERROR", 1: "CREATED", 2: "UPDATED", 3: "UNCHANGED", } WriteEntityResponse_Status_value = map[string]int32{ "ERROR": 0, "CREATED": 1, "UPDATED": 2, "UNCHANGED": 3, } ) func (x WriteEntityResponse_Status) Enum() *WriteEntityResponse_Status { p := new(WriteEntityResponse_Status) *p = x return p } func (x WriteEntityResponse_Status) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (WriteEntityResponse_Status) Descriptor() protoreflect.EnumDescriptor { return file_entity_proto_enumTypes[0].Descriptor() } func (WriteEntityResponse_Status) Type() protoreflect.EnumType { return &file_entity_proto_enumTypes[0] } func (x WriteEntityResponse_Status) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use WriteEntityResponse_Status.Descriptor instead. func (WriteEntityResponse_Status) EnumDescriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{10, 0} } // Status enumeration type EntityWatchResponse_Action int32 const ( EntityWatchResponse_UNKNOWN EntityWatchResponse_Action = 0 EntityWatchResponse_UPDATED EntityWatchResponse_Action = 1 EntityWatchResponse_DELETED EntityWatchResponse_Action = 2 ) // Enum value maps for EntityWatchResponse_Action. var ( EntityWatchResponse_Action_name = map[int32]string{ 0: "UNKNOWN", 1: "UPDATED", 2: "DELETED", } EntityWatchResponse_Action_value = map[string]int32{ "UNKNOWN": 0, "UPDATED": 1, "DELETED": 2, } ) func (x EntityWatchResponse_Action) Enum() *EntityWatchResponse_Action { p := new(EntityWatchResponse_Action) *p = x return p } func (x EntityWatchResponse_Action) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (EntityWatchResponse_Action) Descriptor() protoreflect.EnumDescriptor { return file_entity_proto_enumTypes[1].Descriptor() } func (EntityWatchResponse_Action) Type() protoreflect.EnumType { return &file_entity_proto_enumTypes[1] } func (x EntityWatchResponse_Action) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use EntityWatchResponse_Action.Descriptor instead. func (EntityWatchResponse_Action) EnumDescriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{19, 0} } type GRN struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // the tenant/org id TenantId int64 `protobuf:"varint,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` // Identify the entity kind. This kind will be used to apply a schema to the body and // will trigger additional indexing behavior. Kind string `protobuf:"bytes,3,opt,name=kind,proto3" json:"kind,omitempty"` // Unique ID // 40 characters or less, no slashes or other special characters UID string `protobuf:"bytes,4,opt,name=UID,proto3" json:"UID,omitempty"` } func (x *GRN) Reset() { *x = GRN{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *GRN) String() string { return protoimpl.X.MessageStringOf(x) } func (*GRN) ProtoMessage() {} func (x *GRN) ProtoReflect() protoreflect.Message { mi := &file_entity_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 GRN.ProtoReflect.Descriptor instead. func (*GRN) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{0} } func (x *GRN) GetTenantId() int64 { if x != nil { return x.TenantId } return 0 } func (x *GRN) GetKind() string { if x != nil { return x.Kind } return "" } func (x *GRN) GetUID() string { if x != nil { return x.UID } return "" } // The canonical entity/document data -- this represents the raw bytes and storage level metadata type Entity struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // The version will change when the entity is saved. It is not necessarily sortable Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` // Time in epoch milliseconds that the entity was created CreatedAt int64 `protobuf:"varint,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // Time in epoch milliseconds that the entity was updated UpdatedAt int64 `protobuf:"varint,4,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` // Who created the entity CreatedBy string `protobuf:"bytes,5,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"` // Who updated the entity UpdatedBy string `protobuf:"bytes,6,opt,name=updated_by,json=updatedBy,proto3" json:"updated_by,omitempty"` // The folder UID (not stored in the body) Folder string `protobuf:"bytes,7,opt,name=folder,proto3" json:"folder,omitempty"` // MD5 digest of the body ETag string `protobuf:"bytes,8,opt,name=ETag,proto3" json:"ETag,omitempty"` // Content Length Size int64 `protobuf:"varint,9,opt,name=size,proto3" json:"size,omitempty"` // Raw bytes of the storage entity. The kind will determine what is a valid payload Body []byte `protobuf:"bytes,10,opt,name=body,proto3" json:"body,omitempty"` // Entity summary as JSON SummaryJson []byte `protobuf:"bytes,11,opt,name=summary_json,json=summaryJson,proto3" json:"summary_json,omitempty"` // External location info Origin *EntityOriginInfo `protobuf:"bytes,12,opt,name=origin,proto3" json:"origin,omitempty"` } func (x *Entity) Reset() { *x = Entity{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Entity) String() string { return protoimpl.X.MessageStringOf(x) } func (*Entity) ProtoMessage() {} func (x *Entity) ProtoReflect() protoreflect.Message { mi := &file_entity_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 Entity.ProtoReflect.Descriptor instead. func (*Entity) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{1} } func (x *Entity) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *Entity) GetVersion() string { if x != nil { return x.Version } return "" } func (x *Entity) GetCreatedAt() int64 { if x != nil { return x.CreatedAt } return 0 } func (x *Entity) GetUpdatedAt() int64 { if x != nil { return x.UpdatedAt } return 0 } func (x *Entity) GetCreatedBy() string { if x != nil { return x.CreatedBy } return "" } func (x *Entity) GetUpdatedBy() string { if x != nil { return x.UpdatedBy } return "" } func (x *Entity) GetFolder() string { if x != nil { return x.Folder } return "" } func (x *Entity) GetETag() string { if x != nil { return x.ETag } return "" } func (x *Entity) GetSize() int64 { if x != nil { return x.Size } return 0 } func (x *Entity) GetBody() []byte { if x != nil { return x.Body } return nil } func (x *Entity) GetSummaryJson() []byte { if x != nil { return x.SummaryJson } return nil } func (x *Entity) GetOrigin() *EntityOriginInfo { if x != nil { return x.Origin } return nil } // This stores additional metadata for items entities that were synced from external systmes type EntityOriginInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // identify the external source (plugin, git instance, etc) Source string `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"` // Key in the upstream system (git hash, file path, etc) Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"` // Time in epoch milliseconds that the entity was last synced with an external system (provisioning/git) Time int64 `protobuf:"varint,3,opt,name=time,proto3" json:"time,omitempty"` } func (x *EntityOriginInfo) Reset() { *x = EntityOriginInfo{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntityOriginInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntityOriginInfo) ProtoMessage() {} func (x *EntityOriginInfo) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntityOriginInfo.ProtoReflect.Descriptor instead. func (*EntityOriginInfo) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{2} } func (x *EntityOriginInfo) GetSource() string { if x != nil { return x.Source } return "" } func (x *EntityOriginInfo) GetKey() string { if x != nil { return x.Key } return "" } func (x *EntityOriginInfo) GetTime() int64 { if x != nil { return x.Time } return 0 } // Report error while working with entitys // NOTE: real systems at scale will contain errors. type EntityErrorInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Match an error code registry? Code int64 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` // Simple error display Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` // Details encoded in JSON DetailsJson []byte `protobuf:"bytes,3,opt,name=details_json,json=detailsJson,proto3" json:"details_json,omitempty"` } func (x *EntityErrorInfo) Reset() { *x = EntityErrorInfo{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntityErrorInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntityErrorInfo) ProtoMessage() {} func (x *EntityErrorInfo) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntityErrorInfo.ProtoReflect.Descriptor instead. func (*EntityErrorInfo) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{3} } func (x *EntityErrorInfo) GetCode() int64 { if x != nil { return x.Code } return 0 } func (x *EntityErrorInfo) GetMessage() string { if x != nil { return x.Message } return "" } func (x *EntityErrorInfo) GetDetailsJson() []byte { if x != nil { return x.DetailsJson } return nil } // This is a subset of Entity that does not include body or sync info type EntityVersionInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // The version will change when the entity is saved. It is not necessarily sortable Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` // Time in epoch milliseconds that the entity was updated UpdatedAt int64 `protobuf:"varint,2,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` // Who updated the entity UpdatedBy string `protobuf:"bytes,3,opt,name=updated_by,json=updatedBy,proto3" json:"updated_by,omitempty"` // Content Length Size int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"` // MD5 digest of the body ETag string `protobuf:"bytes,5,opt,name=ETag,proto3" json:"ETag,omitempty"` // optional "save" or "commit" message // // NOTE: currently managed by the dashboard_version table, and will be returned from a "history" command Comment string `protobuf:"bytes,6,opt,name=comment,proto3" json:"comment,omitempty"` } func (x *EntityVersionInfo) Reset() { *x = EntityVersionInfo{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntityVersionInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntityVersionInfo) ProtoMessage() {} func (x *EntityVersionInfo) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntityVersionInfo.ProtoReflect.Descriptor instead. func (*EntityVersionInfo) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{4} } func (x *EntityVersionInfo) GetVersion() string { if x != nil { return x.Version } return "" } func (x *EntityVersionInfo) GetUpdatedAt() int64 { if x != nil { return x.UpdatedAt } return 0 } func (x *EntityVersionInfo) GetUpdatedBy() string { if x != nil { return x.UpdatedBy } return "" } func (x *EntityVersionInfo) GetSize() int64 { if x != nil { return x.Size } return 0 } func (x *EntityVersionInfo) GetETag() string { if x != nil { return x.ETag } return "" } func (x *EntityVersionInfo) GetComment() string { if x != nil { return x.Comment } return "" } type ReadEntityRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // Fetch an explicit version Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` // Include the full body bytes WithBody bool `protobuf:"varint,3,opt,name=with_body,json=withBody,proto3" json:"with_body,omitempty"` // Include derived summary metadata WithSummary bool `protobuf:"varint,4,opt,name=with_summary,json=withSummary,proto3" json:"with_summary,omitempty"` } func (x *ReadEntityRequest) Reset() { *x = ReadEntityRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ReadEntityRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ReadEntityRequest) ProtoMessage() {} func (x *ReadEntityRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 ReadEntityRequest.ProtoReflect.Descriptor instead. func (*ReadEntityRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{5} } func (x *ReadEntityRequest) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *ReadEntityRequest) GetVersion() string { if x != nil { return x.Version } return "" } func (x *ReadEntityRequest) GetWithBody() bool { if x != nil { return x.WithBody } return false } func (x *ReadEntityRequest) GetWithSummary() bool { if x != nil { return x.WithSummary } return false } type BatchReadEntityRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Batch []*ReadEntityRequest `protobuf:"bytes,1,rep,name=batch,proto3" json:"batch,omitempty"` } func (x *BatchReadEntityRequest) Reset() { *x = BatchReadEntityRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BatchReadEntityRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*BatchReadEntityRequest) ProtoMessage() {} func (x *BatchReadEntityRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 BatchReadEntityRequest.ProtoReflect.Descriptor instead. func (*BatchReadEntityRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{6} } func (x *BatchReadEntityRequest) GetBatch() []*ReadEntityRequest { if x != nil { return x.Batch } return nil } type BatchReadEntityResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Results []*Entity `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` } func (x *BatchReadEntityResponse) Reset() { *x = BatchReadEntityResponse{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *BatchReadEntityResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*BatchReadEntityResponse) ProtoMessage() {} func (x *BatchReadEntityResponse) ProtoReflect() protoreflect.Message { mi := &file_entity_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 BatchReadEntityResponse.ProtoReflect.Descriptor instead. func (*BatchReadEntityResponse) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{7} } func (x *BatchReadEntityResponse) GetResults() []*Entity { if x != nil { return x.Results } return nil } type WriteEntityRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // Where to save the entity (empty will leave it unchanged) Folder string `protobuf:"bytes,2,opt,name=folder,proto3" json:"folder,omitempty"` // The raw entity body Body []byte `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"` // Message that can be seen when exploring entity history Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` // Used for optimistic locking. If missing, the previous version will be replaced regardless PreviousVersion string `protobuf:"bytes,5,opt,name=previous_version,json=previousVersion,proto3" json:"previous_version,omitempty"` } func (x *WriteEntityRequest) Reset() { *x = WriteEntityRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WriteEntityRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*WriteEntityRequest) ProtoMessage() {} func (x *WriteEntityRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 WriteEntityRequest.ProtoReflect.Descriptor instead. func (*WriteEntityRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{8} } func (x *WriteEntityRequest) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *WriteEntityRequest) GetFolder() string { if x != nil { return x.Folder } return "" } func (x *WriteEntityRequest) GetBody() []byte { if x != nil { return x.Body } return nil } func (x *WriteEntityRequest) GetComment() string { if x != nil { return x.Comment } return "" } func (x *WriteEntityRequest) GetPreviousVersion() string { if x != nil { return x.PreviousVersion } return "" } // This operation is useful when syncing a resource from external sources // that have more accurate metadata information (git, or an archive). // This process can bypass the forced checks that type AdminWriteEntityRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // Where to save the entity (empty will leave it unchanged) Folder string `protobuf:"bytes,2,opt,name=folder,proto3" json:"folder,omitempty"` // The raw entity body Body []byte `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"` // Message that can be seen when exploring entity history Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` // Time in epoch milliseconds that the entity was created // Optional, if 0 it will use the current time CreatedAt int64 `protobuf:"varint,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // Time in epoch milliseconds that the entity was updated // Optional, if empty it will use the current user UpdatedAt int64 `protobuf:"varint,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` // Who created the entity // Optional, if 0 it will use the current time CreatedBy string `protobuf:"bytes,7,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"` // Who updated the entity // Optional, if empty it will use the current user UpdatedBy string `protobuf:"bytes,8,opt,name=updated_by,json=updatedBy,proto3" json:"updated_by,omitempty"` // An explicit version identifier // Optional, if set, this will overwrite/define an explicit version Version string `protobuf:"bytes,9,opt,name=version,proto3" json:"version,omitempty"` // Used for optimistic locking. If missing, the previous version will be replaced regardless // This may not be used along with an explicit version in the request PreviousVersion string `protobuf:"bytes,10,opt,name=previous_version,json=previousVersion,proto3" json:"previous_version,omitempty"` // Request that all previous versions are removed from the history // This will make sense for systems that manage history explicitly externallay ClearHistory bool `protobuf:"varint,11,opt,name=clear_history,json=clearHistory,proto3" json:"clear_history,omitempty"` // Optionally define where the entity came from Origin *EntityOriginInfo `protobuf:"bytes,12,opt,name=origin,proto3" json:"origin,omitempty"` } func (x *AdminWriteEntityRequest) Reset() { *x = AdminWriteEntityRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AdminWriteEntityRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AdminWriteEntityRequest) ProtoMessage() {} func (x *AdminWriteEntityRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 AdminWriteEntityRequest.ProtoReflect.Descriptor instead. func (*AdminWriteEntityRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{9} } func (x *AdminWriteEntityRequest) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *AdminWriteEntityRequest) GetFolder() string { if x != nil { return x.Folder } return "" } func (x *AdminWriteEntityRequest) GetBody() []byte { if x != nil { return x.Body } return nil } func (x *AdminWriteEntityRequest) GetComment() string { if x != nil { return x.Comment } return "" } func (x *AdminWriteEntityRequest) GetCreatedAt() int64 { if x != nil { return x.CreatedAt } return 0 } func (x *AdminWriteEntityRequest) GetUpdatedAt() int64 { if x != nil { return x.UpdatedAt } return 0 } func (x *AdminWriteEntityRequest) GetCreatedBy() string { if x != nil { return x.CreatedBy } return "" } func (x *AdminWriteEntityRequest) GetUpdatedBy() string { if x != nil { return x.UpdatedBy } return "" } func (x *AdminWriteEntityRequest) GetVersion() string { if x != nil { return x.Version } return "" } func (x *AdminWriteEntityRequest) GetPreviousVersion() string { if x != nil { return x.PreviousVersion } return "" } func (x *AdminWriteEntityRequest) GetClearHistory() bool { if x != nil { return x.ClearHistory } return false } func (x *AdminWriteEntityRequest) GetOrigin() *EntityOriginInfo { if x != nil { return x.Origin } return nil } type WriteEntityResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Error info -- if exists, the save did not happen Error *EntityErrorInfo `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` // Entity identifier GRN *GRN `protobuf:"bytes,2,opt,name=GRN,proto3" json:"GRN,omitempty"` // Entity details with the body removed Entity *EntityVersionInfo `protobuf:"bytes,3,opt,name=entity,proto3" json:"entity,omitempty"` // Entity summary as JSON SummaryJson []byte `protobuf:"bytes,4,opt,name=summary_json,json=summaryJson,proto3" json:"summary_json,omitempty"` // Status code Status WriteEntityResponse_Status `protobuf:"varint,5,opt,name=status,proto3,enum=entity.WriteEntityResponse_Status" json:"status,omitempty"` } func (x *WriteEntityResponse) Reset() { *x = WriteEntityResponse{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *WriteEntityResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*WriteEntityResponse) ProtoMessage() {} func (x *WriteEntityResponse) ProtoReflect() protoreflect.Message { mi := &file_entity_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 WriteEntityResponse.ProtoReflect.Descriptor instead. func (*WriteEntityResponse) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{10} } func (x *WriteEntityResponse) GetError() *EntityErrorInfo { if x != nil { return x.Error } return nil } func (x *WriteEntityResponse) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *WriteEntityResponse) GetEntity() *EntityVersionInfo { if x != nil { return x.Entity } return nil } func (x *WriteEntityResponse) GetSummaryJson() []byte { if x != nil { return x.SummaryJson } return nil } func (x *WriteEntityResponse) GetStatus() WriteEntityResponse_Status { if x != nil { return x.Status } return WriteEntityResponse_ERROR } type DeleteEntityRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // Used for optimistic locking. If missing, the previous version will be replaced regardless PreviousVersion string `protobuf:"bytes,3,opt,name=previous_version,json=previousVersion,proto3" json:"previous_version,omitempty"` } func (x *DeleteEntityRequest) Reset() { *x = DeleteEntityRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DeleteEntityRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*DeleteEntityRequest) ProtoMessage() {} func (x *DeleteEntityRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 DeleteEntityRequest.ProtoReflect.Descriptor instead. func (*DeleteEntityRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{11} } func (x *DeleteEntityRequest) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *DeleteEntityRequest) GetPreviousVersion() string { if x != nil { return x.PreviousVersion } return "" } type DeleteEntityResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields OK bool `protobuf:"varint,1,opt,name=OK,proto3" json:"OK,omitempty"` } func (x *DeleteEntityResponse) Reset() { *x = DeleteEntityResponse{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *DeleteEntityResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*DeleteEntityResponse) ProtoMessage() {} func (x *DeleteEntityResponse) ProtoReflect() protoreflect.Message { mi := &file_entity_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 DeleteEntityResponse.ProtoReflect.Descriptor instead. func (*DeleteEntityResponse) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{12} } func (x *DeleteEntityResponse) GetOK() bool { if x != nil { return x.OK } return false } type EntityHistoryRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // Maximum number of items to return Limit int64 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"` // Starting from the requested page NextPageToken string `protobuf:"bytes,5,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` } func (x *EntityHistoryRequest) Reset() { *x = EntityHistoryRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntityHistoryRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntityHistoryRequest) ProtoMessage() {} func (x *EntityHistoryRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntityHistoryRequest.ProtoReflect.Descriptor instead. func (*EntityHistoryRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{13} } func (x *EntityHistoryRequest) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *EntityHistoryRequest) GetLimit() int64 { if x != nil { return x.Limit } return 0 } func (x *EntityHistoryRequest) GetNextPageToken() string { if x != nil { return x.NextPageToken } return "" } type EntityHistoryResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // Entity metadata without the raw bytes Versions []*EntityVersionInfo `protobuf:"bytes,2,rep,name=versions,proto3" json:"versions,omitempty"` // More results exist... pass this in the next request NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` } func (x *EntityHistoryResponse) Reset() { *x = EntityHistoryResponse{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntityHistoryResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntityHistoryResponse) ProtoMessage() {} func (x *EntityHistoryResponse) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntityHistoryResponse.ProtoReflect.Descriptor instead. func (*EntityHistoryResponse) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{14} } func (x *EntityHistoryResponse) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *EntityHistoryResponse) GetVersions() []*EntityVersionInfo { if x != nil { return x.Versions } return nil } func (x *EntityHistoryResponse) GetNextPageToken() string { if x != nil { return x.NextPageToken } return "" } type EntitySearchRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Starting from the requested page (other query parameters must match!) NextPageToken string `protobuf:"bytes,1,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` // Maximum number of items to return Limit int64 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"` // Free text query string -- mileage may vary :) Query string `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"` // limit to a specific kind (empty is all) Kind []string `protobuf:"bytes,4,rep,name=kind,proto3" json:"kind,omitempty"` // Limit results to items in a specific folder Folder string `protobuf:"bytes,5,opt,name=folder,proto3" json:"folder,omitempty"` // Must match all labels Labels map[string]string `protobuf:"bytes,6,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Sorting instructions `field ASC/DESC` Sort []string `protobuf:"bytes,7,rep,name=sort,proto3" json:"sort,omitempty"` // Return the full body in each payload WithBody bool `protobuf:"varint,8,opt,name=with_body,json=withBody,proto3" json:"with_body,omitempty"` // Return the full body in each payload WithLabels bool `protobuf:"varint,9,opt,name=with_labels,json=withLabels,proto3" json:"with_labels,omitempty"` // Return the full body in each payload WithFields bool `protobuf:"varint,10,opt,name=with_fields,json=withFields,proto3" json:"with_fields,omitempty"` } func (x *EntitySearchRequest) Reset() { *x = EntitySearchRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntitySearchRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntitySearchRequest) ProtoMessage() {} func (x *EntitySearchRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntitySearchRequest.ProtoReflect.Descriptor instead. func (*EntitySearchRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{15} } func (x *EntitySearchRequest) GetNextPageToken() string { if x != nil { return x.NextPageToken } return "" } func (x *EntitySearchRequest) GetLimit() int64 { if x != nil { return x.Limit } return 0 } func (x *EntitySearchRequest) GetQuery() string { if x != nil { return x.Query } return "" } func (x *EntitySearchRequest) GetKind() []string { if x != nil { return x.Kind } return nil } func (x *EntitySearchRequest) GetFolder() string { if x != nil { return x.Folder } return "" } func (x *EntitySearchRequest) GetLabels() map[string]string { if x != nil { return x.Labels } return nil } func (x *EntitySearchRequest) GetSort() []string { if x != nil { return x.Sort } return nil } func (x *EntitySearchRequest) GetWithBody() bool { if x != nil { return x.WithBody } return false } func (x *EntitySearchRequest) GetWithLabels() bool { if x != nil { return x.WithLabels } return false } func (x *EntitySearchRequest) GetWithFields() bool { if x != nil { return x.WithFields } return false } // Search result metadata for each entity type EntitySearchResult struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Entity identifier GRN *GRN `protobuf:"bytes,1,opt,name=GRN,proto3" json:"GRN,omitempty"` // The current version of this entity Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` // Content Length Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"` // Time in epoch milliseconds that the entity was updated UpdatedAt int64 `protobuf:"varint,4,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` // Who updated the entity UpdatedBy string `protobuf:"bytes,5,opt,name=updated_by,json=updatedBy,proto3" json:"updated_by,omitempty"` // Optionally include the full entity body Body []byte `protobuf:"bytes,6,opt,name=body,proto3" json:"body,omitempty"` // Always included Name string `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"` // Always included Description string `protobuf:"bytes,8,opt,name=description,proto3" json:"description,omitempty"` // The structured labels Labels map[string]string `protobuf:"bytes,9,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Folder UID Folder string `protobuf:"bytes,10,opt,name=folder,proto3" json:"folder,omitempty"` // Slugified name Slug string `protobuf:"bytes,11,opt,name=slug,proto3" json:"slug,omitempty"` // Optionally include extracted JSON FieldsJson []byte `protobuf:"bytes,12,opt,name=fields_json,json=fieldsJson,proto3" json:"fields_json,omitempty"` // EntityErrorInfo in json ErrorJson []byte `protobuf:"bytes,13,opt,name=error_json,json=errorJson,proto3" json:"error_json,omitempty"` } func (x *EntitySearchResult) Reset() { *x = EntitySearchResult{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntitySearchResult) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntitySearchResult) ProtoMessage() {} func (x *EntitySearchResult) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntitySearchResult.ProtoReflect.Descriptor instead. func (*EntitySearchResult) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{16} } func (x *EntitySearchResult) GetGRN() *GRN { if x != nil { return x.GRN } return nil } func (x *EntitySearchResult) GetVersion() string { if x != nil { return x.Version } return "" } func (x *EntitySearchResult) GetSize() int64 { if x != nil { return x.Size } return 0 } func (x *EntitySearchResult) GetUpdatedAt() int64 { if x != nil { return x.UpdatedAt } return 0 } func (x *EntitySearchResult) GetUpdatedBy() string { if x != nil { return x.UpdatedBy } return "" } func (x *EntitySearchResult) GetBody() []byte { if x != nil { return x.Body } return nil } func (x *EntitySearchResult) GetName() string { if x != nil { return x.Name } return "" } func (x *EntitySearchResult) GetDescription() string { if x != nil { return x.Description } return "" } func (x *EntitySearchResult) GetLabels() map[string]string { if x != nil { return x.Labels } return nil } func (x *EntitySearchResult) GetFolder() string { if x != nil { return x.Folder } return "" } func (x *EntitySearchResult) GetSlug() string { if x != nil { return x.Slug } return "" } func (x *EntitySearchResult) GetFieldsJson() []byte { if x != nil { return x.FieldsJson } return nil } func (x *EntitySearchResult) GetErrorJson() []byte { if x != nil { return x.ErrorJson } return nil } type EntitySearchResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Results []*EntitySearchResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` // More results exist... pass this in the next request NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` } func (x *EntitySearchResponse) Reset() { *x = EntitySearchResponse{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntitySearchResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntitySearchResponse) ProtoMessage() {} func (x *EntitySearchResponse) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntitySearchResponse.ProtoReflect.Descriptor instead. func (*EntitySearchResponse) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{17} } func (x *EntitySearchResponse) GetResults() []*EntitySearchResult { if x != nil { return x.Results } return nil } func (x *EntitySearchResponse) GetNextPageToken() string { if x != nil { return x.NextPageToken } return "" } type EntityWatchRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Timestamp of last changes. Empty will default to Since int64 `protobuf:"varint,1,opt,name=since,proto3" json:"since,omitempty"` // Watch sppecific entities GRN []*GRN `protobuf:"bytes,2,rep,name=GRN,proto3" json:"GRN,omitempty"` // limit to a specific kind (empty is all) Kind []string `protobuf:"bytes,3,rep,name=kind,proto3" json:"kind,omitempty"` // Limit results to items in a specific folder Folder string `protobuf:"bytes,4,opt,name=folder,proto3" json:"folder,omitempty"` // Must match all labels Labels map[string]string `protobuf:"bytes,5,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Return the full body in each payload WithBody bool `protobuf:"varint,6,opt,name=with_body,json=withBody,proto3" json:"with_body,omitempty"` // Return the full body in each payload WithLabels bool `protobuf:"varint,7,opt,name=with_labels,json=withLabels,proto3" json:"with_labels,omitempty"` // Return the full body in each payload WithFields bool `protobuf:"varint,8,opt,name=with_fields,json=withFields,proto3" json:"with_fields,omitempty"` } func (x *EntityWatchRequest) Reset() { *x = EntityWatchRequest{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntityWatchRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntityWatchRequest) ProtoMessage() {} func (x *EntityWatchRequest) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntityWatchRequest.ProtoReflect.Descriptor instead. func (*EntityWatchRequest) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{18} } func (x *EntityWatchRequest) GetSince() int64 { if x != nil { return x.Since } return 0 } func (x *EntityWatchRequest) GetGRN() []*GRN { if x != nil { return x.GRN } return nil } func (x *EntityWatchRequest) GetKind() []string { if x != nil { return x.Kind } return nil } func (x *EntityWatchRequest) GetFolder() string { if x != nil { return x.Folder } return "" } func (x *EntityWatchRequest) GetLabels() map[string]string { if x != nil { return x.Labels } return nil } func (x *EntityWatchRequest) GetWithBody() bool { if x != nil { return x.WithBody } return false } func (x *EntityWatchRequest) GetWithLabels() bool { if x != nil { return x.WithLabels } return false } func (x *EntityWatchRequest) GetWithFields() bool { if x != nil { return x.WithFields } return false } type EntityWatchResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Timestamp the event was sent Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // List of entities with the same action Entity []*Entity `protobuf:"bytes,2,rep,name=entity,proto3" json:"entity,omitempty"` // Action code Action EntityWatchResponse_Action `protobuf:"varint,3,opt,name=action,proto3,enum=entity.EntityWatchResponse_Action" json:"action,omitempty"` } func (x *EntityWatchResponse) Reset() { *x = EntityWatchResponse{} if protoimpl.UnsafeEnabled { mi := &file_entity_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EntityWatchResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*EntityWatchResponse) ProtoMessage() {} func (x *EntityWatchResponse) ProtoReflect() protoreflect.Message { mi := &file_entity_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 EntityWatchResponse.ProtoReflect.Descriptor instead. func (*EntityWatchResponse) Descriptor() ([]byte, []int) { return file_entity_proto_rawDescGZIP(), []int{19} } func (x *EntityWatchResponse) GetTimestamp() int64 { if x != nil { return x.Timestamp } return 0 } func (x *EntityWatchResponse) GetEntity() []*Entity { if x != nil { return x.Entity } return nil } func (x *EntityWatchResponse) GetAction() EntityWatchResponse_Action { if x != nil { return x.Action } return EntityWatchResponse_UNKNOWN } var File_entity_proto protoreflect.FileDescriptor var file_entity_proto_rawDesc = []byte{ 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x48, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x55, 0x49, 0x44, 0x22, 0xe6, 0x02, 0x0a, 0x06, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x45, 0x54, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x45, 0x54, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x4a, 0x73, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x22, 0x50, 0x0a, 0x10, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x62, 0x0a, 0x0f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0xad, 0x01, 0x0a, 0x11, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x45, 0x54, 0x61, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x45, 0x54, 0x61, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x8c, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x77, 0x69, 0x74, 0x68, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x49, 0x0a, 0x16, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x22, 0x43, 0x0a, 0x17, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0xa4, 0x01, 0x0a, 0x12, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x96, 0x03, 0x0a, 0x17, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x30, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x22, 0xb3, 0x02, 0x0a, 0x13, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x31, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x4a, 0x73, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x3c, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x10, 0x03, 0x22, 0x5f, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x26, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x4f, 0x4b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x4f, 0x4b, 0x22, 0x73, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x95, 0x01, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x35, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x84, 0x03, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x3f, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x77, 0x69, 0x74, 0x68, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd0, 0x03, 0x0a, 0x12, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x6c, 0x75, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x4a, 0x73, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4a, 0x73, 0x6f, 0x6e, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x74, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xcf, 0x02, 0x0a, 0x12, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x03, 0x47, 0x52, 0x4e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x47, 0x52, 0x4e, 0x52, 0x03, 0x47, 0x52, 0x4e, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x77, 0x69, 0x74, 0x68, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x77, 0x69, 0x74, 0x68, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc8, 0x01, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x3a, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2f, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x02, 0x32, 0xb2, 0x04, 0x0a, 0x0b, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x52, 0x65, 0x61, 0x64, 0x12, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x4c, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 0x12, 0x1e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x1a, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x07, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x1b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x05, 0x57, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1a, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x57, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x4a, 0x0a, 0x0a, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x5e, 0x0a, 0x10, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x4a, 0x0a, 0x0a, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0b, 0x5a, 0x09, 0x2e, 0x2f, 0x3b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_entity_proto_rawDescOnce sync.Once file_entity_proto_rawDescData = file_entity_proto_rawDesc ) func file_entity_proto_rawDescGZIP() []byte { file_entity_proto_rawDescOnce.Do(func() { file_entity_proto_rawDescData = protoimpl.X.CompressGZIP(file_entity_proto_rawDescData) }) return file_entity_proto_rawDescData } var file_entity_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_entity_proto_msgTypes = make([]protoimpl.MessageInfo, 23) var file_entity_proto_goTypes = []interface{}{ (WriteEntityResponse_Status)(0), // 0: entity.WriteEntityResponse.Status (EntityWatchResponse_Action)(0), // 1: entity.EntityWatchResponse.Action (*GRN)(nil), // 2: entity.GRN (*Entity)(nil), // 3: entity.Entity (*EntityOriginInfo)(nil), // 4: entity.EntityOriginInfo (*EntityErrorInfo)(nil), // 5: entity.EntityErrorInfo (*EntityVersionInfo)(nil), // 6: entity.EntityVersionInfo (*ReadEntityRequest)(nil), // 7: entity.ReadEntityRequest (*BatchReadEntityRequest)(nil), // 8: entity.BatchReadEntityRequest (*BatchReadEntityResponse)(nil), // 9: entity.BatchReadEntityResponse (*WriteEntityRequest)(nil), // 10: entity.WriteEntityRequest (*AdminWriteEntityRequest)(nil), // 11: entity.AdminWriteEntityRequest (*WriteEntityResponse)(nil), // 12: entity.WriteEntityResponse (*DeleteEntityRequest)(nil), // 13: entity.DeleteEntityRequest (*DeleteEntityResponse)(nil), // 14: entity.DeleteEntityResponse (*EntityHistoryRequest)(nil), // 15: entity.EntityHistoryRequest (*EntityHistoryResponse)(nil), // 16: entity.EntityHistoryResponse (*EntitySearchRequest)(nil), // 17: entity.EntitySearchRequest (*EntitySearchResult)(nil), // 18: entity.EntitySearchResult (*EntitySearchResponse)(nil), // 19: entity.EntitySearchResponse (*EntityWatchRequest)(nil), // 20: entity.EntityWatchRequest (*EntityWatchResponse)(nil), // 21: entity.EntityWatchResponse nil, // 22: entity.EntitySearchRequest.LabelsEntry nil, // 23: entity.EntitySearchResult.LabelsEntry nil, // 24: entity.EntityWatchRequest.LabelsEntry } var file_entity_proto_depIdxs = []int32{ 2, // 0: entity.Entity.GRN:type_name -> entity.GRN 4, // 1: entity.Entity.origin:type_name -> entity.EntityOriginInfo 2, // 2: entity.ReadEntityRequest.GRN:type_name -> entity.GRN 7, // 3: entity.BatchReadEntityRequest.batch:type_name -> entity.ReadEntityRequest 3, // 4: entity.BatchReadEntityResponse.results:type_name -> entity.Entity 2, // 5: entity.WriteEntityRequest.GRN:type_name -> entity.GRN 2, // 6: entity.AdminWriteEntityRequest.GRN:type_name -> entity.GRN 4, // 7: entity.AdminWriteEntityRequest.origin:type_name -> entity.EntityOriginInfo 5, // 8: entity.WriteEntityResponse.error:type_name -> entity.EntityErrorInfo 2, // 9: entity.WriteEntityResponse.GRN:type_name -> entity.GRN 6, // 10: entity.WriteEntityResponse.entity:type_name -> entity.EntityVersionInfo 0, // 11: entity.WriteEntityResponse.status:type_name -> entity.WriteEntityResponse.Status 2, // 12: entity.DeleteEntityRequest.GRN:type_name -> entity.GRN 2, // 13: entity.EntityHistoryRequest.GRN:type_name -> entity.GRN 2, // 14: entity.EntityHistoryResponse.GRN:type_name -> entity.GRN 6, // 15: entity.EntityHistoryResponse.versions:type_name -> entity.EntityVersionInfo 22, // 16: entity.EntitySearchRequest.labels:type_name -> entity.EntitySearchRequest.LabelsEntry 2, // 17: entity.EntitySearchResult.GRN:type_name -> entity.GRN 23, // 18: entity.EntitySearchResult.labels:type_name -> entity.EntitySearchResult.LabelsEntry 18, // 19: entity.EntitySearchResponse.results:type_name -> entity.EntitySearchResult 2, // 20: entity.EntityWatchRequest.GRN:type_name -> entity.GRN 24, // 21: entity.EntityWatchRequest.labels:type_name -> entity.EntityWatchRequest.LabelsEntry 3, // 22: entity.EntityWatchResponse.entity:type_name -> entity.Entity 1, // 23: entity.EntityWatchResponse.action:type_name -> entity.EntityWatchResponse.Action 7, // 24: entity.EntityStore.Read:input_type -> entity.ReadEntityRequest 8, // 25: entity.EntityStore.BatchRead:input_type -> entity.BatchReadEntityRequest 10, // 26: entity.EntityStore.Write:input_type -> entity.WriteEntityRequest 13, // 27: entity.EntityStore.Delete:input_type -> entity.DeleteEntityRequest 15, // 28: entity.EntityStore.History:input_type -> entity.EntityHistoryRequest 17, // 29: entity.EntityStore.Search:input_type -> entity.EntitySearchRequest 20, // 30: entity.EntityStore.Watch:input_type -> entity.EntityWatchRequest 11, // 31: entity.EntityStore.AdminWrite:input_type -> entity.AdminWriteEntityRequest 11, // 32: entity.EntityStoreAdmin.AdminWrite:input_type -> entity.AdminWriteEntityRequest 3, // 33: entity.EntityStore.Read:output_type -> entity.Entity 9, // 34: entity.EntityStore.BatchRead:output_type -> entity.BatchReadEntityResponse 12, // 35: entity.EntityStore.Write:output_type -> entity.WriteEntityResponse 14, // 36: entity.EntityStore.Delete:output_type -> entity.DeleteEntityResponse 16, // 37: entity.EntityStore.History:output_type -> entity.EntityHistoryResponse 19, // 38: entity.EntityStore.Search:output_type -> entity.EntitySearchResponse 21, // 39: entity.EntityStore.Watch:output_type -> entity.EntityWatchResponse 12, // 40: entity.EntityStore.AdminWrite:output_type -> entity.WriteEntityResponse 12, // 41: entity.EntityStoreAdmin.AdminWrite:output_type -> entity.WriteEntityResponse 33, // [33:42] is the sub-list for method output_type 24, // [24:33] 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_entity_proto_init() } func file_entity_proto_init() { if File_entity_proto != nil { return } if !protoimpl.UnsafeEnabled { file_entity_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GRN); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Entity); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntityOriginInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntityErrorInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntityVersionInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReadEntityRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BatchReadEntityRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BatchReadEntityResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WriteEntityRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AdminWriteEntityRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*WriteEntityResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteEntityRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteEntityResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntityHistoryRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntityHistoryResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntitySearchRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntitySearchResult); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntitySearchResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntityWatchRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_entity_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EntityWatchResponse); 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_entity_proto_rawDesc, NumEnums: 2, NumMessages: 23, NumExtensions: 0, NumServices: 2, }, GoTypes: file_entity_proto_goTypes, DependencyIndexes: file_entity_proto_depIdxs, EnumInfos: file_entity_proto_enumTypes, MessageInfos: file_entity_proto_msgTypes, }.Build() File_entity_proto = out.File file_entity_proto_rawDesc = nil file_entity_proto_goTypes = nil file_entity_proto_depIdxs = nil }