Skip to content
Snippets Groups Projects
Commit 277fe0d1 authored by Valera Shaitorov's avatar Valera Shaitorov :alien:
Browse files

Реализована возможность установки значений системных полей при распубликации,...

Реализована возможность установки значений системных полей при распубликации, удалении и восстановлении
parent a55bacda
Branches
Tags
No related merge requests found
Showing
with 920 additions and 818 deletions
Subproject commit 05599182af253b283211ba757e2a951085646ed6
Subproject commit e0c174cd26694f42fbb65eb4d2c86fdcd1fcbbf0
......@@ -69,19 +69,19 @@ func (m cachingMiddleware) Update(ctx context.Context, item *service.Item, optio
return err
}
func (m cachingMiddleware) Delete(ctx context.Context, spaceId, envId, collectionId, itemId string, options ...*service.DeleteOptions) (err error) {
func (m cachingMiddleware) Delete(ctx context.Context, del *service.Item, options ...*service.DeleteOptions) (err error) {
err = m.Items.Delete(ctx, spaceId, envId, collectionId, itemId, options...)
err = m.Items.Delete(ctx, del, options...)
if err == nil {
env, err := m.envs.Get(ctx, spaceId, envId)
env, err := m.envs.Get(ctx, del.SpaceID, del.EnvID)
if err != nil {
return err
}
m.cache.Remove(makeKey(spaceId, env.ID, collectionId, itemId))
m.cachePublished.Remove(makeKey(spaceId, env.ID, collectionId, itemId))
m.cache.Remove(makeKey(del.SpaceID, env.ID, del.CollectionID, del.ID))
m.cachePublished.Remove(makeKey(del.SpaceID, env.ID, del.CollectionID, del.ID))
for _, al := range env.Aliases {
m.cache.Remove(makeKey(spaceId, al, collectionId, itemId))
m.cachePublished.Remove(makeKey(spaceId, al, collectionId, itemId))
m.cache.Remove(makeKey(del.SpaceID, al, del.CollectionID, del.ID))
m.cachePublished.Remove(makeKey(del.SpaceID, al, del.CollectionID, del.ID))
}
}
......
......@@ -289,10 +289,10 @@ func TestItemsCache(t *testing.T) {
require.NoError(t, err)
assert.Same(t, v2, v3, "Ожидается получение объекта из кеша по alias окружения.")
itms.On("Delete", mock.Anything, spaceID, envID, colID, itemID).Return(nil).Once()
itms.On("Delete", mock.Anything, mock.Anything).Return(nil).Once()
env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
err = svc.Delete(ctx, spaceID, envID, colID, itemID)
err = svc.Delete(ctx, &items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID})
require.NoError(t, err)
itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(nil, errNotFound).Once()
......@@ -543,10 +543,10 @@ func TestItemsCache(t *testing.T) {
require.NoError(t, err)
assert.Same(t, v2, v3, "Ожидается получение объекта из кеша по о alias окружения.")
itms.On("Delete", mock.Anything, spaceID, envID, colID, itemID).Return(nil).Once()
itms.On("Delete", mock.Anything, mock.Anything).Return(nil).Once()
env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
err = svc.Delete(ctx, spaceID, envID, colID, itemID)
err = svc.Delete(ctx, &items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID})
require.NoError(t, err)
itms.On("GetPublished", mock.Anything, spaceID, envID, colID, itemID, mock.Anything).Return(nil, errNotFound).Once()
......
......@@ -276,12 +276,12 @@ func (m *encodeDecodeMiddleware) Unarchive(ctx context.Context, item *items.Item
return m.next.Unarchive(ctx, item, opts...)
}
func (m *encodeDecodeMiddleware) Delete(ctx context.Context, spaceId, envId, collectionId, itemId string, options ...*items.DeleteOptions) (err error) {
return m.next.Delete(ctx, spaceId, envId, collectionId, itemId, options...)
func (m *encodeDecodeMiddleware) Delete(ctx context.Context, item *items.Item, options ...*items.DeleteOptions) (err error) {
return m.next.Delete(ctx, item, options...)
}
func (m *encodeDecodeMiddleware) Undelete(ctx context.Context, spaceId, envId, collectionId, itemId string, options ...*items.UndeleteOptions) (err error) {
return m.next.Undelete(ctx, spaceId, envId, collectionId, itemId, options...)
func (m *encodeDecodeMiddleware) Undelete(ctx context.Context, item *items.Item, options ...*items.UndeleteOptions) (err error) {
return m.next.Undelete(ctx, item, options...)
}
func (m *encodeDecodeMiddleware) Aggregate(ctx context.Context, spaceId, envId, collectionId string, filter *items.Filter, options ...*items.AggregateOptions) (result map[string]interface{}, err error) {
......
package middleware
// Code generated by gowrap. DO NOT EDIT.
// template: ../../../assets/templates/middleware/error_log
// gowrap: http://github.com/hexdigest/gowrap
package middleware
//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/items -i Items -t ../../../assets/templates/middleware/error_log -o error_logging_middleware.go -l ""
import (
......@@ -70,14 +70,14 @@ func (m *errorLoggingMiddleware) Create(ctx context.Context, item *items.Item, o
return m.next.Create(ctx, item, opts...)
}
func (m *errorLoggingMiddleware) Delete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.DeleteOptions) (err error) {
func (m *errorLoggingMiddleware) Delete(ctx context.Context, item *items.Item, options ...*items.DeleteOptions) (err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.Delete(ctx, spaceId, envId, collectionId, itemId, options...)
return m.next.Delete(ctx, item, options...)
}
func (m *errorLoggingMiddleware) Find(ctx context.Context, spaceId string, envId string, collectionId string, filter *items.Filter, options ...*items.FindOptions) (items []*items.Item, total int, err error) {
......@@ -180,14 +180,14 @@ func (m *errorLoggingMiddleware) Unarchive(ctx context.Context, item *items.Item
return m.next.Unarchive(ctx, item, options...)
}
func (m *errorLoggingMiddleware) Undelete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.UndeleteOptions) (err error) {
func (m *errorLoggingMiddleware) Undelete(ctx context.Context, item *items.Item, options ...*items.UndeleteOptions) (err error) {
logger := m.logger
defer func() {
if err != nil {
logger.Warn("response error", zap.Error(err))
}
}()
return m.next.Undelete(ctx, spaceId, envId, collectionId, itemId, options...)
return m.next.Undelete(ctx, item, options...)
}
func (m *errorLoggingMiddleware) Unpublish(ctx context.Context, item *items.Item, options ...*items.UnpublishOptions) (err error) {
......
package middleware
// Code generated by gowrap. DO NOT EDIT.
// template: ../../../assets/templates/middleware/access_log
// gowrap: http://github.com/hexdigest/gowrap
package middleware
//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/items -i Items -t ../../../assets/templates/middleware/access_log -o logging_middleware.go -l ""
import (
......@@ -191,15 +191,12 @@ func (m *loggingMiddleware) Create(ctx context.Context, item *items.Item, opts .
return created, err
}
func (m *loggingMiddleware) Delete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.DeleteOptions) (err error) {
func (m *loggingMiddleware) Delete(ctx context.Context, item *items.Item, options ...*items.DeleteOptions) (err error) {
begin := time.Now()
var fields []zapcore.Field
for k, v := range map[string]interface{}{
"ctx": ctx,
"spaceId": spaceId,
"envId": envId,
"collectionId": collectionId,
"itemId": itemId,
"item": item,
"options": options} {
if k == "ctx" {
fields = append(fields, zap.String("principal", fmt.Sprint(auth.GetPrincipal(ctx))))
......@@ -210,7 +207,7 @@ func (m *loggingMiddleware) Delete(ctx context.Context, spaceId string, envId st
m.logger.Debug("Delete.Request", fields...)
err = m.next.Delete(ctx, spaceId, envId, collectionId, itemId, options...)
err = m.next.Delete(ctx, item, options...)
fields = []zapcore.Field{
zap.Duration("time", time.Since(begin)),
......@@ -635,15 +632,12 @@ func (m *loggingMiddleware) Unarchive(ctx context.Context, item *items.Item, opt
return err
}
func (m *loggingMiddleware) Undelete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.UndeleteOptions) (err error) {
func (m *loggingMiddleware) Undelete(ctx context.Context, item *items.Item, options ...*items.UndeleteOptions) (err error) {
begin := time.Now()
var fields []zapcore.Field
for k, v := range map[string]interface{}{
"ctx": ctx,
"spaceId": spaceId,
"envId": envId,
"collectionId": collectionId,
"itemId": itemId,
"item": item,
"options": options} {
if k == "ctx" {
fields = append(fields, zap.String("principal", fmt.Sprint(auth.GetPrincipal(ctx))))
......@@ -654,7 +648,7 @@ func (m *loggingMiddleware) Undelete(ctx context.Context, spaceId string, envId
m.logger.Debug("Undelete.Request", fields...)
err = m.next.Undelete(ctx, spaceId, envId, collectionId, itemId, options...)
err = m.next.Undelete(ctx, item, options...)
fields = []zapcore.Field{
zap.Duration("time", time.Since(begin)),
......
......@@ -79,7 +79,7 @@ func (m *recoveringMiddleware) Create(ctx context.Context, item *items.Item, opt
return m.next.Create(ctx, item, opts...)
}
func (m *recoveringMiddleware) Delete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.DeleteOptions) (err error) {
func (m *recoveringMiddleware) Delete(ctx context.Context, item *items.Item, options ...*items.DeleteOptions) (err error) {
logger := m.logger
defer func() {
if r := recover(); r != nil {
......@@ -88,7 +88,7 @@ func (m *recoveringMiddleware) Delete(ctx context.Context, spaceId string, envId
}
}()
return m.next.Delete(ctx, spaceId, envId, collectionId, itemId, options...)
return m.next.Delete(ctx, item, options...)
}
func (m *recoveringMiddleware) Find(ctx context.Context, spaceId string, envId string, collectionId string, filter *items.Filter, options ...*items.FindOptions) (items []*items.Item, total int, err error) {
......@@ -211,7 +211,7 @@ func (m *recoveringMiddleware) Unarchive(ctx context.Context, item *items.Item,
return m.next.Unarchive(ctx, item, options...)
}
func (m *recoveringMiddleware) Undelete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.UndeleteOptions) (err error) {
func (m *recoveringMiddleware) Undelete(ctx context.Context, item *items.Item, options ...*items.UndeleteOptions) (err error) {
logger := m.logger
defer func() {
if r := recover(); r != nil {
......@@ -220,7 +220,7 @@ func (m *recoveringMiddleware) Undelete(ctx context.Context, spaceId string, env
}
}()
return m.next.Undelete(ctx, spaceId, envId, collectionId, itemId, options...)
return m.next.Undelete(ctx, item, options...)
}
func (m *recoveringMiddleware) Unpublish(ctx context.Context, item *items.Item, options ...*items.UnpublishOptions) (err error) {
......
......@@ -131,16 +131,13 @@ func (_d telemetryMiddleware) Create(ctx context.Context, item *items.Item, opts
}
// Delete implements items.Items
func (_d telemetryMiddleware) Delete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.DeleteOptions) (err error) {
func (_d telemetryMiddleware) Delete(ctx context.Context, item *items.Item, options ...*items.DeleteOptions) (err error) {
ctx, _span := otel.Tracer(_d._instance).Start(ctx, "Items.Delete")
defer func() {
if _d._spanDecorator != nil {
_d._spanDecorator(_span, map[string]interface{}{
"ctx": ctx,
"spaceId": spaceId,
"envId": envId,
"collectionId": collectionId,
"itemId": itemId,
"item": item,
"options": options}, map[string]interface{}{
"err": err})
} else if err != nil {
......@@ -151,7 +148,7 @@ func (_d telemetryMiddleware) Delete(ctx context.Context, spaceId string, envId
_span.End()
}()
return _d.Items.Delete(ctx, spaceId, envId, collectionId, itemId, options...)
return _d.Items.Delete(ctx, item, options...)
}
// Find implements items.Items
......@@ -399,16 +396,13 @@ func (_d telemetryMiddleware) Unarchive(ctx context.Context, item *items.Item, o
}
// Undelete implements items.Items
func (_d telemetryMiddleware) Undelete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.UndeleteOptions) (err error) {
func (_d telemetryMiddleware) Undelete(ctx context.Context, item *items.Item, options ...*items.UndeleteOptions) (err error) {
ctx, _span := otel.Tracer(_d._instance).Start(ctx, "Items.Undelete")
defer func() {
if _d._spanDecorator != nil {
_d._spanDecorator(_span, map[string]interface{}{
"ctx": ctx,
"spaceId": spaceId,
"envId": envId,
"collectionId": collectionId,
"itemId": itemId,
"item": item,
"options": options}, map[string]interface{}{
"err": err})
} else if err != nil {
......@@ -419,7 +413,7 @@ func (_d telemetryMiddleware) Undelete(ctx context.Context, spaceId string, envI
_span.End()
}()
return _d.Items.Undelete(ctx, spaceId, envId, collectionId, itemId, options...)
return _d.Items.Undelete(ctx, item, options...)
}
// Unpublish implements items.Items
......
......@@ -127,20 +127,20 @@ func (_m *Items) Create(ctx context.Context, item *items.Item, opts ...*items.Cr
return r0, r1
}
// Delete provides a mock function with given fields: ctx, spaceId, envId, collectionId, itemId, options
func (_m *Items) Delete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.DeleteOptions) error {
// Delete provides a mock function with given fields: ctx, item, options
func (_m *Items) Delete(ctx context.Context, item *items.Item, options ...*items.DeleteOptions) error {
_va := make([]interface{}, len(options))
for _i := range options {
_va[_i] = options[_i]
}
var _ca []interface{}
_ca = append(_ca, ctx, spaceId, envId, collectionId, itemId)
_ca = append(_ca, ctx, item)
_ca = append(_ca, _va...)
ret := _m.Called(_ca...)
var r0 error
if rf, ok := ret.Get(0).(func(context.Context, string, string, string, string, ...*items.DeleteOptions) error); ok {
r0 = rf(ctx, spaceId, envId, collectionId, itemId, options...)
if rf, ok := ret.Get(0).(func(context.Context, *items.Item, ...*items.DeleteOptions) error); ok {
r0 = rf(ctx, item, options...)
} else {
r0 = ret.Error(0)
}
......@@ -460,20 +460,20 @@ func (_m *Items) Unarchive(ctx context.Context, item *items.Item, options ...*it
return r0
}
// Undelete provides a mock function with given fields: ctx, spaceId, envId, collectionId, itemId, options
func (_m *Items) Undelete(ctx context.Context, spaceId string, envId string, collectionId string, itemId string, options ...*items.UndeleteOptions) error {
// Undelete provides a mock function with given fields: ctx, item, options
func (_m *Items) Undelete(ctx context.Context, item *items.Item, options ...*items.UndeleteOptions) error {
_va := make([]interface{}, len(options))
for _i := range options {
_va[_i] = options[_i]
}
var _ca []interface{}
_ca = append(_ca, ctx, spaceId, envId, collectionId, itemId)
_ca = append(_ca, ctx, item)
_ca = append(_ca, _va...)
ret := _m.Called(_ca...)
var r0 error
if rf, ok := ret.Get(0).(func(context.Context, string, string, string, string, ...*items.UndeleteOptions) error); ok {
r0 = rf(ctx, spaceId, envId, collectionId, itemId, options...)
if rf, ok := ret.Get(0).(func(context.Context, *items.Item, ...*items.UndeleteOptions) error); ok {
r0 = rf(ctx, item, options...)
} else {
r0 = ret.Error(0)
}
......
......@@ -134,15 +134,19 @@ func MergeUpdateOptions(opts ...*UpdateOptions) *UpdateOptions {
type DeleteOptions struct {
Options
UpdateAttrs bool
Erase bool
}
func MergeDeleteOptions(opts ...*DeleteOptions) *DeleteOptions {
func MergeDeleteOptions(options ...*DeleteOptions) *DeleteOptions {
o := &DeleteOptions{}
for _, opt := range opts {
for _, opt := range options {
if opt == nil {
continue
}
if opt.UpdateAttrs {
o.UpdateAttrs = true
}
if opt.Erase {
o.Erase = true
}
......@@ -169,6 +173,8 @@ func MergeSoftDeleteOptions(opts ...*SoftDeleteOptions) *SoftDeleteOptions {
type UndeleteOptions struct {
Options
UpdateAttrs bool
}
func MergeUndeleteOptions(opts ...*UndeleteOptions) *UndeleteOptions {
......@@ -177,6 +183,10 @@ func MergeUndeleteOptions(opts ...*UndeleteOptions) *UndeleteOptions {
if opt == nil {
continue
}
if opt.UpdateAttrs {
o.UpdateAttrs = true
}
o.Options = MergeOptions(o.Options, opt.Options)
}
return o
......@@ -204,6 +214,8 @@ func MergePublishOptions(opts ...*PublishOptions) *PublishOptions {
}
type UnpublishOptions struct {
UpdateAttrs bool
Options
}
......@@ -213,6 +225,10 @@ func MergeUnpublishOptions(opts ...*UnpublishOptions) *UnpublishOptions {
if opt == nil {
continue
}
if opt.UpdateAttrs {
o.UpdateAttrs = true
}
o.Options = MergeOptions(o.Options, opt.Options)
}
return o
......
......@@ -23,10 +23,10 @@ type Items interface {
// Delete выполняет удаление элемента
// Если установлен флаг DeleteOptions.Erase то данные будут полностью удалены из системы.
// В противном случае выполняется "мягкое удаление", элемент помечается как удаленный и может быть восстановлен с помощью метода Items.Undelete и получен в Items.Get/Find
Delete(ctx context.Context, spaceId, envId, collectionId, itemId string, options ...*DeleteOptions) (err error)
Delete(ctx context.Context, item *Item, options ...*DeleteOptions) (err error)
// Undelete восстанавливает элементы после "мягкого удаление"
Undelete(ctx context.Context, spaceId, envId, collectionId, itemId string, options ...*UndeleteOptions) (err error)
Undelete(ctx context.Context, item *Item, options ...*UndeleteOptions) (err error)
Publish(ctx context.Context, item *Item, options ...*PublishOptions) (err error)
Unpublish(ctx context.Context, item *Item, options ...*UnpublishOptions) (err error)
......
......@@ -89,14 +89,8 @@ func (set EndpointsSet) Update(arg0 context.Context, arg1 *items.Item, arg2 ...*
return res0
}
func (set EndpointsSet) Delete(arg0 context.Context, arg1, arg2, arg3, arg4 string, options ...*items.DeleteOptions) (res0 error) {
request := DeleteRequest{
CollectionId: arg3,
EnvId: arg2,
ItemId: arg4,
SpaceId: arg1,
Options: options,
}
func (set EndpointsSet) Delete(arg0 context.Context, arg1 *items.Item, arg2 ...*items.DeleteOptions) (res0 error) {
request := DeleteRequest{Item: arg1,Options: arg2}
_, res0 = set.DeleteEndpoint(arg0, &request)
if res0 != nil {
return
......@@ -104,14 +98,8 @@ func (set EndpointsSet) Delete(arg0 context.Context, arg1, arg2, arg3, arg4 stri
return res0
}
func (set EndpointsSet) Undelete(arg0 context.Context, arg1, arg2, arg3, arg4 string, options ...*items.UndeleteOptions) (res0 error) {
request := UndeleteRequest{
CollectionId: arg3,
EnvId: arg2,
ItemId: arg4,
SpaceId: arg1,
Options: options,
}
func (set EndpointsSet) Undelete(arg0 context.Context,arg1 *items.Item, options ...*items.UndeleteOptions) (res0 error) {
request := UndeleteRequest{Item: arg1, Options: options}
_, res0 = set.UndeleteEndpoint(arg0, &request)
if res0 != nil {
return
......
......@@ -57,20 +57,14 @@ type (
UpdateResponse struct{}
DeleteRequest struct {
SpaceId string `json:"space_id"`
EnvId string `json:"env_id"`
CollectionId string `json:"collection_id"`
ItemId string `json:"item_id"`
Item *items.Item `json:"item"`
Options []*items.DeleteOptions `json:"options"` // This field was defined with ellipsis (...).
}
// Formal exchange type, please do not delete.
DeleteResponse struct{}
UndeleteRequest struct {
SpaceId string `json:"space_id"`
EnvId string `json:"env_id"`
CollectionId string `json:"collection_id"`
ItemId string `json:"item_id"`
Item *items.Item `json:"item"`
Options []*items.UndeleteOptions `json:"options"` // This field was defined with ellipsis (...).
}
// Formal exchange type, please do not delete.
......
......@@ -15,6 +15,20 @@ func NewGRPCClient(conn *grpc.ClientConn, addr string, opts ...grpckit.ClientOpt
addr = "content.items.Items"
}
return transport.EndpointsSet{
AggregateEndpoint: grpckit.NewClient(
conn, addr, "Aggregate",
_Encode_Aggregate_Request,
_Decode_Aggregate_Response,
pb.AggregateResponse{},
opts...,
).Endpoint(),
AggregatePublishedEndpoint: grpckit.NewClient(
conn, addr, "AggregatePublished",
_Encode_AggregatePublished_Request,
_Decode_AggregatePublished_Response,
pb.AggregatePublishedResponse{},
opts...,
).Endpoint(),
ArchiveEndpoint: grpckit.NewClient(
conn, addr, "Archive",
_Encode_Archive_Request,
......@@ -36,13 +50,6 @@ func NewGRPCClient(conn *grpc.ClientConn, addr string, opts ...grpckit.ClientOpt
empty.Empty{},
opts...,
).Endpoint(),
UndeleteEndpoint: grpckit.NewClient(
conn, addr, "Undelete",
_Encode_Undelete_Request,
_Decode_Undelete_Response,
empty.Empty{},
opts...,
).Endpoint(),
FindArchivedEndpoint: grpckit.NewClient(
conn, addr, "FindArchived",
_Encode_FindArchived_Request,
......@@ -113,6 +120,13 @@ func NewGRPCClient(conn *grpc.ClientConn, addr string, opts ...grpckit.ClientOpt
empty.Empty{},
opts...,
).Endpoint(),
UndeleteEndpoint: grpckit.NewClient(
conn, addr, "Undelete",
_Encode_Undelete_Request,
_Decode_Undelete_Response,
empty.Empty{},
opts...,
).Endpoint(),
UnpublishEndpoint: grpckit.NewClient(
conn, addr, "Unpublish",
_Encode_Unpublish_Request,
......@@ -127,19 +141,5 @@ func NewGRPCClient(conn *grpc.ClientConn, addr string, opts ...grpckit.ClientOpt
empty.Empty{},
opts...,
).Endpoint(),
AggregateEndpoint: grpckit.NewClient(
conn, addr, "Aggregate",
_Encode_Aggregate_Request,
_Decode_Aggregate_Response,
pb.AggregateResponse{},
opts...,
).Endpoint(),
AggregatePublishedEndpoint: grpckit.NewClient(
conn, addr, "AggregatePublished",
_Encode_AggregatePublished_Request,
_Decode_AggregatePublished_Response,
pb.AggregatePublishedResponse{},
opts...,
).Endpoint(),
}
}
......@@ -92,16 +92,17 @@ func _Encode_Delete_Request(ctx context.Context, request interface{}) (interface
return nil, errors.New("nil DeleteRequest")
}
req := request.(*transport.DeleteRequest)
reqItem, err := PtrItemToProto(req.Item)
if err != nil {
return nil, err
}
opts, err := DeleteOptionsToProto(req.Options)
if err != nil {
return nil, err
}
return &pb.DeleteRequest{
CollectionId: req.CollectionId,
EnvId: req.EnvId,
ItemId: req.ItemId,
SpaceId: req.SpaceId,
Item: reqItem,
Options: opts,
}, nil
}
......@@ -111,11 +112,18 @@ func _Encode_Undelete_Request(ctx context.Context, request interface{}) (interfa
return nil, errors.New("nil UndeleteRequest")
}
req := request.(*transport.UndeleteRequest)
reqItem, err := PtrItemToProto(req.Item)
if err != nil {
return nil, err
}
opts, err := UndeleteOptionsToProto(req.Options)
if err != nil {
return nil, err
}
return &pb.UndeleteRequest{
CollectionId: req.CollectionId,
EnvId: req.EnvId,
ItemId: req.ItemId,
SpaceId: req.SpaceId,
Item: reqItem,
Options: opts,
}, nil
}
......@@ -148,7 +156,15 @@ func _Encode_Unpublish_Request(ctx context.Context, request interface{}) (interf
if err != nil {
return nil, err
}
return &pb.UnpublishRequest{Item: reqItem}, nil
opts, err := UnpublishOptionsToProto(req.Options)
if err != nil {
return nil, err
}
return &pb.UnpublishRequest{
Item: reqItem,
Options: opts,
}, nil
}
func _Encode_GetPublished_Request(ctx context.Context, request interface{}) (interface{}, error) {
......@@ -598,16 +614,17 @@ func _Decode_Delete_Request(ctx context.Context, request interface{}) (interface
return nil, errors.New("nil DeleteRequest")
}
req := request.(*pb.DeleteRequest)
reqItem, err := ProtoToPtrItem(req.Item)
if err != nil {
return nil, err
}
opts, err := ProtoToDeleteOptions(req.Options)
if err != nil {
return nil, err
}
return &transport.DeleteRequest{
CollectionId: string(req.CollectionId),
EnvId: string(req.EnvId),
ItemId: string(req.ItemId),
SpaceId: string(req.SpaceId),
Item: reqItem,
Options: opts,
}, nil
}
......@@ -617,11 +634,18 @@ func _Decode_Undelete_Request(ctx context.Context, request interface{}) (interfa
return nil, errors.New("nil UndeleteRequest")
}
req := request.(*pb.UndeleteRequest)
reqItem, err := ProtoToPtrItem(req.Item)
if err != nil {
return nil, err
}
opts, err := ProtoToUndeleteOptions(req.Options)
if err != nil {
return nil, err
}
return &transport.UndeleteRequest{
CollectionId: string(req.CollectionId),
EnvId: string(req.EnvId),
ItemId: string(req.ItemId),
SpaceId: string(req.SpaceId),
Item: reqItem,
Options: opts,
}, nil
}
......@@ -654,7 +678,15 @@ func _Decode_Unpublish_Request(ctx context.Context, request interface{}) (interf
if err != nil {
return nil, err
}
return &transport.UnpublishRequest{Item: reqItem}, nil
opts, err := ProtoToUnpublishOptions(req.Options)
if err != nil {
return nil, err
}
return &transport.UnpublishRequest{
Item: reqItem,
Options: opts,
}, nil
}
func _Decode_GetPublished_Request(ctx context.Context, request interface{}) (interface{}, error) {
......
......@@ -302,7 +302,10 @@ func ProtoToDeleteOptions(protoOptions *pb.DeleteOptions) ([]*service.DeleteOpti
return nil, nil
}
return []*service.DeleteOptions{
{Erase: protoOptions.Erase},
{
UpdateAttrs: protoOptions.UpdateAttrs,
Erase: protoOptions.Erase,
},
}, nil
}
......@@ -314,10 +317,34 @@ func DeleteOptionsToProto(options []*service.DeleteOptions) (*pb.DeleteOptions,
opts := service.MergeDeleteOptions(options...)
return &pb.DeleteOptions{
UpdateAttrs: opts.UpdateAttrs,
Erase: opts.Erase,
}, nil
}
func ProtoToUndeleteOptions(protoOptions *pb.UndeleteOptions) ([]*service.UndeleteOptions, error) {
if protoOptions == nil {
return nil, nil
}
return []*service.UndeleteOptions{
{
UpdateAttrs: protoOptions.UpdateAttrs,
},
}, nil
}
func UndeleteOptionsToProto(options []*service.UndeleteOptions) (*pb.UndeleteOptions, error) {
if options == nil {
return nil, nil
}
opts := service.MergeUndeleteOptions(options...)
return &pb.UndeleteOptions{
UpdateAttrs: opts.UpdateAttrs,
}, nil
}
func ProtoToPublishOptions(protoOptions *pb.PublishOptions) ([]*service.PublishOptions, error) {
if protoOptions == nil {
return nil, nil
......@@ -338,13 +365,25 @@ func PublishOptionsToProto(options []*service.PublishOptions) (*pb.PublishOption
UpdateAttrs: opts.UpdateAttrs,
}, nil
}
func ProtoToUnpublishOptions(protoOptions *pb.UnpublishOptions) ([]*service.UnpublishOptions, error) {
if protoOptions == nil {
return nil, nil
}
return []*service.UnpublishOptions{
{UpdateAttrs: protoOptions.UpdateAttrs},
}, nil
}
func ElPtrUnpublishOptionsToProto() {
panic("function not provided") // TODO: provide converter
func UnpublishOptionsToProto(options []*service.UnpublishOptions) (*pb.UnpublishOptions, error) {
if options == nil {
return nil, nil
}
func ProtoToElPtrUnpublishOptions() {
panic("function not provided") // TODO: provide converter
opts := service.MergeUnpublishOptions(options...)
return &pb.UnpublishOptions{
UpdateAttrs: opts.UpdateAttrs,
}, nil
}
func ElPtrGetPublishedOptionsToProto(options []*service.GetPublishedOptions) (*pb.GetPublishedOptions, error) {
......
......@@ -36,6 +36,18 @@ type itemsServer struct {
func NewGRPCServer(endpoints *transport.EndpointsSet, opts ...grpc.ServerOption) pb.ItemsServer {
return &itemsServer{
aggregate: grpc.NewServer(
endpoints.AggregateEndpoint,
_Decode_Aggregate_Request,
_Encode_Aggregate_Response,
opts...,
),
aggregatePublished: grpc.NewServer(
endpoints.AggregatePublishedEndpoint,
_Decode_AggregatePublished_Request,
_Encode_AggregatePublished_Response,
opts...,
),
archive: grpc.NewServer(
endpoints.ArchiveEndpoint,
_Decode_Archive_Request,
......@@ -54,12 +66,6 @@ func NewGRPCServer(endpoints *transport.EndpointsSet, opts ...grpc.ServerOption)
_Encode_Delete_Response,
opts...,
),
undelete: grpc.NewServer(
endpoints.UndeleteEndpoint,
_Decode_Undelete_Request,
_Encode_Undelete_Response,
opts...,
),
find: grpc.NewServer(
endpoints.FindEndpoint,
_Decode_Find_Request,
......@@ -120,6 +126,12 @@ func NewGRPCServer(endpoints *transport.EndpointsSet, opts ...grpc.ServerOption)
_Encode_Unarchive_Response,
opts...,
),
undelete: grpc.NewServer(
endpoints.UndeleteEndpoint,
_Decode_Undelete_Request,
_Encode_Undelete_Response,
opts...,
),
unpublish: grpc.NewServer(
endpoints.UnpublishEndpoint,
_Decode_Unpublish_Request,
......@@ -132,18 +144,6 @@ func NewGRPCServer(endpoints *transport.EndpointsSet, opts ...grpc.ServerOption)
_Encode_Update_Response,
opts...,
),
aggregate: grpc.NewServer(
endpoints.AggregateEndpoint,
_Decode_Aggregate_Request,
_Encode_Aggregate_Response,
opts...,
),
aggregatePublished: grpc.NewServer(
endpoints.AggregatePublishedEndpoint,
_Decode_AggregatePublished_Request,
_Encode_AggregatePublished_Response,
opts...,
),
}
}
......
......@@ -14,10 +14,11 @@ import (
func Endpoints(svc items.Items) EndpointsSet {
return EndpointsSet{
AggregateEndpoint: AggregateEndpoint(svc),
AggregatePublishedEndpoint: AggregatePublishedEndpoint(svc),
ArchiveEndpoint: ArchiveEndpoint(svc),
CreateEndpoint: CreateEndpoint(svc),
DeleteEndpoint: DeleteEndpoint(svc),
UndeleteEndpoint: UndeleteEndpoint(svc),
FindArchivedEndpoint: FindArchivedEndpoint(svc),
FindEndpoint: FindEndpoint(svc),
FindPublishedEndpoint: FindPublishedEndpoint(svc),
......@@ -28,10 +29,9 @@ func Endpoints(svc items.Items) EndpointsSet {
ListRevisionsEndpoint: ListRevisionsEndpoint(svc),
PublishEndpoint: PublishEndpoint(svc),
UnarchiveEndpoint: UnarchiveEndpoint(svc),
UndeleteEndpoint: UndeleteEndpoint(svc),
UnpublishEndpoint: UnpublishEndpoint(svc),
UpdateEndpoint: UpdateEndpoint(svc),
AggregateEndpoint: AggregateEndpoint(svc),
AggregatePublishedEndpoint: AggregatePublishedEndpoint(svc),
}
}
......@@ -109,7 +109,7 @@ func UpdateEndpoint(svc items.Items) endpoint.Endpoint {
func DeleteEndpoint(svc items.Items) endpoint.Endpoint {
return func(arg0 context.Context, request interface{}) (interface{}, error) {
req := request.(*DeleteRequest)
res0 := svc.Delete(arg0, req.SpaceId, req.EnvId, req.CollectionId, req.ItemId, req.Options...)
res0 := svc.Delete(arg0, req.Item, req.Options...)
return &DeleteResponse{}, res0
}
}
......@@ -117,7 +117,7 @@ func DeleteEndpoint(svc items.Items) endpoint.Endpoint {
func UndeleteEndpoint(svc items.Items) endpoint.Endpoint {
return func(arg0 context.Context, request interface{}) (interface{}, error) {
req := request.(*UndeleteRequest)
res0 := svc.Undelete(arg0, req.SpaceId, req.EnvId, req.CollectionId, req.ItemId, req.Options...)
res0 := svc.Undelete(arg0, req.Item, req.Options...)
return &UndeleteResponse{}, res0
}
}
......@@ -204,17 +204,14 @@ func AggregateEndpoint(svc items.Items) endpoint.Endpoint {
return func(arg0 context.Context, request interface{}) (interface{}, error) {
req := request.(*AggregateRequest)
res0, res1 := svc.Aggregate(arg0, req.SpaceId, req.EnvId, req.CollectionId, req.Filter, req.Options...)
return &AggregateResponse{
Result: res0,
}, res1
return &AggregateResponse{Result: res0}, res1
}
}
func AggregatePublishedEndpoint(svc items.Items) endpoint.Endpoint {
return func(arg0 context.Context, request interface{}) (interface{}, error) {
req := request.(*AggregatePublishedRequest)
res0, res1 := svc.AggregatePublished(arg0, req.SpaceId, req.EnvId, req.CollectionId, req.Filter, req.Options...)
return &AggregatePublishedResponse{
Result: res0,
}, res1
return &AggregatePublishedResponse{Result: res0}, res1
}
}
......@@ -1269,6 +1269,53 @@ func (x *DeleteOptions) GetErase() bool {
return false
}
type UndeleteOptions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
UpdateAttrs bool `protobuf:"varint,1,opt,name=update_attrs,json=updateAttrs,proto3" json:"update_attrs,omitempty"`
}
func (x *UndeleteOptions) Reset() {
*x = UndeleteOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UndeleteOptions) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UndeleteOptions) ProtoMessage() {}
func (x *UndeleteOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_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 UndeleteOptions.ProtoReflect.Descriptor instead.
func (*UndeleteOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{17}
}
func (x *UndeleteOptions) GetUpdateAttrs() bool {
if x != nil {
return x.UpdateAttrs
}
return false
}
type PublishOptions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
......@@ -1280,7 +1327,7 @@ type PublishOptions struct {
func (x *PublishOptions) Reset() {
*x = PublishOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[17]
mi := &file_items_items_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1293,7 +1340,7 @@ func (x *PublishOptions) String() string {
func (*PublishOptions) ProtoMessage() {}
func (x *PublishOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[17]
mi := &file_items_items_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1306,7 +1353,7 @@ func (x *PublishOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use PublishOptions.ProtoReflect.Descriptor instead.
func (*PublishOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{17}
return file_items_items_proto_rawDescGZIP(), []int{18}
}
func (x *PublishOptions) GetUpdateAttrs() bool {
......@@ -1327,7 +1374,7 @@ type UnpublishOptions struct {
func (x *UnpublishOptions) Reset() {
*x = UnpublishOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[18]
mi := &file_items_items_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1340,7 +1387,7 @@ func (x *UnpublishOptions) String() string {
func (*UnpublishOptions) ProtoMessage() {}
func (x *UnpublishOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[18]
mi := &file_items_items_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1353,7 +1400,7 @@ func (x *UnpublishOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use UnpublishOptions.ProtoReflect.Descriptor instead.
func (*UnpublishOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{18}
return file_items_items_proto_rawDescGZIP(), []int{19}
}
func (x *UnpublishOptions) GetUpdateAttrs() bool {
......@@ -1378,7 +1425,7 @@ type FindPublishedOptions struct {
func (x *FindPublishedOptions) Reset() {
*x = FindPublishedOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[19]
mi := &file_items_items_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1391,7 +1438,7 @@ func (x *FindPublishedOptions) String() string {
func (*FindPublishedOptions) ProtoMessage() {}
func (x *FindPublishedOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[19]
mi := &file_items_items_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1404,7 +1451,7 @@ func (x *FindPublishedOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindPublishedOptions.ProtoReflect.Descriptor instead.
func (*FindPublishedOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{19}
return file_items_items_proto_rawDescGZIP(), []int{20}
}
func (x *FindPublishedOptions) GetOptions() *common.FindOptions {
......@@ -1453,7 +1500,7 @@ type FindArchivedOptions struct {
func (x *FindArchivedOptions) Reset() {
*x = FindArchivedOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[20]
mi := &file_items_items_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1466,7 +1513,7 @@ func (x *FindArchivedOptions) String() string {
func (*FindArchivedOptions) ProtoMessage() {}
func (x *FindArchivedOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[20]
mi := &file_items_items_proto_msgTypes[21]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1479,7 +1526,7 @@ func (x *FindArchivedOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindArchivedOptions.ProtoReflect.Descriptor instead.
func (*FindArchivedOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{20}
return file_items_items_proto_rawDescGZIP(), []int{21}
}
func (x *FindArchivedOptions) GetOptions() *common.FindOptions {
......@@ -1500,7 +1547,7 @@ type ListRevisionsOptions struct {
func (x *ListRevisionsOptions) Reset() {
*x = ListRevisionsOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[21]
mi := &file_items_items_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1513,7 +1560,7 @@ func (x *ListRevisionsOptions) String() string {
func (*ListRevisionsOptions) ProtoMessage() {}
func (x *ListRevisionsOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[21]
mi := &file_items_items_proto_msgTypes[22]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1526,7 +1573,7 @@ func (x *ListRevisionsOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListRevisionsOptions.ProtoReflect.Descriptor instead.
func (*ListRevisionsOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{21}
return file_items_items_proto_rawDescGZIP(), []int{22}
}
func (x *ListRevisionsOptions) GetOptions() *common.FindOptions {
......@@ -1558,7 +1605,7 @@ type AggregateOptions struct {
func (x *AggregateOptions) Reset() {
*x = AggregateOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[22]
mi := &file_items_items_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1571,7 +1618,7 @@ func (x *AggregateOptions) String() string {
func (*AggregateOptions) ProtoMessage() {}
func (x *AggregateOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[22]
mi := &file_items_items_proto_msgTypes[23]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1584,7 +1631,7 @@ func (x *AggregateOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use AggregateOptions.ProtoReflect.Descriptor instead.
func (*AggregateOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{22}
return file_items_items_proto_rawDescGZIP(), []int{23}
}
func (x *AggregateOptions) GetFields() map[string]string {
......@@ -1605,7 +1652,7 @@ type AggregatePublishedOptions struct {
func (x *AggregatePublishedOptions) Reset() {
*x = AggregatePublishedOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[23]
mi := &file_items_items_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1618,7 +1665,7 @@ func (x *AggregatePublishedOptions) String() string {
func (*AggregatePublishedOptions) ProtoMessage() {}
func (x *AggregatePublishedOptions) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[23]
mi := &file_items_items_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1631,7 +1678,7 @@ func (x *AggregatePublishedOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use AggregatePublishedOptions.ProtoReflect.Descriptor instead.
func (*AggregatePublishedOptions) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{23}
return file_items_items_proto_rawDescGZIP(), []int{24}
}
func (x *AggregatePublishedOptions) GetFields() map[string]string {
......@@ -1653,7 +1700,7 @@ type CreateRequest struct {
func (x *CreateRequest) Reset() {
*x = CreateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[24]
mi := &file_items_items_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1666,7 +1713,7 @@ func (x *CreateRequest) String() string {
func (*CreateRequest) ProtoMessage() {}
func (x *CreateRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[24]
mi := &file_items_items_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1679,7 +1726,7 @@ func (x *CreateRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateRequest.ProtoReflect.Descriptor instead.
func (*CreateRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{24}
return file_items_items_proto_rawDescGZIP(), []int{25}
}
func (x *CreateRequest) GetItem() *Item {
......@@ -1707,7 +1754,7 @@ type CreateResponse struct {
func (x *CreateResponse) Reset() {
*x = CreateResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[25]
mi := &file_items_items_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1720,7 +1767,7 @@ func (x *CreateResponse) String() string {
func (*CreateResponse) ProtoMessage() {}
func (x *CreateResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[25]
mi := &file_items_items_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1733,7 +1780,7 @@ func (x *CreateResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use CreateResponse.ProtoReflect.Descriptor instead.
func (*CreateResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{25}
return file_items_items_proto_rawDescGZIP(), []int{26}
}
func (x *CreateResponse) GetCreated() *Item {
......@@ -1754,7 +1801,7 @@ type IntrospectRequest struct {
func (x *IntrospectRequest) Reset() {
*x = IntrospectRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[26]
mi := &file_items_items_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1767,7 +1814,7 @@ func (x *IntrospectRequest) String() string {
func (*IntrospectRequest) ProtoMessage() {}
func (x *IntrospectRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[26]
mi := &file_items_items_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1780,7 +1827,7 @@ func (x *IntrospectRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use IntrospectRequest.ProtoReflect.Descriptor instead.
func (*IntrospectRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{26}
return file_items_items_proto_rawDescGZIP(), []int{27}
}
func (x *IntrospectRequest) GetItem() *Item {
......@@ -1803,7 +1850,7 @@ type IntrospectResponse struct {
func (x *IntrospectResponse) Reset() {
*x = IntrospectResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[27]
mi := &file_items_items_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1816,7 +1863,7 @@ func (x *IntrospectResponse) String() string {
func (*IntrospectResponse) ProtoMessage() {}
func (x *IntrospectResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[27]
mi := &file_items_items_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1829,7 +1876,7 @@ func (x *IntrospectResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use IntrospectResponse.ProtoReflect.Descriptor instead.
func (*IntrospectResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{27}
return file_items_items_proto_rawDescGZIP(), []int{28}
}
func (x *IntrospectResponse) GetItem() *Item {
......@@ -1867,7 +1914,7 @@ type GetRequest struct {
func (x *GetRequest) Reset() {
*x = GetRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[28]
mi := &file_items_items_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1880,7 +1927,7 @@ func (x *GetRequest) String() string {
func (*GetRequest) ProtoMessage() {}
func (x *GetRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[28]
mi := &file_items_items_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1893,7 +1940,7 @@ func (x *GetRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetRequest.ProtoReflect.Descriptor instead.
func (*GetRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{28}
return file_items_items_proto_rawDescGZIP(), []int{29}
}
func (x *GetRequest) GetSpaceId() string {
......@@ -1935,7 +1982,7 @@ type GetResponse struct {
func (x *GetResponse) Reset() {
*x = GetResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[29]
mi := &file_items_items_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1948,7 +1995,7 @@ func (x *GetResponse) String() string {
func (*GetResponse) ProtoMessage() {}
func (x *GetResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[29]
mi := &file_items_items_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -1961,7 +2008,7 @@ func (x *GetResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetResponse.ProtoReflect.Descriptor instead.
func (*GetResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{29}
return file_items_items_proto_rawDescGZIP(), []int{30}
}
func (x *GetResponse) GetItem() *Item {
......@@ -1986,7 +2033,7 @@ type FindRequest struct {
func (x *FindRequest) Reset() {
*x = FindRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[30]
mi := &file_items_items_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -1999,7 +2046,7 @@ func (x *FindRequest) String() string {
func (*FindRequest) ProtoMessage() {}
func (x *FindRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[30]
mi := &file_items_items_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2012,7 +2059,7 @@ func (x *FindRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindRequest.ProtoReflect.Descriptor instead.
func (*FindRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{30}
return file_items_items_proto_rawDescGZIP(), []int{31}
}
func (x *FindRequest) GetSpaceId() string {
......@@ -2062,7 +2109,7 @@ type FindResponse struct {
func (x *FindResponse) Reset() {
*x = FindResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[31]
mi := &file_items_items_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2075,7 +2122,7 @@ func (x *FindResponse) String() string {
func (*FindResponse) ProtoMessage() {}
func (x *FindResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[31]
mi := &file_items_items_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2088,7 +2135,7 @@ func (x *FindResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindResponse.ProtoReflect.Descriptor instead.
func (*FindResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{31}
return file_items_items_proto_rawDescGZIP(), []int{32}
}
func (x *FindResponse) GetItems() []*Item {
......@@ -2117,7 +2164,7 @@ type UpdateRequest struct {
func (x *UpdateRequest) Reset() {
*x = UpdateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[32]
mi := &file_items_items_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2130,7 +2177,7 @@ func (x *UpdateRequest) String() string {
func (*UpdateRequest) ProtoMessage() {}
func (x *UpdateRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[32]
mi := &file_items_items_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2143,7 +2190,7 @@ func (x *UpdateRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateRequest.ProtoReflect.Descriptor instead.
func (*UpdateRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{32}
return file_items_items_proto_rawDescGZIP(), []int{33}
}
func (x *UpdateRequest) GetItem() *Item {
......@@ -2172,7 +2219,7 @@ type DeleteRequest struct {
func (x *DeleteRequest) Reset() {
*x = DeleteRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[33]
mi := &file_items_items_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2185,7 +2232,7 @@ func (x *DeleteRequest) String() string {
func (*DeleteRequest) ProtoMessage() {}
func (x *DeleteRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[33]
mi := &file_items_items_proto_msgTypes[34]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2198,7 +2245,7 @@ func (x *DeleteRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeleteRequest.ProtoReflect.Descriptor instead.
func (*DeleteRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{33}
return file_items_items_proto_rawDescGZIP(), []int{34}
}
func (x *DeleteRequest) GetItem() *Item {
......@@ -2220,16 +2267,14 @@ type UndeleteRequest struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SpaceId string `protobuf:"bytes,1,opt,name=space_id,json=spaceId,proto3" json:"space_id,omitempty"`
EnvId string `protobuf:"bytes,2,opt,name=env_id,json=envId,proto3" json:"env_id,omitempty"`
CollectionId string `protobuf:"bytes,3,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"`
ItemId string `protobuf:"bytes,4,opt,name=item_id,json=itemId,proto3" json:"item_id,omitempty"`
Item *Item `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
Options *UndeleteOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
}
func (x *UndeleteRequest) Reset() {
*x = UndeleteRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[34]
mi := &file_items_items_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2242,7 +2287,7 @@ func (x *UndeleteRequest) String() string {
func (*UndeleteRequest) ProtoMessage() {}
func (x *UndeleteRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[34]
mi := &file_items_items_proto_msgTypes[35]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2255,35 +2300,21 @@ func (x *UndeleteRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UndeleteRequest.ProtoReflect.Descriptor instead.
func (*UndeleteRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{34}
}
func (x *UndeleteRequest) GetSpaceId() string {
if x != nil {
return x.SpaceId
}
return ""
}
func (x *UndeleteRequest) GetEnvId() string {
if x != nil {
return x.EnvId
}
return ""
return file_items_items_proto_rawDescGZIP(), []int{35}
}
func (x *UndeleteRequest) GetCollectionId() string {
func (x *UndeleteRequest) GetItem() *Item {
if x != nil {
return x.CollectionId
return x.Item
}
return ""
return nil
}
func (x *UndeleteRequest) GetItemId() string {
func (x *UndeleteRequest) GetOptions() *UndeleteOptions {
if x != nil {
return x.ItemId
return x.Options
}
return ""
return nil
}
type PublishRequest struct {
......@@ -2298,7 +2329,7 @@ type PublishRequest struct {
func (x *PublishRequest) Reset() {
*x = PublishRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[35]
mi := &file_items_items_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2311,7 +2342,7 @@ func (x *PublishRequest) String() string {
func (*PublishRequest) ProtoMessage() {}
func (x *PublishRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[35]
mi := &file_items_items_proto_msgTypes[36]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2324,7 +2355,7 @@ func (x *PublishRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use PublishRequest.ProtoReflect.Descriptor instead.
func (*PublishRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{35}
return file_items_items_proto_rawDescGZIP(), []int{36}
}
func (x *PublishRequest) GetItem() *Item {
......@@ -2353,7 +2384,7 @@ type UnpublishRequest struct {
func (x *UnpublishRequest) Reset() {
*x = UnpublishRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[36]
mi := &file_items_items_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2366,7 +2397,7 @@ func (x *UnpublishRequest) String() string {
func (*UnpublishRequest) ProtoMessage() {}
func (x *UnpublishRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[36]
mi := &file_items_items_proto_msgTypes[37]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2379,7 +2410,7 @@ func (x *UnpublishRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UnpublishRequest.ProtoReflect.Descriptor instead.
func (*UnpublishRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{36}
return file_items_items_proto_rawDescGZIP(), []int{37}
}
func (x *UnpublishRequest) GetItem() *Item {
......@@ -2411,7 +2442,7 @@ type GetPublishedRequest struct {
func (x *GetPublishedRequest) Reset() {
*x = GetPublishedRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[37]
mi := &file_items_items_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2424,7 +2455,7 @@ func (x *GetPublishedRequest) String() string {
func (*GetPublishedRequest) ProtoMessage() {}
func (x *GetPublishedRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[37]
mi := &file_items_items_proto_msgTypes[38]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2437,7 +2468,7 @@ func (x *GetPublishedRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetPublishedRequest.ProtoReflect.Descriptor instead.
func (*GetPublishedRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{37}
return file_items_items_proto_rawDescGZIP(), []int{38}
}
func (x *GetPublishedRequest) GetSpaceId() string {
......@@ -2486,7 +2517,7 @@ type GetPublishedResponse struct {
func (x *GetPublishedResponse) Reset() {
*x = GetPublishedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[38]
mi := &file_items_items_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2499,7 +2530,7 @@ func (x *GetPublishedResponse) String() string {
func (*GetPublishedResponse) ProtoMessage() {}
func (x *GetPublishedResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[38]
mi := &file_items_items_proto_msgTypes[39]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2512,7 +2543,7 @@ func (x *GetPublishedResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetPublishedResponse.ProtoReflect.Descriptor instead.
func (*GetPublishedResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{38}
return file_items_items_proto_rawDescGZIP(), []int{39}
}
func (x *GetPublishedResponse) GetItem() *Item {
......@@ -2537,7 +2568,7 @@ type FindPublishedRequest struct {
func (x *FindPublishedRequest) Reset() {
*x = FindPublishedRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[39]
mi := &file_items_items_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2550,7 +2581,7 @@ func (x *FindPublishedRequest) String() string {
func (*FindPublishedRequest) ProtoMessage() {}
func (x *FindPublishedRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[39]
mi := &file_items_items_proto_msgTypes[40]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2563,7 +2594,7 @@ func (x *FindPublishedRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindPublishedRequest.ProtoReflect.Descriptor instead.
func (*FindPublishedRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{39}
return file_items_items_proto_rawDescGZIP(), []int{40}
}
func (x *FindPublishedRequest) GetSpaceId() string {
......@@ -2613,7 +2644,7 @@ type FindPublishedResponse struct {
func (x *FindPublishedResponse) Reset() {
*x = FindPublishedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[40]
mi := &file_items_items_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2626,7 +2657,7 @@ func (x *FindPublishedResponse) String() string {
func (*FindPublishedResponse) ProtoMessage() {}
func (x *FindPublishedResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[40]
mi := &file_items_items_proto_msgTypes[41]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2639,7 +2670,7 @@ func (x *FindPublishedResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindPublishedResponse.ProtoReflect.Descriptor instead.
func (*FindPublishedResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{40}
return file_items_items_proto_rawDescGZIP(), []int{41}
}
func (x *FindPublishedResponse) GetItems() []*Item {
......@@ -2671,7 +2702,7 @@ type AggregateRequest struct {
func (x *AggregateRequest) Reset() {
*x = AggregateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[41]
mi := &file_items_items_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2684,7 +2715,7 @@ func (x *AggregateRequest) String() string {
func (*AggregateRequest) ProtoMessage() {}
func (x *AggregateRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[41]
mi := &file_items_items_proto_msgTypes[42]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2697,7 +2728,7 @@ func (x *AggregateRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use AggregateRequest.ProtoReflect.Descriptor instead.
func (*AggregateRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{41}
return file_items_items_proto_rawDescGZIP(), []int{42}
}
func (x *AggregateRequest) GetSpaceId() string {
......@@ -2748,7 +2779,7 @@ type AggregateResponse struct {
func (x *AggregateResponse) Reset() {
*x = AggregateResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[42]
mi := &file_items_items_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2761,7 +2792,7 @@ func (x *AggregateResponse) String() string {
func (*AggregateResponse) ProtoMessage() {}
func (x *AggregateResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[42]
mi := &file_items_items_proto_msgTypes[43]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2774,7 +2805,7 @@ func (x *AggregateResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use AggregateResponse.ProtoReflect.Descriptor instead.
func (*AggregateResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{42}
return file_items_items_proto_rawDescGZIP(), []int{43}
}
func (x *AggregateResponse) GetResult() *structpb.Struct {
......@@ -2799,7 +2830,7 @@ type AggregatePublishedRequest struct {
func (x *AggregatePublishedRequest) Reset() {
*x = AggregatePublishedRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[43]
mi := &file_items_items_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2812,7 +2843,7 @@ func (x *AggregatePublishedRequest) String() string {
func (*AggregatePublishedRequest) ProtoMessage() {}
func (x *AggregatePublishedRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[43]
mi := &file_items_items_proto_msgTypes[44]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2825,7 +2856,7 @@ func (x *AggregatePublishedRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use AggregatePublishedRequest.ProtoReflect.Descriptor instead.
func (*AggregatePublishedRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{43}
return file_items_items_proto_rawDescGZIP(), []int{44}
}
func (x *AggregatePublishedRequest) GetSpaceId() string {
......@@ -2874,7 +2905,7 @@ type AggregatePublishedResponse struct {
func (x *AggregatePublishedResponse) Reset() {
*x = AggregatePublishedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[44]
mi := &file_items_items_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2887,7 +2918,7 @@ func (x *AggregatePublishedResponse) String() string {
func (*AggregatePublishedResponse) ProtoMessage() {}
func (x *AggregatePublishedResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[44]
mi := &file_items_items_proto_msgTypes[45]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2900,7 +2931,7 @@ func (x *AggregatePublishedResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use AggregatePublishedResponse.ProtoReflect.Descriptor instead.
func (*AggregatePublishedResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{44}
return file_items_items_proto_rawDescGZIP(), []int{45}
}
func (x *AggregatePublishedResponse) GetResult() *structpb.Struct {
......@@ -2925,7 +2956,7 @@ type GetRevisionRequest struct {
func (x *GetRevisionRequest) Reset() {
*x = GetRevisionRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[45]
mi := &file_items_items_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -2938,7 +2969,7 @@ func (x *GetRevisionRequest) String() string {
func (*GetRevisionRequest) ProtoMessage() {}
func (x *GetRevisionRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[45]
mi := &file_items_items_proto_msgTypes[46]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -2951,7 +2982,7 @@ func (x *GetRevisionRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetRevisionRequest.ProtoReflect.Descriptor instead.
func (*GetRevisionRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{45}
return file_items_items_proto_rawDescGZIP(), []int{46}
}
func (x *GetRevisionRequest) GetSpaceId() string {
......@@ -3000,7 +3031,7 @@ type GetRevisionResponse struct {
func (x *GetRevisionResponse) Reset() {
*x = GetRevisionResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[46]
mi := &file_items_items_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -3013,7 +3044,7 @@ func (x *GetRevisionResponse) String() string {
func (*GetRevisionResponse) ProtoMessage() {}
func (x *GetRevisionResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[46]
mi := &file_items_items_proto_msgTypes[47]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -3026,7 +3057,7 @@ func (x *GetRevisionResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetRevisionResponse.ProtoReflect.Descriptor instead.
func (*GetRevisionResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{46}
return file_items_items_proto_rawDescGZIP(), []int{47}
}
func (x *GetRevisionResponse) GetItem() *Item {
......@@ -3051,7 +3082,7 @@ type ListRevisionsRequest struct {
func (x *ListRevisionsRequest) Reset() {
*x = ListRevisionsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[47]
mi := &file_items_items_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -3064,7 +3095,7 @@ func (x *ListRevisionsRequest) String() string {
func (*ListRevisionsRequest) ProtoMessage() {}
func (x *ListRevisionsRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[47]
mi := &file_items_items_proto_msgTypes[48]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -3077,7 +3108,7 @@ func (x *ListRevisionsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListRevisionsRequest.ProtoReflect.Descriptor instead.
func (*ListRevisionsRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{47}
return file_items_items_proto_rawDescGZIP(), []int{48}
}
func (x *ListRevisionsRequest) GetSpaceId() string {
......@@ -3126,7 +3157,7 @@ type ListRevisionsResponse struct {
func (x *ListRevisionsResponse) Reset() {
*x = ListRevisionsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[48]
mi := &file_items_items_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -3139,7 +3170,7 @@ func (x *ListRevisionsResponse) String() string {
func (*ListRevisionsResponse) ProtoMessage() {}
func (x *ListRevisionsResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[48]
mi := &file_items_items_proto_msgTypes[49]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -3152,7 +3183,7 @@ func (x *ListRevisionsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListRevisionsResponse.ProtoReflect.Descriptor instead.
func (*ListRevisionsResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{48}
return file_items_items_proto_rawDescGZIP(), []int{49}
}
func (x *ListRevisionsResponse) GetItems() []*Item {
......@@ -3175,7 +3206,7 @@ type ArchiveRequest struct {
func (x *ArchiveRequest) Reset() {
*x = ArchiveRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[49]
mi := &file_items_items_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -3188,7 +3219,7 @@ func (x *ArchiveRequest) String() string {
func (*ArchiveRequest) ProtoMessage() {}
func (x *ArchiveRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[49]
mi := &file_items_items_proto_msgTypes[50]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -3201,7 +3232,7 @@ func (x *ArchiveRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ArchiveRequest.ProtoReflect.Descriptor instead.
func (*ArchiveRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{49}
return file_items_items_proto_rawDescGZIP(), []int{50}
}
func (x *ArchiveRequest) GetItem() *Item {
......@@ -3222,7 +3253,7 @@ type UnarchiveRequest struct {
func (x *UnarchiveRequest) Reset() {
*x = UnarchiveRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[50]
mi := &file_items_items_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -3235,7 +3266,7 @@ func (x *UnarchiveRequest) String() string {
func (*UnarchiveRequest) ProtoMessage() {}
func (x *UnarchiveRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[50]
mi := &file_items_items_proto_msgTypes[51]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -3248,7 +3279,7 @@ func (x *UnarchiveRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use UnarchiveRequest.ProtoReflect.Descriptor instead.
func (*UnarchiveRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{50}
return file_items_items_proto_rawDescGZIP(), []int{51}
}
func (x *UnarchiveRequest) GetItem() *Item {
......@@ -3273,7 +3304,7 @@ type FindArchivedRequest struct {
func (x *FindArchivedRequest) Reset() {
*x = FindArchivedRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[51]
mi := &file_items_items_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -3286,7 +3317,7 @@ func (x *FindArchivedRequest) String() string {
func (*FindArchivedRequest) ProtoMessage() {}
func (x *FindArchivedRequest) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[51]
mi := &file_items_items_proto_msgTypes[52]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -3299,7 +3330,7 @@ func (x *FindArchivedRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindArchivedRequest.ProtoReflect.Descriptor instead.
func (*FindArchivedRequest) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{51}
return file_items_items_proto_rawDescGZIP(), []int{52}
}
func (x *FindArchivedRequest) GetSpaceId() string {
......@@ -3349,7 +3380,7 @@ type FindArchivedResponse struct {
func (x *FindArchivedResponse) Reset() {
*x = FindArchivedResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_items_items_proto_msgTypes[52]
mi := &file_items_items_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
......@@ -3362,7 +3393,7 @@ func (x *FindArchivedResponse) String() string {
func (*FindArchivedResponse) ProtoMessage() {}
func (x *FindArchivedResponse) ProtoReflect() protoreflect.Message {
mi := &file_items_items_proto_msgTypes[52]
mi := &file_items_items_proto_msgTypes[53]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
......@@ -3375,7 +3406,7 @@ func (x *FindArchivedResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindArchivedResponse.ProtoReflect.Descriptor instead.
func (*FindArchivedResponse) Descriptor() ([]byte, []int) {
return file_items_items_proto_rawDescGZIP(), []int{52}
return file_items_items_proto_rawDescGZIP(), []int{53}
}
func (x *FindArchivedResponse) GetItems() []*Item {
......@@ -3565,371 +3596,373 @@ var file_items_items_proto_rawDesc = []byte{
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x70, 0x64,
0x61, 0x74, 0x65, 0x41, 0x74, 0x74, 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x61, 0x73,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x65, 0x72, 0x61, 0x73, 0x65, 0x22, 0x33,
0x0a, 0x0e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x73,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x74,
0x74, 0x72, 0x73, 0x22, 0x35, 0x0a, 0x10, 0x55, 0x6e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75,
0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0xb2, 0x01, 0x0a, 0x14, 0x46,
0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x65, 0x72, 0x61, 0x73, 0x65, 0x22, 0x34,
0x0a, 0x0f, 0x55, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72,
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41,
0x74, 0x74, 0x72, 0x73, 0x22, 0x33, 0x0a, 0x0e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
0x5f, 0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x70,
0x64, 0x61, 0x74, 0x65, 0x41, 0x74, 0x74, 0x72, 0x73, 0x22, 0x35, 0x0a, 0x10, 0x55, 0x6e, 0x70,
0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a,
0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x73, 0x18, 0x01, 0x20,
0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x74, 0x74, 0x72, 0x73,
0x22, 0xb2, 0x01, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68,
0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6d,
0x6d, 0x6f, 0x6e, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61,
0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63,
0x61, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72,
0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x12,
0x16, 0x0a, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x65, 0x6d, 0x70, 0x6c,
0x61, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x74, 0x65, 0x6d, 0x70,
0x6c, 0x61, 0x74, 0x65, 0x73, 0x22, 0x44, 0x0a, 0x13, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63,
0x68, 0x69, 0x76, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2d, 0x0a, 0x07,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x45, 0x0a, 0x14, 0x4c,
0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x46, 0x69,
0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x49, 0x64, 0x12,
0x18, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
0x52, 0x07, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x69, 0x64,
0x64, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65,
0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x18, 0x06,
0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x22,
0x44, 0x0a, 0x13, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x4f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x45, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2d, 0x0a,
0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x92, 0x01, 0x0a,
0x10, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06,
0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x46, 0x69, 0x65, 0x6c, 0x64, 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, 0xa4, 0x01, 0x0a, 0x19, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50,
0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
0x4c, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x34, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e,
0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68,
0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x39, 0x0a,
0x0b, 0x46, 0x69, 0x65, 0x6c, 0x64, 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, 0x70, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65,
0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74,
0x65, 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3f, 0x0a, 0x0e, 0x43, 0x72,
0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x07,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
0x6e, 0x73, 0x22, 0x92, 0x01, 0x0a, 0x10, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74,
0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45,
0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x39, 0x0a, 0x0b,
0x46, 0x69, 0x65, 0x6c, 0x64, 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, 0xa4, 0x01, 0x0a, 0x19, 0x41, 0x67, 0x67, 0x72,
0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4c, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50,
0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x66, 0x69, 0x65,
0x6c, 0x64, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x46, 0x69, 0x65, 0x6c, 0x64, 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, 0x70,
0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74,
0x65, 0x6d, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x22, 0x3c, 0x0a, 0x11, 0x49,
0x6e, 0x74, 0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49,
0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0xab, 0x01, 0x0a, 0x12, 0x49, 0x6e,
0x74, 0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49,
0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68,
0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d,
0x61, 0x12, 0x54, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63,
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x42, 0x61, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x56, 0x69, 0x6f, 0x6c,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x7c, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64,
0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07,
0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69,
0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x36, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0xc9, 0x01,
0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a,
0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f,
0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12,
0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c,
0x74, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x4f, 0x0a, 0x0c, 0x46, 0x69, 0x6e,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20,
0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x70, 0x0a, 0x0d, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69,
0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04,
0x69, 0x74, 0x65, 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x70, 0x0a, 0x0d,
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a,
0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d,
0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x81,
0x01, 0x0a, 0x0f, 0x55, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a,
0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65,
0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c,
0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65,
0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d,
0x49, 0x64, 0x22, 0x72, 0x0a, 0x0e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x37, 0x0a,
0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x50,
0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x76, 0x0a, 0x10, 0x55, 0x6e, 0x70, 0x75, 0x62, 0x6c,
0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74,
0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x22, 0x3f, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
0x64, 0x22, 0x3c, 0x0a, 0x11, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22,
0xab, 0x01, 0x0a, 0x12, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12,
0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x54, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x45, 0x72, 0x72, 0x6f,
0x72, 0x2e, 0x42, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x65,
0x6c, 0x64, 0x56, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x76, 0x61, 0x6c,
0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x7c, 0x0a,
0x0a, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73,
0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73,
0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a,
0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20,
0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x36, 0x0a, 0x0b, 0x47,
0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74,
0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69,
0x74, 0x65, 0x6d, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x6e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xc3,
0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49,
0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a,
0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69,
0x73, 0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3f, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69,
0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04,
0x74, 0x65, 0x6d, 0x22, 0xc9, 0x01, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15,
0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f,
0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66, 0x69,
0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65,
0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x07, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22,
0x4f, 0x0a, 0x0c, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x29, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49,
0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f,
0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c,
0x22, 0x70, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e,
0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x36, 0x0a, 0x07, 0x6f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x22, 0x70, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x36, 0x0a, 0x07,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x44, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x22, 0x74, 0x0a, 0x0f, 0x55, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d,
0x12, 0x38, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x55, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x72, 0x0a, 0x0e, 0x50, 0x75,
0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04,
0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52,
0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0xdb, 0x01, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75,
0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x37, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x76,
0x0a, 0x10, 0x55, 0x6e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73,
0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x39, 0x0a, 0x07, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x6e, 0x70,
0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xc3, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x75,
0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19,
0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76,
0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64,
0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69,
0x6c, 0x74, 0x65, 0x72, 0x12, 0x3d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73,
0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x22, 0x58, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69,
0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d,
0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c,
0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0xd3, 0x01,
0x0a, 0x10, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a,
0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65,
0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c,
0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66, 0x69, 0x6c,
0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72,
0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67,
0x61, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x22, 0x44, 0x0a, 0x11, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75,
0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63,
0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xe5, 0x01, 0x0a, 0x19, 0x41, 0x67,
0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65,
0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c,
0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d,
0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46,
0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x42, 0x0a,
0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41,
0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65,
0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x22, 0x4d, 0x0a, 0x1a, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75,
0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
0x22, 0xa5, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65,
0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65,
0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c,
0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17,
0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73,
0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65,
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x3e, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x52,
0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74,
0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0xc5, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73,
0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06,
0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e,
0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d,
0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49,
0x64, 0x12, 0x3d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x22, 0x42, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x22, 0x39, 0x0a, 0x0e, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22,
0x3b, 0x0a, 0x10, 0x55, 0x6e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0xd9, 0x01, 0x0a,
0x13, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12,
0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63,
0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66,
0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74,
0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x07, 0x6f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x57, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x64,
0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x29, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e,
0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74,
0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61,
0x6c, 0x32, 0x93, 0x0b, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x47, 0x0a, 0x06, 0x43,
0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x73, 0x70, 0x65,
0x63, 0x74, 0x12, 0x20, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x03, 0x47, 0x65, 0x74,
0x12, 0x19, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73,
0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x04, 0x46, 0x69, 0x6e,
0x64, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e,
0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64,
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x3c,
0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e,
0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3f, 0x0a, 0x14,
0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0xdb, 0x01,
0x0a, 0x14, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49,
0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a,
0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69,
0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x40, 0x0a, 0x06,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x40,
0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00,
0x12, 0x44, 0x0a, 0x08, 0x55, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1e, 0x2e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x6e, 0x64,
0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x3d, 0x0a, 0x07,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69,
0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x58, 0x0a, 0x15, 0x46,
0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12,
0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0xd3, 0x01, 0x0a, 0x10, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67,
0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70,
0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70,
0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d,
0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49,
0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
0x12, 0x39, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x44, 0x0a, 0x11, 0x41,
0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
0x74, 0x22, 0xe5, 0x01, 0x0a, 0x19, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50,
0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e,
0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49,
0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66,
0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65,
0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x4d, 0x0a, 0x1a, 0x41, 0x67, 0x67,
0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74,
0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xa5, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74,
0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x19, 0x0a, 0x08, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e,
0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49,
0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69,
0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12,
0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64,
0x22, 0x3e, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d,
0x22, 0xc5, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x70, 0x61,
0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x70, 0x61,
0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63,
0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64,
0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x07, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52,
0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x42, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74,
0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x29, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73,
0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x39, 0x0a, 0x0e,
0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27,
0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65,
0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0x3b, 0x0a, 0x10, 0x55, 0x6e, 0x61, 0x72, 0x63,
0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69,
0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04,
0x69, 0x74, 0x65, 0x6d, 0x22, 0xd9, 0x01, 0x0a, 0x13, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63,
0x68, 0x69, 0x76, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08,
0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x76, 0x5f, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x76, 0x49, 0x64, 0x12, 0x23,
0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74,
0x65, 0x72, 0x12, 0x3c, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x22, 0x57, 0x0a, 0x14, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01,
0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x32, 0x93, 0x0b, 0x0a, 0x05, 0x49, 0x74,
0x65, 0x6d, 0x73, 0x12, 0x47, 0x0a, 0x06, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x2e,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x72,
0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0a,
0x49, 0x6e, 0x74, 0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x12, 0x20, 0x2e, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x72, 0x6f,
0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x49, 0x6e, 0x74,
0x72, 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
0x00, 0x12, 0x3e, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
0x00, 0x12, 0x41, 0x0a, 0x04, 0x46, 0x69, 0x6e, 0x64, 0x12, 0x1a, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x22, 0x00, 0x12, 0x40, 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x07, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73,
0x68, 0x12, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x09, 0x55, 0x6e,
0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x6e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73,
0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x40, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x12, 0x1c, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73,
0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x08, 0x55, 0x6e, 0x64, 0x65,
0x6c, 0x65, 0x74, 0x65, 0x12, 0x1e, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x42,
0x0a, 0x07, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73,
0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68,
0x65, 0x64, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65,
0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73,
0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a,
0x0d, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x23,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46,
0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65,
0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x41,
0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61,
0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67,
0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6b, 0x0a,
0x12, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73,
0x68, 0x65, 0x64, 0x12, 0x28, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62,
0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e,
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67,
0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0b, 0x47, 0x65,
0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x2e, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74,
0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x73, 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76,
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
0x12, 0x42, 0x0a, 0x07, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x72, 0x63, 0x68,
0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68,
0x69, 0x76, 0x65, 0x64, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65,
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65,
0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63,
0x68, 0x69, 0x76, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
0x46, 0x0a, 0x09, 0x55, 0x6e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x12, 0x1f, 0x2e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x6e, 0x61,
0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x42, 0x30, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x2e, 0x70,
0x65, 0x72, 0x78, 0x2e, 0x72, 0x75, 0x2f, 0x70, 0x65, 0x72, 0x78, 0x69, 0x73, 0x2f, 0x70, 0x65,
0x72, 0x78, 0x69, 0x73, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x3b, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
0x22, 0x00, 0x12, 0x46, 0x0a, 0x09, 0x55, 0x6e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12,
0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e,
0x55, 0x6e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c, 0x47, 0x65,
0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x22, 0x2e, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75,
0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23,
0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47,
0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62,
0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69,
0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x64,
0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x09, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65,
0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73,
0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x20, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6b, 0x0a, 0x12, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61,
0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x28, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72,
0x65, 0x67, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50,
0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x22, 0x00, 0x12, 0x56, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x12, 0x21, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x0d, 0x4c, 0x69,
0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x23, 0x2e, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74,
0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x24, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73,
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x07, 0x41, 0x72, 0x63, 0x68,
0x69, 0x76, 0x65, 0x12, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74,
0x65, 0x6d, 0x73, 0x2e, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0c,
0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x12, 0x22, 0x2e, 0x63,
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x46, 0x69, 0x6e,
0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x23, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73,
0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x09, 0x55, 0x6e, 0x61, 0x72, 0x63,
0x68, 0x69, 0x76, 0x65, 0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69,
0x74, 0x65, 0x6d, 0x73, 0x2e, 0x55, 0x6e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x42,
0x30, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x2e, 0x70, 0x65, 0x72, 0x78, 0x2e, 0x72, 0x75, 0x2f, 0x70,
0x65, 0x72, 0x78, 0x69, 0x73, 0x2f, 0x70, 0x65, 0x72, 0x78, 0x69, 0x73, 0x2d, 0x67, 0x6f, 0x2f,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x3b, 0x69, 0x74, 0x65, 0x6d,
0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
......@@ -3945,7 +3978,7 @@ func file_items_items_proto_rawDescGZIP() []byte {
}
var file_items_items_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_items_items_proto_msgTypes = make([]protoimpl.MessageInfo, 56)
var file_items_items_proto_msgTypes = make([]protoimpl.MessageInfo, 57)
var file_items_items_proto_goTypes = []interface{}{
(Item_State)(0), // 0: content.items.Item.State
(*Error)(nil), // 1: content.items.Error
......@@ -3965,78 +3998,79 @@ var file_items_items_proto_goTypes = []interface{}{
(*UpdateOptions)(nil), // 15: content.items.UpdateOptions
(*GetPublishedOptions)(nil), // 16: content.items.GetPublishedOptions
(*DeleteOptions)(nil), // 17: content.items.DeleteOptions
(*PublishOptions)(nil), // 18: content.items.PublishOptions
(*UnpublishOptions)(nil), // 19: content.items.UnpublishOptions
(*FindPublishedOptions)(nil), // 20: content.items.FindPublishedOptions
(*FindArchivedOptions)(nil), // 21: content.items.FindArchivedOptions
(*ListRevisionsOptions)(nil), // 22: content.items.ListRevisionsOptions
(*AggregateOptions)(nil), // 23: content.items.AggregateOptions
(*AggregatePublishedOptions)(nil), // 24: content.items.AggregatePublishedOptions
(*CreateRequest)(nil), // 25: content.items.CreateRequest
(*CreateResponse)(nil), // 26: content.items.CreateResponse
(*IntrospectRequest)(nil), // 27: content.items.IntrospectRequest
(*IntrospectResponse)(nil), // 28: content.items.IntrospectResponse
(*GetRequest)(nil), // 29: content.items.GetRequest
(*GetResponse)(nil), // 30: content.items.GetResponse
(*FindRequest)(nil), // 31: content.items.FindRequest
(*FindResponse)(nil), // 32: content.items.FindResponse
(*UpdateRequest)(nil), // 33: content.items.UpdateRequest
(*DeleteRequest)(nil), // 34: content.items.DeleteRequest
(*UndeleteRequest)(nil), // 35: content.items.UndeleteRequest
(*PublishRequest)(nil), // 36: content.items.PublishRequest
(*UnpublishRequest)(nil), // 37: content.items.UnpublishRequest
(*GetPublishedRequest)(nil), // 38: content.items.GetPublishedRequest
(*GetPublishedResponse)(nil), // 39: content.items.GetPublishedResponse
(*FindPublishedRequest)(nil), // 40: content.items.FindPublishedRequest
(*FindPublishedResponse)(nil), // 41: content.items.FindPublishedResponse
(*AggregateRequest)(nil), // 42: content.items.AggregateRequest
(*AggregateResponse)(nil), // 43: content.items.AggregateResponse
(*AggregatePublishedRequest)(nil), // 44: content.items.AggregatePublishedRequest
(*AggregatePublishedResponse)(nil), // 45: content.items.AggregatePublishedResponse
(*GetRevisionRequest)(nil), // 46: content.items.GetRevisionRequest
(*GetRevisionResponse)(nil), // 47: content.items.GetRevisionResponse
(*ListRevisionsRequest)(nil), // 48: content.items.ListRevisionsRequest
(*ListRevisionsResponse)(nil), // 49: content.items.ListRevisionsResponse
(*ArchiveRequest)(nil), // 50: content.items.ArchiveRequest
(*UnarchiveRequest)(nil), // 51: content.items.UnarchiveRequest
(*FindArchivedRequest)(nil), // 52: content.items.FindArchivedRequest
(*FindArchivedResponse)(nil), // 53: content.items.FindArchivedResponse
nil, // 54: content.items.Item.TranslationsEntry
nil, // 55: content.items.AggregateOptions.FieldsEntry
nil, // 56: content.items.AggregatePublishedOptions.FieldsEntry
(*timestamppb.Timestamp)(nil), // 57: google.protobuf.Timestamp
(*structpb.Struct)(nil), // 58: google.protobuf.Struct
(*common.Filter)(nil), // 59: common.Filter
(*common.FindOptions)(nil), // 60: common.FindOptions
(*common.Error_BadRequest_FieldViolation)(nil), // 61: common.Error.BadRequest.FieldViolation
(*emptypb.Empty)(nil), // 62: google.protobuf.Empty
(*UndeleteOptions)(nil), // 18: content.items.UndeleteOptions
(*PublishOptions)(nil), // 19: content.items.PublishOptions
(*UnpublishOptions)(nil), // 20: content.items.UnpublishOptions
(*FindPublishedOptions)(nil), // 21: content.items.FindPublishedOptions
(*FindArchivedOptions)(nil), // 22: content.items.FindArchivedOptions
(*ListRevisionsOptions)(nil), // 23: content.items.ListRevisionsOptions
(*AggregateOptions)(nil), // 24: content.items.AggregateOptions
(*AggregatePublishedOptions)(nil), // 25: content.items.AggregatePublishedOptions
(*CreateRequest)(nil), // 26: content.items.CreateRequest
(*CreateResponse)(nil), // 27: content.items.CreateResponse
(*IntrospectRequest)(nil), // 28: content.items.IntrospectRequest
(*IntrospectResponse)(nil), // 29: content.items.IntrospectResponse
(*GetRequest)(nil), // 30: content.items.GetRequest
(*GetResponse)(nil), // 31: content.items.GetResponse
(*FindRequest)(nil), // 32: content.items.FindRequest
(*FindResponse)(nil), // 33: content.items.FindResponse
(*UpdateRequest)(nil), // 34: content.items.UpdateRequest
(*DeleteRequest)(nil), // 35: content.items.DeleteRequest
(*UndeleteRequest)(nil), // 36: content.items.UndeleteRequest
(*PublishRequest)(nil), // 37: content.items.PublishRequest
(*UnpublishRequest)(nil), // 38: content.items.UnpublishRequest
(*GetPublishedRequest)(nil), // 39: content.items.GetPublishedRequest
(*GetPublishedResponse)(nil), // 40: content.items.GetPublishedResponse
(*FindPublishedRequest)(nil), // 41: content.items.FindPublishedRequest
(*FindPublishedResponse)(nil), // 42: content.items.FindPublishedResponse
(*AggregateRequest)(nil), // 43: content.items.AggregateRequest
(*AggregateResponse)(nil), // 44: content.items.AggregateResponse
(*AggregatePublishedRequest)(nil), // 45: content.items.AggregatePublishedRequest
(*AggregatePublishedResponse)(nil), // 46: content.items.AggregatePublishedResponse
(*GetRevisionRequest)(nil), // 47: content.items.GetRevisionRequest
(*GetRevisionResponse)(nil), // 48: content.items.GetRevisionResponse
(*ListRevisionsRequest)(nil), // 49: content.items.ListRevisionsRequest
(*ListRevisionsResponse)(nil), // 50: content.items.ListRevisionsResponse
(*ArchiveRequest)(nil), // 51: content.items.ArchiveRequest
(*UnarchiveRequest)(nil), // 52: content.items.UnarchiveRequest
(*FindArchivedRequest)(nil), // 53: content.items.FindArchivedRequest
(*FindArchivedResponse)(nil), // 54: content.items.FindArchivedResponse
nil, // 55: content.items.Item.TranslationsEntry
nil, // 56: content.items.AggregateOptions.FieldsEntry
nil, // 57: content.items.AggregatePublishedOptions.FieldsEntry
(*timestamppb.Timestamp)(nil), // 58: google.protobuf.Timestamp
(*structpb.Struct)(nil), // 59: google.protobuf.Struct
(*common.Filter)(nil), // 60: common.Filter
(*common.FindOptions)(nil), // 61: common.FindOptions
(*common.Error_BadRequest_FieldViolation)(nil), // 62: common.Error.BadRequest.FieldViolation
(*emptypb.Empty)(nil), // 63: google.protobuf.Empty
}
var file_items_items_proto_depIdxs = []int32{
1, // 0: content.items.DecodeError.errors:type_name -> content.items.Error
1, // 1: content.items.ValidationError.errors:type_name -> content.items.Error
1, // 2: content.items.ModificationError.errors:type_name -> content.items.Error
0, // 3: content.items.Item.state:type_name -> content.items.Item.State
57, // 4: content.items.Item.created_rev_at:type_name -> google.protobuf.Timestamp
57, // 5: content.items.Item.created_at:type_name -> google.protobuf.Timestamp
57, // 6: content.items.Item.updated_at:type_name -> google.protobuf.Timestamp
58, // 7: content.items.Item.data:type_name -> google.protobuf.Struct
54, // 8: content.items.Item.translations:type_name -> content.items.Item.TranslationsEntry
57, // 9: content.items.Item.published_at:type_name -> google.protobuf.Timestamp
57, // 10: content.items.Item.archived_at:type_name -> google.protobuf.Timestamp
58, // 4: content.items.Item.created_rev_at:type_name -> google.protobuf.Timestamp
58, // 5: content.items.Item.created_at:type_name -> google.protobuf.Timestamp
58, // 6: content.items.Item.updated_at:type_name -> google.protobuf.Timestamp
59, // 7: content.items.Item.data:type_name -> google.protobuf.Struct
55, // 8: content.items.Item.translations:type_name -> content.items.Item.TranslationsEntry
58, // 9: content.items.Item.published_at:type_name -> google.protobuf.Timestamp
58, // 10: content.items.Item.archived_at:type_name -> google.protobuf.Timestamp
5, // 11: content.items.Item.permissions:type_name -> content.items.Permissions
59, // 12: content.items.Filter.data:type_name -> common.Filter
60, // 13: content.items.FindOptions.options:type_name -> common.FindOptions
60, // 14: content.items.FindPublishedOptions.options:type_name -> common.FindOptions
60, // 15: content.items.FindArchivedOptions.options:type_name -> common.FindOptions
60, // 16: content.items.ListRevisionsOptions.options:type_name -> common.FindOptions
55, // 17: content.items.AggregateOptions.fields:type_name -> content.items.AggregateOptions.FieldsEntry
56, // 18: content.items.AggregatePublishedOptions.fields:type_name -> content.items.AggregatePublishedOptions.FieldsEntry
60, // 12: content.items.Filter.data:type_name -> common.Filter
61, // 13: content.items.FindOptions.options:type_name -> common.FindOptions
61, // 14: content.items.FindPublishedOptions.options:type_name -> common.FindOptions
61, // 15: content.items.FindArchivedOptions.options:type_name -> common.FindOptions
61, // 16: content.items.ListRevisionsOptions.options:type_name -> common.FindOptions
56, // 17: content.items.AggregateOptions.fields:type_name -> content.items.AggregateOptions.FieldsEntry
57, // 18: content.items.AggregatePublishedOptions.fields:type_name -> content.items.AggregatePublishedOptions.FieldsEntry
6, // 19: content.items.CreateRequest.item:type_name -> content.items.Item
13, // 20: content.items.CreateRequest.options:type_name -> content.items.CreateOptions
6, // 21: content.items.CreateResponse.created:type_name -> content.items.Item
6, // 22: content.items.IntrospectRequest.item:type_name -> content.items.Item
6, // 23: content.items.IntrospectResponse.item:type_name -> content.items.Item
61, // 24: content.items.IntrospectResponse.validation_errors:type_name -> common.Error.BadRequest.FieldViolation
62, // 24: content.items.IntrospectResponse.validation_errors:type_name -> common.Error.BadRequest.FieldViolation
6, // 25: content.items.GetResponse.item:type_name -> content.items.Item
12, // 26: content.items.FindRequest.filter:type_name -> content.items.Filter
14, // 27: content.items.FindRequest.options:type_name -> content.items.FindOptions
......@@ -4045,71 +4079,73 @@ var file_items_items_proto_depIdxs = []int32{
15, // 30: content.items.UpdateRequest.options:type_name -> content.items.UpdateOptions
6, // 31: content.items.DeleteRequest.item:type_name -> content.items.Item
17, // 32: content.items.DeleteRequest.options:type_name -> content.items.DeleteOptions
6, // 33: content.items.PublishRequest.item:type_name -> content.items.Item
18, // 34: content.items.PublishRequest.options:type_name -> content.items.PublishOptions
6, // 35: content.items.UnpublishRequest.item:type_name -> content.items.Item
19, // 36: content.items.UnpublishRequest.options:type_name -> content.items.UnpublishOptions
16, // 37: content.items.GetPublishedRequest.options:type_name -> content.items.GetPublishedOptions
6, // 38: content.items.GetPublishedResponse.item:type_name -> content.items.Item
12, // 39: content.items.FindPublishedRequest.filter:type_name -> content.items.Filter
20, // 40: content.items.FindPublishedRequest.options:type_name -> content.items.FindPublishedOptions
6, // 41: content.items.FindPublishedResponse.items:type_name -> content.items.Item
12, // 42: content.items.AggregateRequest.filter:type_name -> content.items.Filter
23, // 43: content.items.AggregateRequest.options:type_name -> content.items.AggregateOptions
58, // 44: content.items.AggregateResponse.result:type_name -> google.protobuf.Struct
12, // 45: content.items.AggregatePublishedRequest.filter:type_name -> content.items.Filter
24, // 46: content.items.AggregatePublishedRequest.options:type_name -> content.items.AggregatePublishedOptions
58, // 47: content.items.AggregatePublishedResponse.result:type_name -> google.protobuf.Struct
6, // 48: content.items.GetRevisionResponse.item:type_name -> content.items.Item
22, // 49: content.items.ListRevisionsRequest.options:type_name -> content.items.ListRevisionsOptions
6, // 50: content.items.ListRevisionsResponse.items:type_name -> content.items.Item
6, // 51: content.items.ArchiveRequest.item:type_name -> content.items.Item
6, // 52: content.items.UnarchiveRequest.item:type_name -> content.items.Item
12, // 53: content.items.FindArchivedRequest.filter:type_name -> content.items.Filter
21, // 54: content.items.FindArchivedRequest.options:type_name -> content.items.FindArchivedOptions
6, // 55: content.items.FindArchivedResponse.items:type_name -> content.items.Item
58, // 56: content.items.Item.TranslationsEntry.value:type_name -> google.protobuf.Struct
25, // 57: content.items.Items.Create:input_type -> content.items.CreateRequest
27, // 58: content.items.Items.Introspect:input_type -> content.items.IntrospectRequest
29, // 59: content.items.Items.Get:input_type -> content.items.GetRequest
31, // 60: content.items.Items.Find:input_type -> content.items.FindRequest
33, // 61: content.items.Items.Update:input_type -> content.items.UpdateRequest
34, // 62: content.items.Items.Delete:input_type -> content.items.DeleteRequest
35, // 63: content.items.Items.Undelete:input_type -> content.items.UndeleteRequest
36, // 64: content.items.Items.Publish:input_type -> content.items.PublishRequest
37, // 65: content.items.Items.Unpublish:input_type -> content.items.UnpublishRequest
38, // 66: content.items.Items.GetPublished:input_type -> content.items.GetPublishedRequest
40, // 67: content.items.Items.FindPublished:input_type -> content.items.FindPublishedRequest
42, // 68: content.items.Items.Aggregate:input_type -> content.items.AggregateRequest
44, // 69: content.items.Items.AggregatePublished:input_type -> content.items.AggregatePublishedRequest
46, // 70: content.items.Items.GetRevision:input_type -> content.items.GetRevisionRequest
48, // 71: content.items.Items.ListRevisions:input_type -> content.items.ListRevisionsRequest
50, // 72: content.items.Items.Archive:input_type -> content.items.ArchiveRequest
52, // 73: content.items.Items.FindArchived:input_type -> content.items.FindArchivedRequest
51, // 74: content.items.Items.Unarchive:input_type -> content.items.UnarchiveRequest
26, // 75: content.items.Items.Create:output_type -> content.items.CreateResponse
28, // 76: content.items.Items.Introspect:output_type -> content.items.IntrospectResponse
30, // 77: content.items.Items.Get:output_type -> content.items.GetResponse
32, // 78: content.items.Items.Find:output_type -> content.items.FindResponse
62, // 79: content.items.Items.Update:output_type -> google.protobuf.Empty
62, // 80: content.items.Items.Delete:output_type -> google.protobuf.Empty
62, // 81: content.items.Items.Undelete:output_type -> google.protobuf.Empty
62, // 82: content.items.Items.Publish:output_type -> google.protobuf.Empty
62, // 83: content.items.Items.Unpublish:output_type -> google.protobuf.Empty
39, // 84: content.items.Items.GetPublished:output_type -> content.items.GetPublishedResponse
41, // 85: content.items.Items.FindPublished:output_type -> content.items.FindPublishedResponse
43, // 86: content.items.Items.Aggregate:output_type -> content.items.AggregateResponse
45, // 87: content.items.Items.AggregatePublished:output_type -> content.items.AggregatePublishedResponse
47, // 88: content.items.Items.GetRevision:output_type -> content.items.GetRevisionResponse
49, // 89: content.items.Items.ListRevisions:output_type -> content.items.ListRevisionsResponse
62, // 90: content.items.Items.Archive:output_type -> google.protobuf.Empty
53, // 91: content.items.Items.FindArchived:output_type -> content.items.FindArchivedResponse
62, // 92: content.items.Items.Unarchive:output_type -> google.protobuf.Empty
75, // [75:93] is the sub-list for method output_type
57, // [57:75] is the sub-list for method input_type
57, // [57:57] is the sub-list for extension type_name
57, // [57:57] is the sub-list for extension extendee
0, // [0:57] is the sub-list for field type_name
6, // 33: content.items.UndeleteRequest.item:type_name -> content.items.Item
18, // 34: content.items.UndeleteRequest.options:type_name -> content.items.UndeleteOptions
6, // 35: content.items.PublishRequest.item:type_name -> content.items.Item
19, // 36: content.items.PublishRequest.options:type_name -> content.items.PublishOptions
6, // 37: content.items.UnpublishRequest.item:type_name -> content.items.Item
20, // 38: content.items.UnpublishRequest.options:type_name -> content.items.UnpublishOptions
16, // 39: content.items.GetPublishedRequest.options:type_name -> content.items.GetPublishedOptions
6, // 40: content.items.GetPublishedResponse.item:type_name -> content.items.Item
12, // 41: content.items.FindPublishedRequest.filter:type_name -> content.items.Filter
21, // 42: content.items.FindPublishedRequest.options:type_name -> content.items.FindPublishedOptions
6, // 43: content.items.FindPublishedResponse.items:type_name -> content.items.Item
12, // 44: content.items.AggregateRequest.filter:type_name -> content.items.Filter
24, // 45: content.items.AggregateRequest.options:type_name -> content.items.AggregateOptions
59, // 46: content.items.AggregateResponse.result:type_name -> google.protobuf.Struct
12, // 47: content.items.AggregatePublishedRequest.filter:type_name -> content.items.Filter
25, // 48: content.items.AggregatePublishedRequest.options:type_name -> content.items.AggregatePublishedOptions
59, // 49: content.items.AggregatePublishedResponse.result:type_name -> google.protobuf.Struct
6, // 50: content.items.GetRevisionResponse.item:type_name -> content.items.Item
23, // 51: content.items.ListRevisionsRequest.options:type_name -> content.items.ListRevisionsOptions
6, // 52: content.items.ListRevisionsResponse.items:type_name -> content.items.Item
6, // 53: content.items.ArchiveRequest.item:type_name -> content.items.Item
6, // 54: content.items.UnarchiveRequest.item:type_name -> content.items.Item
12, // 55: content.items.FindArchivedRequest.filter:type_name -> content.items.Filter
22, // 56: content.items.FindArchivedRequest.options:type_name -> content.items.FindArchivedOptions
6, // 57: content.items.FindArchivedResponse.items:type_name -> content.items.Item
59, // 58: content.items.Item.TranslationsEntry.value:type_name -> google.protobuf.Struct
26, // 59: content.items.Items.Create:input_type -> content.items.CreateRequest
28, // 60: content.items.Items.Introspect:input_type -> content.items.IntrospectRequest
30, // 61: content.items.Items.Get:input_type -> content.items.GetRequest
32, // 62: content.items.Items.Find:input_type -> content.items.FindRequest
34, // 63: content.items.Items.Update:input_type -> content.items.UpdateRequest
35, // 64: content.items.Items.Delete:input_type -> content.items.DeleteRequest
36, // 65: content.items.Items.Undelete:input_type -> content.items.UndeleteRequest
37, // 66: content.items.Items.Publish:input_type -> content.items.PublishRequest
38, // 67: content.items.Items.Unpublish:input_type -> content.items.UnpublishRequest
39, // 68: content.items.Items.GetPublished:input_type -> content.items.GetPublishedRequest
41, // 69: content.items.Items.FindPublished:input_type -> content.items.FindPublishedRequest
43, // 70: content.items.Items.Aggregate:input_type -> content.items.AggregateRequest
45, // 71: content.items.Items.AggregatePublished:input_type -> content.items.AggregatePublishedRequest
47, // 72: content.items.Items.GetRevision:input_type -> content.items.GetRevisionRequest
49, // 73: content.items.Items.ListRevisions:input_type -> content.items.ListRevisionsRequest
51, // 74: content.items.Items.Archive:input_type -> content.items.ArchiveRequest
53, // 75: content.items.Items.FindArchived:input_type -> content.items.FindArchivedRequest
52, // 76: content.items.Items.Unarchive:input_type -> content.items.UnarchiveRequest
27, // 77: content.items.Items.Create:output_type -> content.items.CreateResponse
29, // 78: content.items.Items.Introspect:output_type -> content.items.IntrospectResponse
31, // 79: content.items.Items.Get:output_type -> content.items.GetResponse
33, // 80: content.items.Items.Find:output_type -> content.items.FindResponse
63, // 81: content.items.Items.Update:output_type -> google.protobuf.Empty
63, // 82: content.items.Items.Delete:output_type -> google.protobuf.Empty
63, // 83: content.items.Items.Undelete:output_type -> google.protobuf.Empty
63, // 84: content.items.Items.Publish:output_type -> google.protobuf.Empty
63, // 85: content.items.Items.Unpublish:output_type -> google.protobuf.Empty
40, // 86: content.items.Items.GetPublished:output_type -> content.items.GetPublishedResponse
42, // 87: content.items.Items.FindPublished:output_type -> content.items.FindPublishedResponse
44, // 88: content.items.Items.Aggregate:output_type -> content.items.AggregateResponse
46, // 89: content.items.Items.AggregatePublished:output_type -> content.items.AggregatePublishedResponse
48, // 90: content.items.Items.GetRevision:output_type -> content.items.GetRevisionResponse
50, // 91: content.items.Items.ListRevisions:output_type -> content.items.ListRevisionsResponse
63, // 92: content.items.Items.Archive:output_type -> google.protobuf.Empty
54, // 93: content.items.Items.FindArchived:output_type -> content.items.FindArchivedResponse
63, // 94: content.items.Items.Unarchive:output_type -> google.protobuf.Empty
77, // [77:95] is the sub-list for method output_type
59, // [59:77] is the sub-list for method input_type
59, // [59:59] is the sub-list for extension type_name
59, // [59:59] is the sub-list for extension extendee
0, // [0:59] is the sub-list for field type_name
}
func init() { file_items_items_proto_init() }
......@@ -4323,7 +4359,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PublishOptions); i {
switch v := v.(*UndeleteOptions); i {
case 0:
return &v.state
case 1:
......@@ -4335,7 +4371,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UnpublishOptions); i {
switch v := v.(*PublishOptions); i {
case 0:
return &v.state
case 1:
......@@ -4347,7 +4383,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindPublishedOptions); i {
switch v := v.(*UnpublishOptions); i {
case 0:
return &v.state
case 1:
......@@ -4359,7 +4395,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindArchivedOptions); i {
switch v := v.(*FindPublishedOptions); i {
case 0:
return &v.state
case 1:
......@@ -4371,7 +4407,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRevisionsOptions); i {
switch v := v.(*FindArchivedOptions); i {
case 0:
return &v.state
case 1:
......@@ -4383,7 +4419,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AggregateOptions); i {
switch v := v.(*ListRevisionsOptions); i {
case 0:
return &v.state
case 1:
......@@ -4395,7 +4431,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AggregatePublishedOptions); i {
switch v := v.(*AggregateOptions); i {
case 0:
return &v.state
case 1:
......@@ -4407,7 +4443,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateRequest); i {
switch v := v.(*AggregatePublishedOptions); i {
case 0:
return &v.state
case 1:
......@@ -4419,7 +4455,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateResponse); i {
switch v := v.(*CreateRequest); i {
case 0:
return &v.state
case 1:
......@@ -4431,7 +4467,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IntrospectRequest); i {
switch v := v.(*CreateResponse); i {
case 0:
return &v.state
case 1:
......@@ -4443,7 +4479,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IntrospectResponse); i {
switch v := v.(*IntrospectRequest); i {
case 0:
return &v.state
case 1:
......@@ -4455,7 +4491,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetRequest); i {
switch v := v.(*IntrospectResponse); i {
case 0:
return &v.state
case 1:
......@@ -4467,7 +4503,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetResponse); i {
switch v := v.(*GetRequest); i {
case 0:
return &v.state
case 1:
......@@ -4479,7 +4515,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindRequest); i {
switch v := v.(*GetResponse); i {
case 0:
return &v.state
case 1:
......@@ -4491,7 +4527,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindResponse); i {
switch v := v.(*FindRequest); i {
case 0:
return &v.state
case 1:
......@@ -4503,7 +4539,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateRequest); i {
switch v := v.(*FindResponse); i {
case 0:
return &v.state
case 1:
......@@ -4515,7 +4551,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteRequest); i {
switch v := v.(*UpdateRequest); i {
case 0:
return &v.state
case 1:
......@@ -4527,7 +4563,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UndeleteRequest); i {
switch v := v.(*DeleteRequest); i {
case 0:
return &v.state
case 1:
......@@ -4539,7 +4575,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PublishRequest); i {
switch v := v.(*UndeleteRequest); i {
case 0:
return &v.state
case 1:
......@@ -4551,7 +4587,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UnpublishRequest); i {
switch v := v.(*PublishRequest); i {
case 0:
return &v.state
case 1:
......@@ -4563,7 +4599,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetPublishedRequest); i {
switch v := v.(*UnpublishRequest); i {
case 0:
return &v.state
case 1:
......@@ -4575,7 +4611,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetPublishedResponse); i {
switch v := v.(*GetPublishedRequest); i {
case 0:
return &v.state
case 1:
......@@ -4587,7 +4623,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindPublishedRequest); i {
switch v := v.(*GetPublishedResponse); i {
case 0:
return &v.state
case 1:
......@@ -4599,7 +4635,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindPublishedResponse); i {
switch v := v.(*FindPublishedRequest); i {
case 0:
return &v.state
case 1:
......@@ -4611,7 +4647,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AggregateRequest); i {
switch v := v.(*FindPublishedResponse); i {
case 0:
return &v.state
case 1:
......@@ -4623,7 +4659,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AggregateResponse); i {
switch v := v.(*AggregateRequest); i {
case 0:
return &v.state
case 1:
......@@ -4635,7 +4671,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AggregatePublishedRequest); i {
switch v := v.(*AggregateResponse); i {
case 0:
return &v.state
case 1:
......@@ -4647,7 +4683,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AggregatePublishedResponse); i {
switch v := v.(*AggregatePublishedRequest); i {
case 0:
return &v.state
case 1:
......@@ -4659,7 +4695,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetRevisionRequest); i {
switch v := v.(*AggregatePublishedResponse); i {
case 0:
return &v.state
case 1:
......@@ -4671,7 +4707,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetRevisionResponse); i {
switch v := v.(*GetRevisionRequest); i {
case 0:
return &v.state
case 1:
......@@ -4683,7 +4719,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRevisionsRequest); i {
switch v := v.(*GetRevisionResponse); i {
case 0:
return &v.state
case 1:
......@@ -4695,7 +4731,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRevisionsResponse); i {
switch v := v.(*ListRevisionsRequest); i {
case 0:
return &v.state
case 1:
......@@ -4707,7 +4743,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ArchiveRequest); i {
switch v := v.(*ListRevisionsResponse); i {
case 0:
return &v.state
case 1:
......@@ -4719,7 +4755,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UnarchiveRequest); i {
switch v := v.(*ArchiveRequest); i {
case 0:
return &v.state
case 1:
......@@ -4731,7 +4767,7 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindArchivedRequest); i {
switch v := v.(*UnarchiveRequest); i {
case 0:
return &v.state
case 1:
......@@ -4743,6 +4779,18 @@ func file_items_items_proto_init() {
}
}
file_items_items_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindArchivedRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_items_items_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindArchivedResponse); i {
case 0:
return &v.state
......@@ -4761,7 +4809,7 @@ func file_items_items_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_items_items_proto_rawDesc,
NumEnums: 1,
NumMessages: 56,
NumMessages: 57,
NumExtensions: 0,
NumServices: 1,
},
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment