diff --git a/pkg/items/middleware/access_logging_middleware.go b/pkg/items/middleware/access_logging_middleware.go index a139dfe951ac200d3290903c861b95393008a945..b12ac020a52c4209f67eec5d0f4284ebdca01204 100644 --- a/pkg/items/middleware/access_logging_middleware.go +++ b/pkg/items/middleware/access_logging_middleware.go @@ -254,6 +254,29 @@ func (m *accessLoggingMiddleware) Get(ctx context.Context, spaceId string, envId return item, err } +func (m *accessLoggingMiddleware) GetArchived(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetArchivedOptions) (item *items.Item, err error) { + begin := time.Now() + + m.logger.Debug("GetArchived.Request", + zap.Reflect("principal", auth.GetPrincipal(ctx)), + zap.Reflect("spaceId", spaceId), + zap.Reflect("envId", envId), + zap.Reflect("collectionId", collectionId), + zap.Reflect("id", id), + zap.Reflect("options", options), + ) + + item, err = m.next.GetArchived(ctx, spaceId, envId, collectionId, id, options...) + + m.logger.Debug("GetArchived.Response", + zap.Duration("time", time.Since(begin)), + zap.Reflect("item", item), + zap.Error(err), + ) + + return item, err +} + func (m *accessLoggingMiddleware) GetPublished(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetPublishedOptions) (item *items.Item, err error) { begin := time.Now() diff --git a/pkg/items/middleware/client_encode_middleware.go b/pkg/items/middleware/client_encode_middleware.go index 358df0eef665200bac4b9f75c6272c71a6597e21..315d6cd91c946a85bd265faec2677f507574f106 100644 --- a/pkg/items/middleware/client_encode_middleware.go +++ b/pkg/items/middleware/client_encode_middleware.go @@ -227,6 +227,20 @@ func (m *encodeDecodeMiddleware) ListRevisions(ctx context.Context, spaceId, env return } +func (m *encodeDecodeMiddleware) GetArchived(ctx context.Context, spaceID, envID, collectionID, + id string, options ...*items.GetArchivedOptions) (*items.Item, error) { + item, err := m.next.GetArchived(ctx, spaceID, envID, collectionID, id, options...) + if err != nil { + return nil, err + } + + col, err := m.colls.Get(ctx, spaceID, envID, collectionID) + if err != nil { + return nil, err + } + return item.Decode(ctx, col.Schema) +} + func (m *encodeDecodeMiddleware) FindArchived(ctx context.Context, spaceId, envId, collectionId string, filter *items.Filter, options ...*items.FindArchivedOptions) (items []*items.Item, total int, err error) { items, total, err = m.next.FindArchived(ctx, spaceId, envId, collectionId, filter, options...) if err == nil && total > 0 { diff --git a/pkg/items/middleware/logging_middleware.go b/pkg/items/middleware/logging_middleware.go index 6443d727805addfd9192e2010c3f6c9586a5409e..6f0933d3abde50da1d84c6be1c5602ced7d96d0b 100644 --- a/pkg/items/middleware/logging_middleware.go +++ b/pkg/items/middleware/logging_middleware.go @@ -219,6 +219,22 @@ func (m *loggingMiddleware) GetRevision(ctx context.Context, spaceId string, env return item, err } +func (m *loggingMiddleware) GetArchived(ctx context.Context, spaceID string, envID string, collectionID string, + id string, options ...*items.GetArchivedOptions) (*items.Item, error) { + logger := m.logger.With( + logzap.Caller(ctx, logzap.WithSpace(spaceID)), + logzap.Object(pkgId.NewItemId(spaceID, envID, collectionID, id)), + ) + + item, err := m.next.GetArchived(ctx, spaceID, envID, collectionID, id, options...) + if err != nil { + logger.Error("Failed to get revision", zap.Error(err)) + return nil, err + } + + return item, nil +} + func (m *loggingMiddleware) Introspect(ctx context.Context, item *items.Item, opts ...*items.IntrospectOptions) (itm *items.Item, sch *schema.Schema, err error) { var spaceID string if item != nil { diff --git a/pkg/items/middleware/middleware.go b/pkg/items/middleware/middleware.go index 3de56ead553a815f7ad874ab6065940819daf711..4ef6a1fd2a0e2aec25d759d75d2e40d699ad7e06 100644 --- a/pkg/items/middleware/middleware.go +++ b/pkg/items/middleware/middleware.go @@ -7,7 +7,7 @@ package middleware //go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/items -i Items -t ../../../assets/templates/middleware/middleware.tmpl -o middleware.go -l "" import ( - items "git.perx.ru/perxis/perxis-go/pkg/items" + "git.perx.ru/perxis/perxis-go/pkg/items" "go.uber.org/zap" ) diff --git a/pkg/items/middleware/recovering_middleware.go b/pkg/items/middleware/recovering_middleware.go index 787ccf1b5ac4fbd5171f7ecbabd282217df170e3..a542633a537e685fe71d70987483779e1e5d7a05 100644 --- a/pkg/items/middleware/recovering_middleware.go +++ b/pkg/items/middleware/recovering_middleware.go @@ -151,6 +151,18 @@ func (m *recoveringMiddleware) Get(ctx context.Context, spaceId string, envId st return m.next.Get(ctx, spaceId, envId, collectionId, id, options...) } +func (m *recoveringMiddleware) GetArchived(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetArchivedOptions) (item *items.Item, err error) { + logger := m.logger + defer func() { + if r := recover(); r != nil { + logger.Error("panic", zap.Error(fmt.Errorf("%v", r))) + err = fmt.Errorf("%v", r) + } + }() + + return m.next.GetArchived(ctx, spaceId, envId, collectionId, id, options...) +} + func (m *recoveringMiddleware) GetPublished(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetPublishedOptions) (item *items.Item, err error) { logger := m.logger defer func() { diff --git a/pkg/items/middleware/telemetry_middleware.go b/pkg/items/middleware/telemetry_middleware.go index a932f289d7ae05d0e1337415b2d07d4953e8935f..8d8bfbb907447168b2632de45fe5b6a749e4ec06 100644 --- a/pkg/items/middleware/telemetry_middleware.go +++ b/pkg/items/middleware/telemetry_middleware.go @@ -568,6 +568,55 @@ func (_d telemetryMiddleware) Get(ctx context.Context, spaceId string, envId str return item, err } +// GetArchived implements items.Items +func (_d telemetryMiddleware) GetArchived(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetArchivedOptions) (item *items.Item, err error) { + var att = []attribute.KeyValue{ + attribute.String("service", "Items"), + attribute.String("method", "GetArchived"), + } + attributes := otelmetric.WithAttributeSet(attribute.NewSet(att...)) + + start := time.Now() + ctx, _span := otel.Tracer(_d._instance).Start(ctx, "Items.GetArchived") + defer _span.End() + + item, err = _d.Items.GetArchived(ctx, spaceId, envId, collectionId, id, options...) + + _d.requestMetrics.DurationMilliseconds.Record(ctx, time.Since(start).Milliseconds(), attributes) + + var spID string + spID = spaceId + if spID != "" { + att = append(att, attribute.String("spaceID", spID)) + } + caller, _ := pkgId.NewObjectId(auth.GetPrincipal(ctx)) + if caller != nil { + att = append(att, attribute.String("caller", caller.String())) + } + + _d.requestMetrics.Total.Add(ctx, 1, otelmetric.WithAttributeSet(attribute.NewSet(att...))) + + if _d._spanDecorator != nil { + _d._spanDecorator(_span, map[string]interface{}{ + "ctx": ctx, + "spaceId": spaceId, + "envId": envId, + "collectionId": collectionId, + "id": id, + "options": options}, map[string]interface{}{ + "item": item, + "err": err}) + } else if err != nil { + _d.requestMetrics.FailedTotal.Add(ctx, 1, attributes) + + _span.RecordError(err) + _span.SetAttributes(attribute.String("event", "error")) + _span.SetAttributes(attribute.String("message", err.Error())) + } + + return item, err +} + // GetPublished implements items.Items func (_d telemetryMiddleware) GetPublished(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetPublishedOptions) (item *items.Item, err error) { var att = []attribute.KeyValue{ diff --git a/pkg/items/mocks/Decoder.go b/pkg/items/mocks/Decoder.go index 1d3208d2b53d64a886e296c9e79fe9f83430db9c..b9ec1b9492e6dac33fa67815a26906af2b6c9e63 100644 --- a/pkg/items/mocks/Decoder.go +++ b/pkg/items/mocks/Decoder.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks @@ -13,7 +13,7 @@ type Decoder struct { } // Decode provides a mock function with given fields: value, item -func (_m *Decoder) Decode(value any, item *items.Item) error { +func (_m *Decoder) Decode(value interface{}, item *items.Item) error { ret := _m.Called(value, item) if len(ret) == 0 { @@ -21,7 +21,7 @@ func (_m *Decoder) Decode(value any, item *items.Item) error { } var r0 error - if rf, ok := ret.Get(0).(func(any, *items.Item) error); ok { + if rf, ok := ret.Get(0).(func(interface{}, *items.Item) error); ok { r0 = rf(value, item) } else { r0 = ret.Error(0) diff --git a/pkg/items/mocks/Encoder.go b/pkg/items/mocks/Encoder.go index 6af2b841b04bf61b41103821740d954d4d5feb06..1cab133e993a99441dc1c492444d79d65296dd8e 100644 --- a/pkg/items/mocks/Encoder.go +++ b/pkg/items/mocks/Encoder.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks @@ -13,23 +13,23 @@ type Encoder struct { } // Encode provides a mock function with given fields: item -func (_m *Encoder) Encode(item *items.Item) (any, error) { +func (_m *Encoder) Encode(item *items.Item) (interface{}, error) { ret := _m.Called(item) if len(ret) == 0 { panic("no return value specified for Encode") } - var r0 any + var r0 interface{} var r1 error - if rf, ok := ret.Get(0).(func(*items.Item) (any, error)); ok { + if rf, ok := ret.Get(0).(func(*items.Item) (interface{}, error)); ok { return rf(item) } - if rf, ok := ret.Get(0).(func(*items.Item) any); ok { + if rf, ok := ret.Get(0).(func(*items.Item) interface{}); ok { r0 = rf(item) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(any) + r0 = ret.Get(0).(interface{}) } } diff --git a/pkg/items/mocks/ItemObserver.go b/pkg/items/mocks/ItemObserver.go index d4af95a2046dbed608ec580c2b3845b12dfc49fe..535ed00dd45ae6ab58b9087fdc05cf6203bc4deb 100644 --- a/pkg/items/mocks/ItemObserver.go +++ b/pkg/items/mocks/ItemObserver.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks diff --git a/pkg/items/mocks/ItemReadObserver.go b/pkg/items/mocks/ItemReadObserver.go index d999d488300b6489ad893706867324f0c3100c07..8e1fc25aa9433086d4b914d2dcaa9878c6de707d 100644 --- a/pkg/items/mocks/ItemReadObserver.go +++ b/pkg/items/mocks/ItemReadObserver.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks diff --git a/pkg/items/mocks/Items.go b/pkg/items/mocks/Items.go index aeefe3fd34993a302dfc0b3534fd2e2582eb9b47..1c34c474cb92e044d7dcd99d46f688ffd80f0281 100644 --- a/pkg/items/mocks/Items.go +++ b/pkg/items/mocks/Items.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks @@ -374,6 +374,43 @@ func (_m *Items) Get(ctx context.Context, spaceId string, envId string, collecti return r0, r1 } +// GetArchived provides a mock function with given fields: ctx, spaceId, envId, collectionId, id, options +func (_m *Items) GetArchived(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetArchivedOptions) (*items.Item, error) { + _va := make([]interface{}, len(options)) + for _i := range options { + _va[_i] = options[_i] + } + var _ca []interface{} + _ca = append(_ca, ctx, spaceId, envId, collectionId, id) + _ca = append(_ca, _va...) + ret := _m.Called(_ca...) + + if len(ret) == 0 { + panic("no return value specified for GetArchived") + } + + var r0 *items.Item + var r1 error + if rf, ok := ret.Get(0).(func(context.Context, string, string, string, string, ...*items.GetArchivedOptions) (*items.Item, error)); ok { + return rf(ctx, spaceId, envId, collectionId, id, options...) + } + if rf, ok := ret.Get(0).(func(context.Context, string, string, string, string, ...*items.GetArchivedOptions) *items.Item); ok { + r0 = rf(ctx, spaceId, envId, collectionId, id, options...) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*items.Item) + } + } + + if rf, ok := ret.Get(1).(func(context.Context, string, string, string, string, ...*items.GetArchivedOptions) error); ok { + r1 = rf(ctx, spaceId, envId, collectionId, id, options...) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // GetPublished provides a mock function with given fields: ctx, spaceId, envId, collectionId, id, options func (_m *Items) GetPublished(ctx context.Context, spaceId string, envId string, collectionId string, id string, options ...*items.GetPublishedOptions) (*items.Item, error) { _va := make([]interface{}, len(options)) diff --git a/pkg/items/mocks/Middleware.go b/pkg/items/mocks/Middleware.go deleted file mode 100644 index 92a5017f5d8ad95d6c191a14aa9f824eada51337..0000000000000000000000000000000000000000 --- a/pkg/items/mocks/Middleware.go +++ /dev/null @@ -1,48 +0,0 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. - -package mocks - -import ( - items "git.perx.ru/perxis/perxis-go/pkg/items" - - mock "github.com/stretchr/testify/mock" -) - -// Middleware is an autogenerated mock type for the Middleware type -type Middleware struct { - mock.Mock -} - -// Execute provides a mock function with given fields: _a0 -func (_m *Middleware) Execute(_a0 items.Items) items.Items { - ret := _m.Called(_a0) - - if len(ret) == 0 { - panic("no return value specified for Execute") - } - - var r0 items.Items - if rf, ok := ret.Get(0).(func(items.Items) items.Items); ok { - r0 = rf(_a0) - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).(items.Items) - } - } - - return r0 -} - -// NewMiddleware creates a new instance of Middleware. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -// The first argument is typically a *testing.T value. -func NewMiddleware(t interface { - mock.TestingT - Cleanup(func()) -}) *Middleware { - mock := &Middleware{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/pkg/items/mocks/PreSaver.go b/pkg/items/mocks/PreSaver.go index 1f7d00102b25810a6ee79695422198749af85e53..8e5042bceb2f37f13009a227c26ae03f23be8810 100644 --- a/pkg/items/mocks/PreSaver.go +++ b/pkg/items/mocks/PreSaver.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks diff --git a/pkg/items/mocks/ProcessDataFunc.go b/pkg/items/mocks/ProcessDataFunc.go index 9ed80e9e51fec6b18f175b698e47248639aff138..bdf9d7a1a1a213d76c8138f431717c746f58c6c8 100644 --- a/pkg/items/mocks/ProcessDataFunc.go +++ b/pkg/items/mocks/ProcessDataFunc.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks diff --git a/pkg/items/mocks/Storage.go b/pkg/items/mocks/Storage.go index b1dd2c54a75c0afb8f81f8004d1ed8a1189aaa5c..0dab6afff04b92c35bf5e6752cf2b33300e0106a 100644 --- a/pkg/items/mocks/Storage.go +++ b/pkg/items/mocks/Storage.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks diff --git a/pkg/items/mocks/spaceGetter.go b/pkg/items/mocks/spaceGetter.go deleted file mode 100644 index 0dfa462e8b1af6c8feeee2bed7cd7e4c1317d0b1..0000000000000000000000000000000000000000 --- a/pkg/items/mocks/spaceGetter.go +++ /dev/null @@ -1,42 +0,0 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. - -package mocks - -import mock "github.com/stretchr/testify/mock" - -// spaceGetter is an autogenerated mock type for the spaceGetter type -type spaceGetter struct { - mock.Mock -} - -// GetSpaceID provides a mock function with given fields: -func (_m *spaceGetter) GetSpaceID() string { - ret := _m.Called() - - if len(ret) == 0 { - panic("no return value specified for GetSpaceID") - } - - var r0 string - if rf, ok := ret.Get(0).(func() string); ok { - r0 = rf() - } else { - r0 = ret.Get(0).(string) - } - - return r0 -} - -// newSpaceGetter creates a new instance of spaceGetter. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -// The first argument is typically a *testing.T value. -func newSpaceGetter(t interface { - mock.TestingT - Cleanup(func()) -}) *spaceGetter { - mock := &spaceGetter{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/pkg/items/options.go b/pkg/items/options.go index 9aa77887112a2e221c115bdc6c7800840f290719..cec92a223060e329373f4d0835f39673d8385060 100644 --- a/pkg/items/options.go +++ b/pkg/items/options.go @@ -717,6 +717,54 @@ func FindArchivedOptionsFromProto(opts *pb.FindArchivedOptions) *FindArchivedOpt return o } +type GetArchivedOptions struct { + Options + + // Язык перевода, который будет иÑпользоватьÑÑ. ЕÑли не указан, то возвращаютÑÑ Ð´Ð°Ð½Ð½Ñ‹Ðµ Ð´Ð»Ñ Ñзыка по умолчанию + LocaleID string + + // СпиÑок идентификаторов переводов/локалей, которых должны быть включены в результат + TranslationsIDs []string +} + +func MergeGetArchivedOptions(opts ...*GetArchivedOptions) *GetRevisionOptions { + o := &GetRevisionOptions{} + for _, opt := range opts { + if opt == nil { + continue + } + o.Options = MergeOptions(o.Options, opt.Options) + + if opt.LocaleID != "" { + o.LocaleID = opt.LocaleID + } + o.TranslationsIDs = append(o.TranslationsIDs, opt.TranslationsIDs...) + } + return o +} + +func GetArchivedOptionsToProto(opts ...*GetArchivedOptions) *pb.GetArchivedOptions { + if opts == nil { + return nil + } + o := MergeGetArchivedOptions(opts...) + return &pb.GetArchivedOptions{ + LocaleId: o.LocaleID, + TranslationsIds: o.TranslationsIDs, + } +} + +func GetArchivedOptionsFromProto(opts *pb.GetArchivedOptions) *GetArchivedOptions { + if opts == nil { + return nil + } + o := &GetArchivedOptions{ + LocaleID: opts.GetLocaleId(), + TranslationsIDs: opts.GetTranslationsIds(), + } + return o +} + type UnarchiveOptions struct { Options } diff --git a/pkg/items/service.go b/pkg/items/service.go index 747f155461a4450771a31274c7d7743a14038f5b..361efff3005cf417b138b19a6bc5871be5c082af 100644 --- a/pkg/items/service.go +++ b/pkg/items/service.go @@ -35,12 +35,14 @@ type Items interface { GetRevision(ctx context.Context, spaceId, envId, collectionId, id, revisionId string, options ...*GetRevisionOptions) (item *Item, err error) ListRevisions(ctx context.Context, spaceId, envId, collectionId, id string, options ...*ListRevisionsOptions) (items []*Item, total int, err error) + CheckoutRevision(ctx context.Context, spaceID string, envID string, collectionID string, id string, revID string, + ) (storedRevID string, err error) Archive(ctx context.Context, item *Item, options ...*ArchiveOptions) (err error) FindArchived(ctx context.Context, spaceId, envId, collectionId string, filter *Filter, options ...*FindArchivedOptions) (items []*Item, total int, err error) Unarchive(ctx context.Context, item *Item, options ...*UnarchiveOptions) (err error) - - CheckoutRevision(ctx context.Context, spaceId string, envId string, collId string, id string, revId string) (storedRevId string, err error) + GetArchived(ctx context.Context, spaceID, envID, collectionID, id string, options ...*GetArchivedOptions, + ) (item *Item, err error) // Aggregate выполнÑет агрегацию данных Aggregate(ctx context.Context, spaceId, envId, collectionId string, filter *Filter, options ...*AggregateOptions) (result map[string]interface{}, err error) diff --git a/pkg/items/transport/client.go b/pkg/items/transport/client.go index ebe824081fe34dd5dfd288300e3a884de2d0c1fb..f0fc26c8a35454ad050f99720b223a633bccb99c 100644 --- a/pkg/items/transport/client.go +++ b/pkg/items/transport/client.go @@ -211,6 +211,21 @@ func (set EndpointsSet) FindArchived(arg0 context.Context, arg1, arg2, arg3 stri return response.(*FindArchivedResponse).Items, response.(*FindArchivedResponse).Total, res2 } +func (set EndpointsSet) GetArchived(arg0 context.Context, arg1 string, arg2 string, arg3 string, arg4 string, arg5 ...*items.GetArchivedOptions) (res0 *items.Item, res1 error) { + request := GetArchivedRequest{ + CollectionId: arg3, + EnvId: arg2, + ItemId: arg4, + SpaceId: arg1, + Options: arg5, + } + response, res1 := set.GetArchivedEndpoint(arg0, &request) + if res1 != nil { + return + } + return response.(*GetArchivedResponse).Item, res1 +} + func (set EndpointsSet) Unarchive(arg0 context.Context, arg1 *items.Item, arg2 ...*items.UnarchiveOptions) (res0 error) { request := UnarchiveRequest{Item: arg1, Options: arg2} _, res0 = set.UnarchiveEndpoint(arg0, &request) diff --git a/pkg/items/transport/endpoints.microgen.go b/pkg/items/transport/endpoints.microgen.go index bd34b2c4a9280aefb05ef1c027dfe0bd3300195c..325ca2fb4d12fce856a7489e180265ea042b772a 100644 --- a/pkg/items/transport/endpoints.microgen.go +++ b/pkg/items/transport/endpoints.microgen.go @@ -21,6 +21,7 @@ type EndpointsSet struct { ListRevisionsEndpoint endpoint.Endpoint ArchiveEndpoint endpoint.Endpoint FindArchivedEndpoint endpoint.Endpoint + GetArchivedEndpoint endpoint.Endpoint UnarchiveEndpoint endpoint.Endpoint CheckoutRevisionEndpoint endpoint.Endpoint AggregateEndpoint endpoint.Endpoint diff --git a/pkg/items/transport/exchanges.microgen.go b/pkg/items/transport/exchanges.microgen.go index 0a9c8c7660f0d3226e6be11374c9aa93504bbfe1..1f487b71fdba61e8a41df91b84c0cb20ff2a7ba9 100644 --- a/pkg/items/transport/exchanges.microgen.go +++ b/pkg/items/transport/exchanges.microgen.go @@ -150,6 +150,17 @@ type ( Total int `json:"total"` } + GetArchivedRequest struct { + SpaceId string `json:"space_id"` + EnvId string `json:"env_id"` + CollectionId string `json:"collection_id"` + ItemId string `json:"item_id"` + Options []*items.GetArchivedOptions `json:"options"` // This field was defined with ellipsis (...). + } + GetArchivedResponse struct { + Item *items.Item `json:"item"` + } + UnarchiveRequest struct { Item *items.Item `json:"item"` Options []*items.UnarchiveOptions `json:"options"` // This field was defined with ellipsis (...). diff --git a/pkg/items/transport/grpc/client.go b/pkg/items/transport/grpc/client.go index fdaf060c46f1c73d43811bf4597b8c14bafad30e..ae171639514f03a4b41312863f473a5fb25ea2b5 100644 --- a/pkg/items/transport/grpc/client.go +++ b/pkg/items/transport/grpc/client.go @@ -26,6 +26,7 @@ func NewClient(conn *grpc.ClientConn, opts ...grpckit.ClientOption) transport.En GetRevisionEndpoint: grpcerr.ClientMiddleware(c.GetRevisionEndpoint), ListRevisionsEndpoint: grpcerr.ClientMiddleware(c.ListRevisionsEndpoint), ArchiveEndpoint: grpcerr.ClientMiddleware(c.ArchiveEndpoint), + GetArchivedEndpoint: grpcerr.ClientMiddleware(c.GetArchivedEndpoint), FindArchivedEndpoint: grpcerr.ClientMiddleware(c.FindArchivedEndpoint), UnarchiveEndpoint: grpcerr.ClientMiddleware(c.UnarchiveEndpoint), CheckoutRevisionEndpoint: grpcerr.ClientMiddleware(c.CheckoutRevisionEndpoint), diff --git a/pkg/items/transport/grpc/client.microgen.go b/pkg/items/transport/grpc/client.microgen.go index 2d6e06b90f0d801758f4de521fb70e1ea80cabd5..073eaed273041753950ba03f4a6639d0e27e5b21 100644 --- a/pkg/items/transport/grpc/client.microgen.go +++ b/pkg/items/transport/grpc/client.microgen.go @@ -64,6 +64,13 @@ func NewGRPCClient(conn *grpc.ClientConn, addr string, opts ...grpckit.ClientOpt pb.FindArchivedResponse{}, opts..., ).Endpoint(), + GetArchivedEndpoint: grpckit.NewClient( + conn, addr, "GetArchived", + _Encode_GetArchived_Request, + _Decode_GetArchived_Response, + pb.GetArchivedResponse{}, + opts..., + ).Endpoint(), FindEndpoint: grpckit.NewClient( conn, addr, "Find", _Encode_Find_Request, diff --git a/pkg/items/transport/grpc/protobuf_endpoint_converters.microgen.go b/pkg/items/transport/grpc/protobuf_endpoint_converters.microgen.go index 6afbf9b14811727057f3fbfa965618b95f8f3b0a..2f4ed3b0dd90fcfbb5211f68edeef67fe1989446 100644 --- a/pkg/items/transport/grpc/protobuf_endpoint_converters.microgen.go +++ b/pkg/items/transport/grpc/protobuf_endpoint_converters.microgen.go @@ -258,6 +258,24 @@ func _Encode_Archive_Request(ctx context.Context, request interface{}) (interfac return &pb.ArchiveRequest{Item: reqItem}, nil } +func _Encode_GetArchived_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil GetArchivedRequest") + } + req := request.(*transport.GetArchivedRequest) + opts, err := GetArchiedOptionsToProto(req.Options) + if err != nil { + return nil, err + } + return &pb.GetArchivedRequest{ + CollectionId: req.CollectionId, + EnvId: req.EnvId, + ItemId: req.ItemId, + SpaceId: req.SpaceId, + Options: opts, + }, nil +} + func _Encode_FindArchived_Request(ctx context.Context, request interface{}) (interface{}, error) { if request == nil { return nil, errors.New("nil FindArchivedRequest") @@ -434,6 +452,18 @@ func _Encode_GetRevision_Response(ctx context.Context, response interface{}) (in return &pb.GetRevisionResponse{Item: respItem}, nil } +func _Encode_GetArchived_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil GetArchivedResponse") + } + resp := response.(*transport.GetArchivedResponse) + respItem, err := PtrItemToProto(resp.Item) + if err != nil { + return nil, err + } + return &pb.GetArchivedResponse{Item: respItem}, nil +} + func _Encode_ListRevisions_Response(ctx context.Context, response interface{}) (interface{}, error) { if response == nil { return nil, errors.New("nil ListRevisionsResponse") @@ -790,6 +820,24 @@ func _Decode_Archive_Request(ctx context.Context, request interface{}) (interfac return &transport.ArchiveRequest{Item: reqItem}, nil } +func _Decode_GetArchived_Request(ctx context.Context, request interface{}) (interface{}, error) { + if request == nil { + return nil, errors.New("nil GetArchivedRequest") + } + req := request.(*pb.GetArchivedRequest) + opts, err := ProtoToGetArchivedOptions(req.Options) + if err != nil { + return nil, err + } + return &transport.GetArchivedRequest{ + CollectionId: string(req.CollectionId), + EnvId: string(req.EnvId), + ItemId: string(req.ItemId), + SpaceId: string(req.SpaceId), + Options: opts, + }, nil +} + func _Decode_FindArchived_Request(ctx context.Context, request interface{}) (interface{}, error) { if request == nil { return nil, errors.New("nil FindArchivedRequest") @@ -938,6 +986,18 @@ func _Decode_Archive_Response(ctx context.Context, response interface{}) (interf return &empty.Empty{}, nil } +func _Decode_GetArchived_Response(ctx context.Context, response interface{}) (interface{}, error) { + if response == nil { + return nil, errors.New("nil GetArchivedResponse") + } + resp := response.(*pb.GetArchivedResponse) + respItem, err := ProtoToPtrItem(resp.Item) + if err != nil { + return nil, err + } + return &transport.GetArchivedResponse{Item: respItem}, nil +} + func _Decode_FindArchived_Response(ctx context.Context, response interface{}) (interface{}, error) { if response == nil { return nil, errors.New("nil FindArchivedResponse") diff --git a/pkg/items/transport/grpc/protobuf_type_converters.microgen.go b/pkg/items/transport/grpc/protobuf_type_converters.microgen.go index 1aba486580e9f94882b29d254b1fffab39c8270c..b3bb5768b737cb61cfeac5604a6c1e233f951491 100644 --- a/pkg/items/transport/grpc/protobuf_type_converters.microgen.go +++ b/pkg/items/transport/grpc/protobuf_type_converters.microgen.go @@ -191,6 +191,18 @@ func ProtoToGetRevisionOptions(protoOptions *pb.GetRevisionOptions) ([]*service. return []*service.GetRevisionOptions{service.GetRevisionOptionsFromProto(protoOptions)}, nil } +func ProtoToGetArchivedOptions(protoOptions *pb.GetArchivedOptions) ([]*service.GetArchivedOptions, error) { + return []*service.GetArchivedOptions{service.GetArchivedOptionsFromProto(protoOptions)}, nil +} + +func GetArchiedOptionsToProto(options []*service.GetArchivedOptions) (*pb.GetArchivedOptions, error) { + return service.GetArchivedOptionsToProto(options...), nil +} + +func ProtoToGetArchiedOptions(protoOptions *pb.GetArchivedOptions) ([]*service.GetArchivedOptions, error) { + return []*service.GetArchivedOptions{service.GetArchivedOptionsFromProto(protoOptions)}, nil +} + func ListRevisionsOptionsToProto(options []*service.ListRevisionsOptions) (*pb.ListRevisionsOptions, error) { return service.ListRevisionsOptionsToProto(options...), nil } @@ -343,6 +355,14 @@ func ProtoToFindArchivedOptions(protoOptions *pb.FindArchivedOptions) ([]*servic return []*service.FindArchivedOptions{service.FindArchivedOptionsFromProto(protoOptions)}, nil } +func ElPtrGetArchivedOptionsToProto() { + panic("function not provided") // TODO: provide converter +} + +func ProtoToElPtrGetArchivedOptions() { + panic("function not provided") // TODO: provide converter +} + func ElPtrUnarchiveOptionsToProto() { panic("function not provided") // TODO: provide converter } diff --git a/pkg/items/transport/grpc/server.go b/pkg/items/transport/grpc/server.go index 676027f91411c21c30aeb233572e6df9b4c26aa3..8760972788f0776a5426b4a1632e8daf2a381100 100644 --- a/pkg/items/transport/grpc/server.go +++ b/pkg/items/transport/grpc/server.go @@ -25,6 +25,7 @@ func NewServer(svc items.Items, opts ...grpckit.ServerOption) pb.ItemsServer { GetRevisionEndpoint: grpcerr.ServerMiddleware(eps.GetRevisionEndpoint), ListRevisionsEndpoint: grpcerr.ServerMiddleware(eps.ListRevisionsEndpoint), ArchiveEndpoint: grpcerr.ServerMiddleware(eps.ArchiveEndpoint), + GetArchivedEndpoint: grpcerr.ServerMiddleware(eps.GetArchivedEndpoint), FindArchivedEndpoint: grpcerr.ServerMiddleware(eps.FindArchivedEndpoint), UnarchiveEndpoint: grpcerr.ServerMiddleware(eps.UnarchiveEndpoint), CheckoutRevisionEndpoint: grpcerr.ServerMiddleware(eps.CheckoutRevisionEndpoint), diff --git a/pkg/items/transport/grpc/server.microgen.go b/pkg/items/transport/grpc/server.microgen.go index 618bfd00f5712f5b9f75936fd32f2cce767a26e6..7e50e367ac394fe8decef4bada2cd5eb7cb70175 100644 --- a/pkg/items/transport/grpc/server.microgen.go +++ b/pkg/items/transport/grpc/server.microgen.go @@ -26,6 +26,7 @@ type itemsServer struct { getRevision grpc.Handler listRevisions grpc.Handler archive grpc.Handler + getArchived grpc.Handler findArchived grpc.Handler unarchive grpc.Handler checkoutRevision grpc.Handler @@ -109,6 +110,12 @@ func NewGRPCServer(endpoints *transport.EndpointsSet, opts ...grpc.ServerOption) _Encode_GetRevision_Response, opts..., ), + getArchived: grpc.NewServer( + endpoints.GetArchivedEndpoint, + _Decode_GetArchived_Request, + _Encode_GetArchived_Response, + opts..., + ), introspect: grpc.NewServer( endpoints.IntrospectEndpoint, _Decode_Introspect_Request, @@ -266,6 +273,14 @@ func (S *itemsServer) Archive(ctx context.Context, req *pb.ArchiveRequest) (*emp return resp.(*empty.Empty), nil } +func (S *itemsServer) GetArchived(ctx context.Context, req *pb.GetArchivedRequest) (*pb.GetArchivedResponse, error) { + _, resp, err := S.getArchived.ServeGRPC(ctx, req) + if err != nil { + return nil, err + } + return resp.(*pb.GetArchivedResponse), nil +} + func (S *itemsServer) FindArchived(ctx context.Context, req *pb.FindArchivedRequest) (*pb.FindArchivedResponse, error) { _, resp, err := S.findArchived.ServeGRPC(ctx, req) if err != nil { diff --git a/pkg/items/transport/server.microgen.go b/pkg/items/transport/server.microgen.go index 36dd1b2dab85fb18b45c2bcb4c66d3a90910bed4..7df6cf99c66121406d47c36cf95362e6175e8fa3 100644 --- a/pkg/items/transport/server.microgen.go +++ b/pkg/items/transport/server.microgen.go @@ -21,6 +21,7 @@ func Endpoints(svc items.Items) EndpointsSet { CreateEndpoint: CreateEndpoint(svc), DeleteEndpoint: DeleteEndpoint(svc), FindArchivedEndpoint: FindArchivedEndpoint(svc), + GetArchivedEndpoint: GetArchivedEndpoint(svc), FindEndpoint: FindEndpoint(svc), FindPublishedEndpoint: FindPublishedEndpoint(svc), GetEndpoint: GetEndpoint(svc), @@ -182,6 +183,14 @@ func ArchiveEndpoint(svc items.Items) endpoint.Endpoint { } } +func GetArchivedEndpoint(svc items.Items) endpoint.Endpoint { + return func(arg0 context.Context, request interface{}) (interface{}, error) { + req := request.(*GetArchivedRequest) + res0, res1 := svc.GetArchived(arg0, req.SpaceId, req.EnvId, req.CollectionId, req.ItemId, req.Options...) + return &GetArchivedResponse{Item: res0}, res1 + } +} + func FindArchivedEndpoint(svc items.Items) endpoint.Endpoint { return func(arg0 context.Context, request interface{}) (interface{}, error) { req := request.(*FindArchivedRequest) diff --git a/proto/items/items.pb.go b/proto/items/items.pb.go index 92f2455279996d314d9906ce3c9d181204e230ac..f62b1979fbc49ba99221176559c8df15d16365e7 100644 --- a/proto/items/items.pb.go +++ b/proto/items/items.pb.go @@ -1692,6 +1692,59 @@ func (x *GetRevisionOptions) GetTranslationsIds() []string { return nil } +type GetArchivedOptions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LocaleId string `protobuf:"bytes,7,opt,name=locale_id,json=localeId,proto3" json:"locale_id,omitempty"` // Язык перевода который будет иÑпользоватьÑÑ. ЕÑли не указан, то возвращаютÑÑ Ð´Ð°Ð½Ð½Ñ‹Ðµ Ð´Ð»Ñ Ñзыка по умолчанию + TranslationsIds []string `protobuf:"bytes,8,rep,name=translations_ids,json=translationsIds,proto3" json:"translations_ids,omitempty"` // СпиÑок идентификаторов переводов/локалей, которых должны быть включены в результат +} + +func (x *GetArchivedOptions) Reset() { + *x = GetArchivedOptions{} + mi := &file_items_items_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GetArchivedOptions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetArchivedOptions) ProtoMessage() {} + +func (x *GetArchivedOptions) ProtoReflect() protoreflect.Message { + mi := &file_items_items_proto_msgTypes[24] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetArchivedOptions.ProtoReflect.Descriptor instead. +func (*GetArchivedOptions) Descriptor() ([]byte, []int) { + return file_items_items_proto_rawDescGZIP(), []int{24} +} + +func (x *GetArchivedOptions) GetLocaleId() string { + if x != nil { + return x.LocaleId + } + return "" +} + +func (x *GetArchivedOptions) GetTranslationsIds() []string { + if x != nil { + return x.TranslationsIds + } + return nil +} + // Fields - Ð¿Ð¾Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ðµ должны быть возвращены или вычиÑлены в результате. // Ключ (string) - Ð¸Ð¼Ñ Ð¿Ð¾Ð»Ñ Ð¿Ð¾Ð´ которым будет добавлÑтьÑÑ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚. // Значение (string) - ÑвлÑетÑÑ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸ÐµÐ¼, вычиÑление которого Ñформирует результат @@ -1713,7 +1766,7 @@ type AggregateOptions struct { func (x *AggregateOptions) Reset() { *x = AggregateOptions{} - mi := &file_items_items_proto_msgTypes[24] + mi := &file_items_items_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1725,7 +1778,7 @@ func (x *AggregateOptions) String() string { func (*AggregateOptions) ProtoMessage() {} func (x *AggregateOptions) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[24] + mi := &file_items_items_proto_msgTypes[25] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1738,7 +1791,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{24} + return file_items_items_proto_rawDescGZIP(), []int{25} } func (x *AggregateOptions) GetFields() map[string]string { @@ -1758,7 +1811,7 @@ type AggregatePublishedOptions struct { func (x *AggregatePublishedOptions) Reset() { *x = AggregatePublishedOptions{} - mi := &file_items_items_proto_msgTypes[25] + mi := &file_items_items_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1770,7 +1823,7 @@ func (x *AggregatePublishedOptions) String() string { func (*AggregatePublishedOptions) ProtoMessage() {} func (x *AggregatePublishedOptions) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[25] + mi := &file_items_items_proto_msgTypes[26] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1783,7 +1836,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{25} + return file_items_items_proto_rawDescGZIP(), []int{26} } func (x *AggregatePublishedOptions) GetFields() map[string]string { @@ -1804,7 +1857,7 @@ type CreateRequest struct { func (x *CreateRequest) Reset() { *x = CreateRequest{} - mi := &file_items_items_proto_msgTypes[26] + mi := &file_items_items_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1816,7 +1869,7 @@ func (x *CreateRequest) String() string { func (*CreateRequest) ProtoMessage() {} func (x *CreateRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[26] + mi := &file_items_items_proto_msgTypes[27] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1829,7 +1882,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{26} + return file_items_items_proto_rawDescGZIP(), []int{27} } func (x *CreateRequest) GetItem() *Item { @@ -1856,7 +1909,7 @@ type CreateResponse struct { func (x *CreateResponse) Reset() { *x = CreateResponse{} - mi := &file_items_items_proto_msgTypes[27] + mi := &file_items_items_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1868,7 +1921,7 @@ func (x *CreateResponse) String() string { func (*CreateResponse) ProtoMessage() {} func (x *CreateResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[27] + mi := &file_items_items_proto_msgTypes[28] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1881,7 +1934,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{27} + return file_items_items_proto_rawDescGZIP(), []int{28} } func (x *CreateResponse) GetCreated() *Item { @@ -1901,7 +1954,7 @@ type IntrospectRequest struct { func (x *IntrospectRequest) Reset() { *x = IntrospectRequest{} - mi := &file_items_items_proto_msgTypes[28] + mi := &file_items_items_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1913,7 +1966,7 @@ func (x *IntrospectRequest) String() string { func (*IntrospectRequest) ProtoMessage() {} func (x *IntrospectRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[28] + mi := &file_items_items_proto_msgTypes[29] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1926,7 +1979,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{28} + return file_items_items_proto_rawDescGZIP(), []int{29} } func (x *IntrospectRequest) GetItem() *Item { @@ -1948,7 +2001,7 @@ type IntrospectResponse struct { func (x *IntrospectResponse) Reset() { *x = IntrospectResponse{} - mi := &file_items_items_proto_msgTypes[29] + mi := &file_items_items_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1960,7 +2013,7 @@ func (x *IntrospectResponse) String() string { func (*IntrospectResponse) ProtoMessage() {} func (x *IntrospectResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[29] + mi := &file_items_items_proto_msgTypes[30] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1973,7 +2026,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{29} + return file_items_items_proto_rawDescGZIP(), []int{30} } func (x *IntrospectResponse) GetItem() *Item { @@ -2008,7 +2061,7 @@ type GetOptions struct { func (x *GetOptions) Reset() { *x = GetOptions{} - mi := &file_items_items_proto_msgTypes[30] + mi := &file_items_items_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2020,7 +2073,7 @@ func (x *GetOptions) String() string { func (*GetOptions) ProtoMessage() {} func (x *GetOptions) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[30] + mi := &file_items_items_proto_msgTypes[31] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2033,7 +2086,7 @@ func (x *GetOptions) ProtoReflect() protoreflect.Message { // Deprecated: Use GetOptions.ProtoReflect.Descriptor instead. func (*GetOptions) Descriptor() ([]byte, []int) { - return file_items_items_proto_rawDescGZIP(), []int{30} + return file_items_items_proto_rawDescGZIP(), []int{31} } func (x *GetOptions) GetLocaleId() string { @@ -2064,7 +2117,7 @@ type GetRequest struct { func (x *GetRequest) Reset() { *x = GetRequest{} - mi := &file_items_items_proto_msgTypes[31] + mi := &file_items_items_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2076,7 +2129,7 @@ func (x *GetRequest) String() string { func (*GetRequest) ProtoMessage() {} func (x *GetRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[31] + mi := &file_items_items_proto_msgTypes[32] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2089,7 +2142,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{31} + return file_items_items_proto_rawDescGZIP(), []int{32} } func (x *GetRequest) GetSpaceId() string { @@ -2137,7 +2190,7 @@ type GetResponse struct { func (x *GetResponse) Reset() { *x = GetResponse{} - mi := &file_items_items_proto_msgTypes[32] + mi := &file_items_items_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2149,7 +2202,7 @@ func (x *GetResponse) String() string { func (*GetResponse) ProtoMessage() {} func (x *GetResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[32] + mi := &file_items_items_proto_msgTypes[33] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2162,7 +2215,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{32} + return file_items_items_proto_rawDescGZIP(), []int{33} } func (x *GetResponse) GetItem() *Item { @@ -2186,7 +2239,7 @@ type FindRequest struct { func (x *FindRequest) Reset() { *x = FindRequest{} - mi := &file_items_items_proto_msgTypes[33] + mi := &file_items_items_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2198,7 +2251,7 @@ func (x *FindRequest) String() string { func (*FindRequest) ProtoMessage() {} func (x *FindRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[33] + mi := &file_items_items_proto_msgTypes[34] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2211,7 +2264,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{33} + return file_items_items_proto_rawDescGZIP(), []int{34} } func (x *FindRequest) GetSpaceId() string { @@ -2260,7 +2313,7 @@ type FindResponse struct { func (x *FindResponse) Reset() { *x = FindResponse{} - mi := &file_items_items_proto_msgTypes[34] + mi := &file_items_items_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2272,7 +2325,7 @@ func (x *FindResponse) String() string { func (*FindResponse) ProtoMessage() {} func (x *FindResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[34] + mi := &file_items_items_proto_msgTypes[35] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2285,7 +2338,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{34} + return file_items_items_proto_rawDescGZIP(), []int{35} } func (x *FindResponse) GetItems() []*Item { @@ -2313,7 +2366,7 @@ type UpdateRequest struct { func (x *UpdateRequest) Reset() { *x = UpdateRequest{} - mi := &file_items_items_proto_msgTypes[35] + mi := &file_items_items_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2325,7 +2378,7 @@ func (x *UpdateRequest) String() string { func (*UpdateRequest) ProtoMessage() {} func (x *UpdateRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[35] + mi := &file_items_items_proto_msgTypes[36] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2338,7 +2391,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{35} + return file_items_items_proto_rawDescGZIP(), []int{36} } func (x *UpdateRequest) GetItem() *Item { @@ -2366,7 +2419,7 @@ type DeleteRequest struct { func (x *DeleteRequest) Reset() { *x = DeleteRequest{} - mi := &file_items_items_proto_msgTypes[36] + mi := &file_items_items_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2378,7 +2431,7 @@ func (x *DeleteRequest) String() string { func (*DeleteRequest) ProtoMessage() {} func (x *DeleteRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[36] + mi := &file_items_items_proto_msgTypes[37] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2391,7 +2444,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{36} + return file_items_items_proto_rawDescGZIP(), []int{37} } func (x *DeleteRequest) GetItem() *Item { @@ -2419,7 +2472,7 @@ type UndeleteRequest struct { func (x *UndeleteRequest) Reset() { *x = UndeleteRequest{} - mi := &file_items_items_proto_msgTypes[37] + mi := &file_items_items_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2431,7 +2484,7 @@ func (x *UndeleteRequest) String() string { func (*UndeleteRequest) ProtoMessage() {} func (x *UndeleteRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[37] + mi := &file_items_items_proto_msgTypes[38] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2444,7 +2497,7 @@ func (x *UndeleteRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UndeleteRequest.ProtoReflect.Descriptor instead. func (*UndeleteRequest) Descriptor() ([]byte, []int) { - return file_items_items_proto_rawDescGZIP(), []int{37} + return file_items_items_proto_rawDescGZIP(), []int{38} } func (x *UndeleteRequest) GetItem() *Item { @@ -2475,7 +2528,7 @@ type CheckoutRevisionRequest struct { func (x *CheckoutRevisionRequest) Reset() { *x = CheckoutRevisionRequest{} - mi := &file_items_items_proto_msgTypes[38] + mi := &file_items_items_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2487,7 +2540,7 @@ func (x *CheckoutRevisionRequest) String() string { func (*CheckoutRevisionRequest) ProtoMessage() {} func (x *CheckoutRevisionRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[38] + mi := &file_items_items_proto_msgTypes[39] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2500,7 +2553,7 @@ func (x *CheckoutRevisionRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CheckoutRevisionRequest.ProtoReflect.Descriptor instead. func (*CheckoutRevisionRequest) Descriptor() ([]byte, []int) { - return file_items_items_proto_rawDescGZIP(), []int{38} + return file_items_items_proto_rawDescGZIP(), []int{39} } func (x *CheckoutRevisionRequest) GetSpaceId() string { @@ -2548,7 +2601,7 @@ type CheckoutRevisionResponse struct { func (x *CheckoutRevisionResponse) Reset() { *x = CheckoutRevisionResponse{} - mi := &file_items_items_proto_msgTypes[39] + mi := &file_items_items_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2560,7 +2613,7 @@ func (x *CheckoutRevisionResponse) String() string { func (*CheckoutRevisionResponse) ProtoMessage() {} func (x *CheckoutRevisionResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[39] + mi := &file_items_items_proto_msgTypes[40] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2573,7 +2626,7 @@ func (x *CheckoutRevisionResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CheckoutRevisionResponse.ProtoReflect.Descriptor instead. func (*CheckoutRevisionResponse) Descriptor() ([]byte, []int) { - return file_items_items_proto_rawDescGZIP(), []int{39} + return file_items_items_proto_rawDescGZIP(), []int{40} } func (x *CheckoutRevisionResponse) GetStoredRevisionId() string { @@ -2594,7 +2647,7 @@ type PublishRequest struct { func (x *PublishRequest) Reset() { *x = PublishRequest{} - mi := &file_items_items_proto_msgTypes[40] + mi := &file_items_items_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2606,7 +2659,7 @@ func (x *PublishRequest) String() string { func (*PublishRequest) ProtoMessage() {} func (x *PublishRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[40] + mi := &file_items_items_proto_msgTypes[41] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2619,7 +2672,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{40} + return file_items_items_proto_rawDescGZIP(), []int{41} } func (x *PublishRequest) GetItem() *Item { @@ -2647,7 +2700,7 @@ type UnpublishRequest struct { func (x *UnpublishRequest) Reset() { *x = UnpublishRequest{} - mi := &file_items_items_proto_msgTypes[41] + mi := &file_items_items_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2659,7 +2712,7 @@ func (x *UnpublishRequest) String() string { func (*UnpublishRequest) ProtoMessage() {} func (x *UnpublishRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[41] + mi := &file_items_items_proto_msgTypes[42] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2672,7 +2725,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{41} + return file_items_items_proto_rawDescGZIP(), []int{42} } func (x *UnpublishRequest) GetItem() *Item { @@ -2703,7 +2756,7 @@ type GetPublishedRequest struct { func (x *GetPublishedRequest) Reset() { *x = GetPublishedRequest{} - mi := &file_items_items_proto_msgTypes[42] + mi := &file_items_items_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2715,7 +2768,7 @@ func (x *GetPublishedRequest) String() string { func (*GetPublishedRequest) ProtoMessage() {} func (x *GetPublishedRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[42] + mi := &file_items_items_proto_msgTypes[43] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2728,7 +2781,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{42} + return file_items_items_proto_rawDescGZIP(), []int{43} } func (x *GetPublishedRequest) GetSpaceId() string { @@ -2776,7 +2829,7 @@ type GetPublishedResponse struct { func (x *GetPublishedResponse) Reset() { *x = GetPublishedResponse{} - mi := &file_items_items_proto_msgTypes[43] + mi := &file_items_items_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2788,7 +2841,7 @@ func (x *GetPublishedResponse) String() string { func (*GetPublishedResponse) ProtoMessage() {} func (x *GetPublishedResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[43] + mi := &file_items_items_proto_msgTypes[44] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2801,7 +2854,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{43} + return file_items_items_proto_rawDescGZIP(), []int{44} } func (x *GetPublishedResponse) GetItem() *Item { @@ -2825,7 +2878,7 @@ type FindPublishedRequest struct { func (x *FindPublishedRequest) Reset() { *x = FindPublishedRequest{} - mi := &file_items_items_proto_msgTypes[44] + mi := &file_items_items_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2837,7 +2890,7 @@ func (x *FindPublishedRequest) String() string { func (*FindPublishedRequest) ProtoMessage() {} func (x *FindPublishedRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[44] + mi := &file_items_items_proto_msgTypes[45] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2850,7 +2903,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{44} + return file_items_items_proto_rawDescGZIP(), []int{45} } func (x *FindPublishedRequest) GetSpaceId() string { @@ -2899,7 +2952,7 @@ type FindPublishedResponse struct { func (x *FindPublishedResponse) Reset() { *x = FindPublishedResponse{} - mi := &file_items_items_proto_msgTypes[45] + mi := &file_items_items_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2911,7 +2964,7 @@ func (x *FindPublishedResponse) String() string { func (*FindPublishedResponse) ProtoMessage() {} func (x *FindPublishedResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[45] + mi := &file_items_items_proto_msgTypes[46] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2924,7 +2977,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{45} + return file_items_items_proto_rawDescGZIP(), []int{46} } func (x *FindPublishedResponse) GetItems() []*Item { @@ -2955,7 +3008,7 @@ type AggregateRequest struct { func (x *AggregateRequest) Reset() { *x = AggregateRequest{} - mi := &file_items_items_proto_msgTypes[46] + mi := &file_items_items_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2967,7 +3020,7 @@ func (x *AggregateRequest) String() string { func (*AggregateRequest) ProtoMessage() {} func (x *AggregateRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[46] + mi := &file_items_items_proto_msgTypes[47] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2980,7 +3033,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{46} + return file_items_items_proto_rawDescGZIP(), []int{47} } func (x *AggregateRequest) GetSpaceId() string { @@ -3030,7 +3083,7 @@ type AggregateResponse struct { func (x *AggregateResponse) Reset() { *x = AggregateResponse{} - mi := &file_items_items_proto_msgTypes[47] + mi := &file_items_items_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3042,7 +3095,7 @@ func (x *AggregateResponse) String() string { func (*AggregateResponse) ProtoMessage() {} func (x *AggregateResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[47] + mi := &file_items_items_proto_msgTypes[48] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3055,7 +3108,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{47} + return file_items_items_proto_rawDescGZIP(), []int{48} } func (x *AggregateResponse) GetResult() *structpb.Struct { @@ -3079,7 +3132,7 @@ type AggregatePublishedRequest struct { func (x *AggregatePublishedRequest) Reset() { *x = AggregatePublishedRequest{} - mi := &file_items_items_proto_msgTypes[48] + mi := &file_items_items_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3091,7 +3144,7 @@ func (x *AggregatePublishedRequest) String() string { func (*AggregatePublishedRequest) ProtoMessage() {} func (x *AggregatePublishedRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[48] + mi := &file_items_items_proto_msgTypes[49] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3104,7 +3157,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{48} + return file_items_items_proto_rawDescGZIP(), []int{49} } func (x *AggregatePublishedRequest) GetSpaceId() string { @@ -3152,7 +3205,7 @@ type AggregatePublishedResponse struct { func (x *AggregatePublishedResponse) Reset() { *x = AggregatePublishedResponse{} - mi := &file_items_items_proto_msgTypes[49] + mi := &file_items_items_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3164,7 +3217,7 @@ func (x *AggregatePublishedResponse) String() string { func (*AggregatePublishedResponse) ProtoMessage() {} func (x *AggregatePublishedResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[49] + mi := &file_items_items_proto_msgTypes[50] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3177,7 +3230,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{49} + return file_items_items_proto_rawDescGZIP(), []int{50} } func (x *AggregatePublishedResponse) GetResult() *structpb.Struct { @@ -3202,7 +3255,7 @@ type GetRevisionRequest struct { func (x *GetRevisionRequest) Reset() { *x = GetRevisionRequest{} - mi := &file_items_items_proto_msgTypes[50] + mi := &file_items_items_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3214,7 +3267,7 @@ func (x *GetRevisionRequest) String() string { func (*GetRevisionRequest) ProtoMessage() {} func (x *GetRevisionRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[50] + mi := &file_items_items_proto_msgTypes[51] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3227,7 +3280,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{50} + return file_items_items_proto_rawDescGZIP(), []int{51} } func (x *GetRevisionRequest) GetSpaceId() string { @@ -3282,7 +3335,7 @@ type GetRevisionResponse struct { func (x *GetRevisionResponse) Reset() { *x = GetRevisionResponse{} - mi := &file_items_items_proto_msgTypes[51] + mi := &file_items_items_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3294,7 +3347,7 @@ func (x *GetRevisionResponse) String() string { func (*GetRevisionResponse) ProtoMessage() {} func (x *GetRevisionResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[51] + mi := &file_items_items_proto_msgTypes[52] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3307,7 +3360,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{51} + return file_items_items_proto_rawDescGZIP(), []int{52} } func (x *GetRevisionResponse) GetItem() *Item { @@ -3331,7 +3384,7 @@ type ListRevisionsRequest struct { func (x *ListRevisionsRequest) Reset() { *x = ListRevisionsRequest{} - mi := &file_items_items_proto_msgTypes[52] + mi := &file_items_items_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3343,7 +3396,7 @@ func (x *ListRevisionsRequest) String() string { func (*ListRevisionsRequest) ProtoMessage() {} func (x *ListRevisionsRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[52] + mi := &file_items_items_proto_msgTypes[53] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3356,7 +3409,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{52} + return file_items_items_proto_rawDescGZIP(), []int{53} } func (x *ListRevisionsRequest) GetSpaceId() string { @@ -3405,7 +3458,7 @@ type ListRevisionsResponse struct { func (x *ListRevisionsResponse) Reset() { *x = ListRevisionsResponse{} - mi := &file_items_items_proto_msgTypes[53] + mi := &file_items_items_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3417,7 +3470,7 @@ func (x *ListRevisionsResponse) String() string { func (*ListRevisionsResponse) ProtoMessage() {} func (x *ListRevisionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[53] + mi := &file_items_items_proto_msgTypes[54] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3430,7 +3483,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{53} + return file_items_items_proto_rawDescGZIP(), []int{54} } func (x *ListRevisionsResponse) GetItems() []*Item { @@ -3459,7 +3512,7 @@ type ArchiveRequest struct { func (x *ArchiveRequest) Reset() { *x = ArchiveRequest{} - mi := &file_items_items_proto_msgTypes[54] + mi := &file_items_items_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3471,7 +3524,7 @@ func (x *ArchiveRequest) String() string { func (*ArchiveRequest) ProtoMessage() {} func (x *ArchiveRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[54] + mi := &file_items_items_proto_msgTypes[55] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3484,7 +3537,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{54} + return file_items_items_proto_rawDescGZIP(), []int{55} } func (x *ArchiveRequest) GetItem() *Item { @@ -3504,7 +3557,7 @@ type UnarchiveRequest struct { func (x *UnarchiveRequest) Reset() { *x = UnarchiveRequest{} - mi := &file_items_items_proto_msgTypes[55] + mi := &file_items_items_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3516,7 +3569,7 @@ func (x *UnarchiveRequest) String() string { func (*UnarchiveRequest) ProtoMessage() {} func (x *UnarchiveRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[55] + mi := &file_items_items_proto_msgTypes[56] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3529,7 +3582,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{55} + return file_items_items_proto_rawDescGZIP(), []int{56} } func (x *UnarchiveRequest) GetItem() *Item { @@ -3553,7 +3606,7 @@ type FindArchivedRequest struct { func (x *FindArchivedRequest) Reset() { *x = FindArchivedRequest{} - mi := &file_items_items_proto_msgTypes[56] + mi := &file_items_items_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3565,7 +3618,7 @@ func (x *FindArchivedRequest) String() string { func (*FindArchivedRequest) ProtoMessage() {} func (x *FindArchivedRequest) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[56] + mi := &file_items_items_proto_msgTypes[57] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3578,7 +3631,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{56} + return file_items_items_proto_rawDescGZIP(), []int{57} } func (x *FindArchivedRequest) GetSpaceId() string { @@ -3627,7 +3680,7 @@ type FindArchivedResponse struct { func (x *FindArchivedResponse) Reset() { *x = FindArchivedResponse{} - mi := &file_items_items_proto_msgTypes[57] + mi := &file_items_items_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3639,7 +3692,7 @@ func (x *FindArchivedResponse) String() string { func (*FindArchivedResponse) ProtoMessage() {} func (x *FindArchivedResponse) ProtoReflect() protoreflect.Message { - mi := &file_items_items_proto_msgTypes[57] + mi := &file_items_items_proto_msgTypes[58] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3652,7 +3705,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{57} + return file_items_items_proto_rawDescGZIP(), []int{58} } func (x *FindArchivedResponse) GetItems() []*Item { @@ -3669,6 +3722,128 @@ func (x *FindArchivedResponse) GetTotal() int32 { return 0 } +type GetArchivedRequest struct { + state protoimpl.MessageState + 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"` + Options *GetArchivedOptions `protobuf:"bytes,10,opt,name=options,proto3" json:"options,omitempty"` +} + +func (x *GetArchivedRequest) Reset() { + *x = GetArchivedRequest{} + mi := &file_items_items_proto_msgTypes[59] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GetArchivedRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetArchivedRequest) ProtoMessage() {} + +func (x *GetArchivedRequest) ProtoReflect() protoreflect.Message { + mi := &file_items_items_proto_msgTypes[59] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetArchivedRequest.ProtoReflect.Descriptor instead. +func (*GetArchivedRequest) Descriptor() ([]byte, []int) { + return file_items_items_proto_rawDescGZIP(), []int{59} +} + +func (x *GetArchivedRequest) GetSpaceId() string { + if x != nil { + return x.SpaceId + } + return "" +} + +func (x *GetArchivedRequest) GetEnvId() string { + if x != nil { + return x.EnvId + } + return "" +} + +func (x *GetArchivedRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *GetArchivedRequest) GetItemId() string { + if x != nil { + return x.ItemId + } + return "" +} + +func (x *GetArchivedRequest) GetOptions() *GetArchivedOptions { + if x != nil { + return x.Options + } + return nil +} + +type GetArchivedResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Item *Item `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"` +} + +func (x *GetArchivedResponse) Reset() { + *x = GetArchivedResponse{} + mi := &file_items_items_proto_msgTypes[60] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GetArchivedResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetArchivedResponse) ProtoMessage() {} + +func (x *GetArchivedResponse) ProtoReflect() protoreflect.Message { + mi := &file_items_items_proto_msgTypes[60] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetArchivedResponse.ProtoReflect.Descriptor instead. +func (*GetArchivedResponse) Descriptor() ([]byte, []int) { + return file_items_items_proto_rawDescGZIP(), []int{60} +} + +func (x *GetArchivedResponse) GetItem() *Item { + if x != nil { + return x.Item + } + return nil +} + var File_items_items_proto protoreflect.FileDescriptor var file_items_items_proto_rawDesc = []byte{ @@ -3899,179 +4074,79 @@ var file_items_items_proto_rawDesc = []byte{ 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x64, 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, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x64, 0x73, 0x22, 0x5c, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, + 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, + 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x49, 0x64, 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, 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, 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, 0x54, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x29, - 0x0a, 0x10, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x69, - 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x64, 0x73, 0x22, 0xb1, 0x01, 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, 0x12, 0x33, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 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, 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, 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, 0xaa, 0x01, 0x0a, - 0x17, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 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, 0x48, 0x0a, 0x18, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x5f, - 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, - 0x6e, 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, 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, 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, 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, + 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, 0x54, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, + 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x69, 0x64, 0x73, + 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x64, 0x73, 0x22, 0xb1, 0x01, 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, 0x12, 0x33, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 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, @@ -4080,197 +4155,325 @@ var file_items_items_proto_rawDesc = []byte{ 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, 0xe2, 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, 0x12, 0x3b, 0x0a, 0x07, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 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, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 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, 0x58, - 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, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 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, + 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, - 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, 0xfa, 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, + 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, 0xaa, 0x01, 0x0a, 0x17, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 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, 0x48, 0x0a, 0x18, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x6f, 0x75, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x72, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 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, 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, 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, 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, + 0xe2, 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, 0x12, 0x3b, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 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, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 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, 0x58, 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, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 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, 0x22, 0xc1, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 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, 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, 0x3b, 0x0a, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 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, 0x3e, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x72, + 0x63, 0x68, 0x69, 0x76, 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, 0x32, 0xd2, 0x0c, 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, 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, + 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, 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, 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, + 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, 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, 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, + 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, 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, + 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, 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, 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, - 0x65, 0x0a, 0x10, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, - 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x76, 0x69, - 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 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, + 0x00, 0x12, 0x65, 0x0a, 0x10, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x76, + 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, + 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, + 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x2e, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 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, 0x12, 0x56, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, 0x69, + 0x76, 0x65, 0x64, 0x12, 0x21, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x64, 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, 0x41, 0x72, 0x63, 0x68, 0x69, 0x76, + 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 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 ( @@ -4286,7 +4489,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, 61) +var file_items_items_proto_msgTypes = make([]protoimpl.MessageInfo, 64) var file_items_items_proto_goTypes = []any{ (Item_State)(0), // 0: content.items.Item.State (*Error)(nil), // 1: content.items.Error @@ -4313,74 +4516,77 @@ var file_items_items_proto_goTypes = []any{ (*FindArchivedOptions)(nil), // 22: content.items.FindArchivedOptions (*ListRevisionsOptions)(nil), // 23: content.items.ListRevisionsOptions (*GetRevisionOptions)(nil), // 24: content.items.GetRevisionOptions - (*AggregateOptions)(nil), // 25: content.items.AggregateOptions - (*AggregatePublishedOptions)(nil), // 26: content.items.AggregatePublishedOptions - (*CreateRequest)(nil), // 27: content.items.CreateRequest - (*CreateResponse)(nil), // 28: content.items.CreateResponse - (*IntrospectRequest)(nil), // 29: content.items.IntrospectRequest - (*IntrospectResponse)(nil), // 30: content.items.IntrospectResponse - (*GetOptions)(nil), // 31: content.items.GetOptions - (*GetRequest)(nil), // 32: content.items.GetRequest - (*GetResponse)(nil), // 33: content.items.GetResponse - (*FindRequest)(nil), // 34: content.items.FindRequest - (*FindResponse)(nil), // 35: content.items.FindResponse - (*UpdateRequest)(nil), // 36: content.items.UpdateRequest - (*DeleteRequest)(nil), // 37: content.items.DeleteRequest - (*UndeleteRequest)(nil), // 38: content.items.UndeleteRequest - (*CheckoutRevisionRequest)(nil), // 39: content.items.CheckoutRevisionRequest - (*CheckoutRevisionResponse)(nil), // 40: content.items.CheckoutRevisionResponse - (*PublishRequest)(nil), // 41: content.items.PublishRequest - (*UnpublishRequest)(nil), // 42: content.items.UnpublishRequest - (*GetPublishedRequest)(nil), // 43: content.items.GetPublishedRequest - (*GetPublishedResponse)(nil), // 44: content.items.GetPublishedResponse - (*FindPublishedRequest)(nil), // 45: content.items.FindPublishedRequest - (*FindPublishedResponse)(nil), // 46: content.items.FindPublishedResponse - (*AggregateRequest)(nil), // 47: content.items.AggregateRequest - (*AggregateResponse)(nil), // 48: content.items.AggregateResponse - (*AggregatePublishedRequest)(nil), // 49: content.items.AggregatePublishedRequest - (*AggregatePublishedResponse)(nil), // 50: content.items.AggregatePublishedResponse - (*GetRevisionRequest)(nil), // 51: content.items.GetRevisionRequest - (*GetRevisionResponse)(nil), // 52: content.items.GetRevisionResponse - (*ListRevisionsRequest)(nil), // 53: content.items.ListRevisionsRequest - (*ListRevisionsResponse)(nil), // 54: content.items.ListRevisionsResponse - (*ArchiveRequest)(nil), // 55: content.items.ArchiveRequest - (*UnarchiveRequest)(nil), // 56: content.items.UnarchiveRequest - (*FindArchivedRequest)(nil), // 57: content.items.FindArchivedRequest - (*FindArchivedResponse)(nil), // 58: content.items.FindArchivedResponse - nil, // 59: content.items.Item.TranslationsEntry - nil, // 60: content.items.AggregateOptions.FieldsEntry - nil, // 61: content.items.AggregatePublishedOptions.FieldsEntry - (*timestamppb.Timestamp)(nil), // 62: google.protobuf.Timestamp - (*structpb.Struct)(nil), // 63: google.protobuf.Struct - (*common.Filter)(nil), // 64: common.Filter - (*common.FindOptions)(nil), // 65: common.FindOptions - (*common.Error_BadRequest_FieldViolation)(nil), // 66: common.Error.BadRequest.FieldViolation - (*emptypb.Empty)(nil), // 67: google.protobuf.Empty + (*GetArchivedOptions)(nil), // 25: content.items.GetArchivedOptions + (*AggregateOptions)(nil), // 26: content.items.AggregateOptions + (*AggregatePublishedOptions)(nil), // 27: content.items.AggregatePublishedOptions + (*CreateRequest)(nil), // 28: content.items.CreateRequest + (*CreateResponse)(nil), // 29: content.items.CreateResponse + (*IntrospectRequest)(nil), // 30: content.items.IntrospectRequest + (*IntrospectResponse)(nil), // 31: content.items.IntrospectResponse + (*GetOptions)(nil), // 32: content.items.GetOptions + (*GetRequest)(nil), // 33: content.items.GetRequest + (*GetResponse)(nil), // 34: content.items.GetResponse + (*FindRequest)(nil), // 35: content.items.FindRequest + (*FindResponse)(nil), // 36: content.items.FindResponse + (*UpdateRequest)(nil), // 37: content.items.UpdateRequest + (*DeleteRequest)(nil), // 38: content.items.DeleteRequest + (*UndeleteRequest)(nil), // 39: content.items.UndeleteRequest + (*CheckoutRevisionRequest)(nil), // 40: content.items.CheckoutRevisionRequest + (*CheckoutRevisionResponse)(nil), // 41: content.items.CheckoutRevisionResponse + (*PublishRequest)(nil), // 42: content.items.PublishRequest + (*UnpublishRequest)(nil), // 43: content.items.UnpublishRequest + (*GetPublishedRequest)(nil), // 44: content.items.GetPublishedRequest + (*GetPublishedResponse)(nil), // 45: content.items.GetPublishedResponse + (*FindPublishedRequest)(nil), // 46: content.items.FindPublishedRequest + (*FindPublishedResponse)(nil), // 47: content.items.FindPublishedResponse + (*AggregateRequest)(nil), // 48: content.items.AggregateRequest + (*AggregateResponse)(nil), // 49: content.items.AggregateResponse + (*AggregatePublishedRequest)(nil), // 50: content.items.AggregatePublishedRequest + (*AggregatePublishedResponse)(nil), // 51: content.items.AggregatePublishedResponse + (*GetRevisionRequest)(nil), // 52: content.items.GetRevisionRequest + (*GetRevisionResponse)(nil), // 53: content.items.GetRevisionResponse + (*ListRevisionsRequest)(nil), // 54: content.items.ListRevisionsRequest + (*ListRevisionsResponse)(nil), // 55: content.items.ListRevisionsResponse + (*ArchiveRequest)(nil), // 56: content.items.ArchiveRequest + (*UnarchiveRequest)(nil), // 57: content.items.UnarchiveRequest + (*FindArchivedRequest)(nil), // 58: content.items.FindArchivedRequest + (*FindArchivedResponse)(nil), // 59: content.items.FindArchivedResponse + (*GetArchivedRequest)(nil), // 60: content.items.GetArchivedRequest + (*GetArchivedResponse)(nil), // 61: content.items.GetArchivedResponse + nil, // 62: content.items.Item.TranslationsEntry + nil, // 63: content.items.AggregateOptions.FieldsEntry + nil, // 64: content.items.AggregatePublishedOptions.FieldsEntry + (*timestamppb.Timestamp)(nil), // 65: google.protobuf.Timestamp + (*structpb.Struct)(nil), // 66: google.protobuf.Struct + (*common.Filter)(nil), // 67: common.Filter + (*common.FindOptions)(nil), // 68: common.FindOptions + (*common.Error_BadRequest_FieldViolation)(nil), // 69: common.Error.BadRequest.FieldViolation + (*emptypb.Empty)(nil), // 70: 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 - 62, // 4: content.items.Item.created_rev_at:type_name -> google.protobuf.Timestamp - 62, // 5: content.items.Item.created_at:type_name -> google.protobuf.Timestamp - 62, // 6: content.items.Item.updated_at:type_name -> google.protobuf.Timestamp - 63, // 7: content.items.Item.data:type_name -> google.protobuf.Struct + 65, // 4: content.items.Item.created_rev_at:type_name -> google.protobuf.Timestamp + 65, // 5: content.items.Item.created_at:type_name -> google.protobuf.Timestamp + 65, // 6: content.items.Item.updated_at:type_name -> google.protobuf.Timestamp + 66, // 7: content.items.Item.data:type_name -> google.protobuf.Struct 5, // 8: content.items.Item.permissions:type_name -> content.items.Permissions - 59, // 9: content.items.Item.translations:type_name -> content.items.Item.TranslationsEntry - 64, // 10: content.items.Filter.data:type_name -> common.Filter - 65, // 11: content.items.FindOptions.options:type_name -> common.FindOptions - 65, // 12: content.items.FindPublishedOptions.options:type_name -> common.FindOptions - 65, // 13: content.items.FindArchivedOptions.options:type_name -> common.FindOptions - 60, // 14: content.items.AggregateOptions.fields:type_name -> content.items.AggregateOptions.FieldsEntry - 61, // 15: content.items.AggregatePublishedOptions.fields:type_name -> content.items.AggregatePublishedOptions.FieldsEntry + 62, // 9: content.items.Item.translations:type_name -> content.items.Item.TranslationsEntry + 67, // 10: content.items.Filter.data:type_name -> common.Filter + 68, // 11: content.items.FindOptions.options:type_name -> common.FindOptions + 68, // 12: content.items.FindPublishedOptions.options:type_name -> common.FindOptions + 68, // 13: content.items.FindArchivedOptions.options:type_name -> common.FindOptions + 63, // 14: content.items.AggregateOptions.fields:type_name -> content.items.AggregateOptions.FieldsEntry + 64, // 15: content.items.AggregatePublishedOptions.fields:type_name -> content.items.AggregatePublishedOptions.FieldsEntry 6, // 16: content.items.CreateRequest.item:type_name -> content.items.Item 13, // 17: content.items.CreateRequest.options:type_name -> content.items.CreateOptions 6, // 18: content.items.CreateResponse.created:type_name -> content.items.Item 6, // 19: content.items.IntrospectRequest.item:type_name -> content.items.Item 6, // 20: content.items.IntrospectResponse.item:type_name -> content.items.Item - 66, // 21: content.items.IntrospectResponse.validation_errors:type_name -> common.Error.BadRequest.FieldViolation - 31, // 22: content.items.GetRequest.options:type_name -> content.items.GetOptions + 69, // 21: content.items.IntrospectResponse.validation_errors:type_name -> common.Error.BadRequest.FieldViolation + 32, // 22: content.items.GetRequest.options:type_name -> content.items.GetOptions 6, // 23: content.items.GetResponse.item:type_name -> content.items.Item 12, // 24: content.items.FindRequest.filter:type_name -> content.items.Filter 14, // 25: content.items.FindRequest.options:type_name -> content.items.FindOptions @@ -4401,11 +4607,11 @@ var file_items_items_proto_depIdxs = []int32{ 21, // 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 - 25, // 43: content.items.AggregateRequest.options:type_name -> content.items.AggregateOptions - 63, // 44: content.items.AggregateResponse.result:type_name -> google.protobuf.Struct + 26, // 43: content.items.AggregateRequest.options:type_name -> content.items.AggregateOptions + 66, // 44: content.items.AggregateResponse.result:type_name -> google.protobuf.Struct 12, // 45: content.items.AggregatePublishedRequest.filter:type_name -> content.items.Filter - 26, // 46: content.items.AggregatePublishedRequest.options:type_name -> content.items.AggregatePublishedOptions - 63, // 47: content.items.AggregatePublishedResponse.result:type_name -> google.protobuf.Struct + 27, // 46: content.items.AggregatePublishedRequest.options:type_name -> content.items.AggregatePublishedOptions + 66, // 47: content.items.AggregatePublishedResponse.result:type_name -> google.protobuf.Struct 24, // 48: content.items.GetRevisionRequest.options:type_name -> content.items.GetRevisionOptions 6, // 49: content.items.GetRevisionResponse.item:type_name -> content.items.Item 23, // 50: content.items.ListRevisionsRequest.options:type_name -> content.items.ListRevisionsOptions @@ -4415,50 +4621,54 @@ var file_items_items_proto_depIdxs = []int32{ 12, // 54: content.items.FindArchivedRequest.filter:type_name -> content.items.Filter 22, // 55: content.items.FindArchivedRequest.options:type_name -> content.items.FindArchivedOptions 6, // 56: content.items.FindArchivedResponse.items:type_name -> content.items.Item - 63, // 57: content.items.Item.TranslationsEntry.value:type_name -> google.protobuf.Struct - 27, // 58: content.items.Items.Create:input_type -> content.items.CreateRequest - 29, // 59: content.items.Items.Introspect:input_type -> content.items.IntrospectRequest - 32, // 60: content.items.Items.Get:input_type -> content.items.GetRequest - 34, // 61: content.items.Items.Find:input_type -> content.items.FindRequest - 36, // 62: content.items.Items.Update:input_type -> content.items.UpdateRequest - 37, // 63: content.items.Items.Delete:input_type -> content.items.DeleteRequest - 38, // 64: content.items.Items.Undelete:input_type -> content.items.UndeleteRequest - 41, // 65: content.items.Items.Publish:input_type -> content.items.PublishRequest - 42, // 66: content.items.Items.Unpublish:input_type -> content.items.UnpublishRequest - 43, // 67: content.items.Items.GetPublished:input_type -> content.items.GetPublishedRequest - 45, // 68: content.items.Items.FindPublished:input_type -> content.items.FindPublishedRequest - 39, // 69: content.items.Items.CheckoutRevision:input_type -> content.items.CheckoutRevisionRequest - 47, // 70: content.items.Items.Aggregate:input_type -> content.items.AggregateRequest - 49, // 71: content.items.Items.AggregatePublished:input_type -> content.items.AggregatePublishedRequest - 51, // 72: content.items.Items.GetRevision:input_type -> content.items.GetRevisionRequest - 53, // 73: content.items.Items.ListRevisions:input_type -> content.items.ListRevisionsRequest - 55, // 74: content.items.Items.Archive:input_type -> content.items.ArchiveRequest - 57, // 75: content.items.Items.FindArchived:input_type -> content.items.FindArchivedRequest - 56, // 76: content.items.Items.Unarchive:input_type -> content.items.UnarchiveRequest - 28, // 77: content.items.Items.Create:output_type -> content.items.CreateResponse - 30, // 78: content.items.Items.Introspect:output_type -> content.items.IntrospectResponse - 33, // 79: content.items.Items.Get:output_type -> content.items.GetResponse - 35, // 80: content.items.Items.Find:output_type -> content.items.FindResponse - 67, // 81: content.items.Items.Update:output_type -> google.protobuf.Empty - 67, // 82: content.items.Items.Delete:output_type -> google.protobuf.Empty - 67, // 83: content.items.Items.Undelete:output_type -> google.protobuf.Empty - 67, // 84: content.items.Items.Publish:output_type -> google.protobuf.Empty - 67, // 85: content.items.Items.Unpublish:output_type -> google.protobuf.Empty - 44, // 86: content.items.Items.GetPublished:output_type -> content.items.GetPublishedResponse - 46, // 87: content.items.Items.FindPublished:output_type -> content.items.FindPublishedResponse - 40, // 88: content.items.Items.CheckoutRevision:output_type -> content.items.CheckoutRevisionResponse - 48, // 89: content.items.Items.Aggregate:output_type -> content.items.AggregateResponse - 50, // 90: content.items.Items.AggregatePublished:output_type -> content.items.AggregatePublishedResponse - 52, // 91: content.items.Items.GetRevision:output_type -> content.items.GetRevisionResponse - 54, // 92: content.items.Items.ListRevisions:output_type -> content.items.ListRevisionsResponse - 67, // 93: content.items.Items.Archive:output_type -> google.protobuf.Empty - 58, // 94: content.items.Items.FindArchived:output_type -> content.items.FindArchivedResponse - 67, // 95: content.items.Items.Unarchive:output_type -> google.protobuf.Empty - 77, // [77:96] is the sub-list for method output_type - 58, // [58:77] is the sub-list for method input_type - 58, // [58:58] is the sub-list for extension type_name - 58, // [58:58] is the sub-list for extension extendee - 0, // [0:58] is the sub-list for field type_name + 25, // 57: content.items.GetArchivedRequest.options:type_name -> content.items.GetArchivedOptions + 6, // 58: content.items.GetArchivedResponse.item:type_name -> content.items.Item + 66, // 59: content.items.Item.TranslationsEntry.value:type_name -> google.protobuf.Struct + 28, // 60: content.items.Items.Create:input_type -> content.items.CreateRequest + 30, // 61: content.items.Items.Introspect:input_type -> content.items.IntrospectRequest + 33, // 62: content.items.Items.Get:input_type -> content.items.GetRequest + 35, // 63: content.items.Items.Find:input_type -> content.items.FindRequest + 37, // 64: content.items.Items.Update:input_type -> content.items.UpdateRequest + 38, // 65: content.items.Items.Delete:input_type -> content.items.DeleteRequest + 39, // 66: content.items.Items.Undelete:input_type -> content.items.UndeleteRequest + 42, // 67: content.items.Items.Publish:input_type -> content.items.PublishRequest + 43, // 68: content.items.Items.Unpublish:input_type -> content.items.UnpublishRequest + 44, // 69: content.items.Items.GetPublished:input_type -> content.items.GetPublishedRequest + 46, // 70: content.items.Items.FindPublished:input_type -> content.items.FindPublishedRequest + 40, // 71: content.items.Items.CheckoutRevision:input_type -> content.items.CheckoutRevisionRequest + 48, // 72: content.items.Items.Aggregate:input_type -> content.items.AggregateRequest + 50, // 73: content.items.Items.AggregatePublished:input_type -> content.items.AggregatePublishedRequest + 52, // 74: content.items.Items.GetRevision:input_type -> content.items.GetRevisionRequest + 54, // 75: content.items.Items.ListRevisions:input_type -> content.items.ListRevisionsRequest + 56, // 76: content.items.Items.Archive:input_type -> content.items.ArchiveRequest + 58, // 77: content.items.Items.FindArchived:input_type -> content.items.FindArchivedRequest + 57, // 78: content.items.Items.Unarchive:input_type -> content.items.UnarchiveRequest + 60, // 79: content.items.Items.GetArchived:input_type -> content.items.GetArchivedRequest + 29, // 80: content.items.Items.Create:output_type -> content.items.CreateResponse + 31, // 81: content.items.Items.Introspect:output_type -> content.items.IntrospectResponse + 34, // 82: content.items.Items.Get:output_type -> content.items.GetResponse + 36, // 83: content.items.Items.Find:output_type -> content.items.FindResponse + 70, // 84: content.items.Items.Update:output_type -> google.protobuf.Empty + 70, // 85: content.items.Items.Delete:output_type -> google.protobuf.Empty + 70, // 86: content.items.Items.Undelete:output_type -> google.protobuf.Empty + 70, // 87: content.items.Items.Publish:output_type -> google.protobuf.Empty + 70, // 88: content.items.Items.Unpublish:output_type -> google.protobuf.Empty + 45, // 89: content.items.Items.GetPublished:output_type -> content.items.GetPublishedResponse + 47, // 90: content.items.Items.FindPublished:output_type -> content.items.FindPublishedResponse + 41, // 91: content.items.Items.CheckoutRevision:output_type -> content.items.CheckoutRevisionResponse + 49, // 92: content.items.Items.Aggregate:output_type -> content.items.AggregateResponse + 51, // 93: content.items.Items.AggregatePublished:output_type -> content.items.AggregatePublishedResponse + 53, // 94: content.items.Items.GetRevision:output_type -> content.items.GetRevisionResponse + 55, // 95: content.items.Items.ListRevisions:output_type -> content.items.ListRevisionsResponse + 70, // 96: content.items.Items.Archive:output_type -> google.protobuf.Empty + 59, // 97: content.items.Items.FindArchived:output_type -> content.items.FindArchivedResponse + 70, // 98: content.items.Items.Unarchive:output_type -> google.protobuf.Empty + 61, // 99: content.items.Items.GetArchived:output_type -> content.items.GetArchivedResponse + 80, // [80:100] is the sub-list for method output_type + 60, // [60:80] is the sub-list for method input_type + 60, // [60:60] is the sub-list for extension type_name + 60, // [60:60] is the sub-list for extension extendee + 0, // [0:60] is the sub-list for field type_name } func init() { file_items_items_proto_init() } @@ -4472,7 +4682,7 @@ func file_items_items_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_items_items_proto_rawDesc, NumEnums: 1, - NumMessages: 61, + NumMessages: 64, NumExtensions: 0, NumServices: 1, }, diff --git a/proto/items/items_grpc.pb.go b/proto/items/items_grpc.pb.go index bf2ffcab59361cbe86dd8b7fb2102d97b5abb215..56c94a2c0e7c0e3e4b01cb0155b878c1c8bebd2a 100644 --- a/proto/items/items_grpc.pb.go +++ b/proto/items/items_grpc.pb.go @@ -47,6 +47,7 @@ const ( Items_Archive_FullMethodName = "/content.items.Items/Archive" Items_FindArchived_FullMethodName = "/content.items.Items/FindArchived" Items_Unarchive_FullMethodName = "/content.items.Items/Unarchive" + Items_GetArchived_FullMethodName = "/content.items.Items/GetArchived" ) // ItemsClient is the client API for Items service. @@ -87,6 +88,7 @@ type ItemsClient interface { Archive(ctx context.Context, in *ArchiveRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) FindArchived(ctx context.Context, in *FindArchivedRequest, opts ...grpc.CallOption) (*FindArchivedResponse, error) Unarchive(ctx context.Context, in *UnarchiveRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + GetArchived(ctx context.Context, in *GetArchivedRequest, opts ...grpc.CallOption) (*GetArchivedResponse, error) } type itemsClient struct { @@ -287,6 +289,16 @@ func (c *itemsClient) Unarchive(ctx context.Context, in *UnarchiveRequest, opts return out, nil } +func (c *itemsClient) GetArchived(ctx context.Context, in *GetArchivedRequest, opts ...grpc.CallOption) (*GetArchivedResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetArchivedResponse) + err := c.cc.Invoke(ctx, Items_GetArchived_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + // ItemsServer is the server API for Items service. // All implementations must embed UnimplementedItemsServer // for forward compatibility. @@ -325,6 +337,7 @@ type ItemsServer interface { Archive(context.Context, *ArchiveRequest) (*emptypb.Empty, error) FindArchived(context.Context, *FindArchivedRequest) (*FindArchivedResponse, error) Unarchive(context.Context, *UnarchiveRequest) (*emptypb.Empty, error) + GetArchived(context.Context, *GetArchivedRequest) (*GetArchivedResponse, error) mustEmbedUnimplementedItemsServer() } @@ -392,6 +405,9 @@ func (UnimplementedItemsServer) FindArchived(context.Context, *FindArchivedReque func (UnimplementedItemsServer) Unarchive(context.Context, *UnarchiveRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method Unarchive not implemented") } +func (UnimplementedItemsServer) GetArchived(context.Context, *GetArchivedRequest) (*GetArchivedResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetArchived not implemented") +} func (UnimplementedItemsServer) mustEmbedUnimplementedItemsServer() {} func (UnimplementedItemsServer) testEmbeddedByValue() {} @@ -755,6 +771,24 @@ func _Items_Unarchive_Handler(srv interface{}, ctx context.Context, dec func(int return interceptor(ctx, in, info, handler) } +func _Items_GetArchived_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetArchivedRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ItemsServer).GetArchived(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Items_GetArchived_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ItemsServer).GetArchived(ctx, req.(*GetArchivedRequest)) + } + return interceptor(ctx, in, info, handler) +} + // Items_ServiceDesc is the grpc.ServiceDesc for Items service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -838,6 +872,10 @@ var Items_ServiceDesc = grpc.ServiceDesc{ MethodName: "Unarchive", Handler: _Items_Unarchive_Handler, }, + { + MethodName: "GetArchived", + Handler: _Items_GetArchived_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "items/items.proto", diff --git a/proto/mocks/ItemsClient.go b/proto/mocks/ItemsClient.go index 0bbd76f109c2b000988840f2b1c53271794f176d..7e8a6ca464d7cab82938a05d1d6b77b23a8de9a8 100644 --- a/proto/mocks/ItemsClient.go +++ b/proto/mocks/ItemsClient.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks @@ -129,6 +129,43 @@ func (_m *ItemsClient) Archive(ctx context.Context, in *items.ArchiveRequest, op return r0, r1 } +// CheckoutRevision provides a mock function with given fields: ctx, in, opts +func (_m *ItemsClient) CheckoutRevision(ctx context.Context, in *items.CheckoutRevisionRequest, opts ...grpc.CallOption) (*items.CheckoutRevisionResponse, error) { + _va := make([]interface{}, len(opts)) + for _i := range opts { + _va[_i] = opts[_i] + } + var _ca []interface{} + _ca = append(_ca, ctx, in) + _ca = append(_ca, _va...) + ret := _m.Called(_ca...) + + if len(ret) == 0 { + panic("no return value specified for CheckoutRevision") + } + + var r0 *items.CheckoutRevisionResponse + var r1 error + if rf, ok := ret.Get(0).(func(context.Context, *items.CheckoutRevisionRequest, ...grpc.CallOption) (*items.CheckoutRevisionResponse, error)); ok { + return rf(ctx, in, opts...) + } + if rf, ok := ret.Get(0).(func(context.Context, *items.CheckoutRevisionRequest, ...grpc.CallOption) *items.CheckoutRevisionResponse); ok { + r0 = rf(ctx, in, opts...) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*items.CheckoutRevisionResponse) + } + } + + if rf, ok := ret.Get(1).(func(context.Context, *items.CheckoutRevisionRequest, ...grpc.CallOption) error); ok { + r1 = rf(ctx, in, opts...) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // Create provides a mock function with given fields: ctx, in, opts func (_m *ItemsClient) Create(ctx context.Context, in *items.CreateRequest, opts ...grpc.CallOption) (*items.CreateResponse, error) { _va := make([]interface{}, len(opts)) @@ -351,6 +388,43 @@ func (_m *ItemsClient) Get(ctx context.Context, in *items.GetRequest, opts ...gr return r0, r1 } +// GetArchived provides a mock function with given fields: ctx, in, opts +func (_m *ItemsClient) GetArchived(ctx context.Context, in *items.GetArchivedRequest, opts ...grpc.CallOption) (*items.GetArchivedResponse, error) { + _va := make([]interface{}, len(opts)) + for _i := range opts { + _va[_i] = opts[_i] + } + var _ca []interface{} + _ca = append(_ca, ctx, in) + _ca = append(_ca, _va...) + ret := _m.Called(_ca...) + + if len(ret) == 0 { + panic("no return value specified for GetArchived") + } + + var r0 *items.GetArchivedResponse + var r1 error + if rf, ok := ret.Get(0).(func(context.Context, *items.GetArchivedRequest, ...grpc.CallOption) (*items.GetArchivedResponse, error)); ok { + return rf(ctx, in, opts...) + } + if rf, ok := ret.Get(0).(func(context.Context, *items.GetArchivedRequest, ...grpc.CallOption) *items.GetArchivedResponse); ok { + r0 = rf(ctx, in, opts...) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*items.GetArchivedResponse) + } + } + + if rf, ok := ret.Get(1).(func(context.Context, *items.GetArchivedRequest, ...grpc.CallOption) error); ok { + r1 = rf(ctx, in, opts...) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // GetPublished provides a mock function with given fields: ctx, in, opts func (_m *ItemsClient) GetPublished(ctx context.Context, in *items.GetPublishedRequest, opts ...grpc.CallOption) (*items.GetPublishedResponse, error) { _va := make([]interface{}, len(opts)) diff --git a/proto/mocks/ItemsServer.go b/proto/mocks/ItemsServer.go index 84e55b69c67766e25de19414db1dc4c30b862bb2..c695997f3f8e556cf09bd7f3e74a706b5ca0c4ea 100644 --- a/proto/mocks/ItemsServer.go +++ b/proto/mocks/ItemsServer.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks @@ -106,6 +106,36 @@ func (_m *ItemsServer) Archive(_a0 context.Context, _a1 *items.ArchiveRequest) ( return r0, r1 } +// CheckoutRevision provides a mock function with given fields: _a0, _a1 +func (_m *ItemsServer) CheckoutRevision(_a0 context.Context, _a1 *items.CheckoutRevisionRequest) (*items.CheckoutRevisionResponse, error) { + ret := _m.Called(_a0, _a1) + + if len(ret) == 0 { + panic("no return value specified for CheckoutRevision") + } + + var r0 *items.CheckoutRevisionResponse + var r1 error + if rf, ok := ret.Get(0).(func(context.Context, *items.CheckoutRevisionRequest) (*items.CheckoutRevisionResponse, error)); ok { + return rf(_a0, _a1) + } + if rf, ok := ret.Get(0).(func(context.Context, *items.CheckoutRevisionRequest) *items.CheckoutRevisionResponse); ok { + r0 = rf(_a0, _a1) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*items.CheckoutRevisionResponse) + } + } + + if rf, ok := ret.Get(1).(func(context.Context, *items.CheckoutRevisionRequest) error); ok { + r1 = rf(_a0, _a1) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // Create provides a mock function with given fields: _a0, _a1 func (_m *ItemsServer) Create(_a0 context.Context, _a1 *items.CreateRequest) (*items.CreateResponse, error) { ret := _m.Called(_a0, _a1) @@ -286,6 +316,36 @@ func (_m *ItemsServer) Get(_a0 context.Context, _a1 *items.GetRequest) (*items.G return r0, r1 } +// GetArchived provides a mock function with given fields: _a0, _a1 +func (_m *ItemsServer) GetArchived(_a0 context.Context, _a1 *items.GetArchivedRequest) (*items.GetArchivedResponse, error) { + ret := _m.Called(_a0, _a1) + + if len(ret) == 0 { + panic("no return value specified for GetArchived") + } + + var r0 *items.GetArchivedResponse + var r1 error + if rf, ok := ret.Get(0).(func(context.Context, *items.GetArchivedRequest) (*items.GetArchivedResponse, error)); ok { + return rf(_a0, _a1) + } + if rf, ok := ret.Get(0).(func(context.Context, *items.GetArchivedRequest) *items.GetArchivedResponse); ok { + r0 = rf(_a0, _a1) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*items.GetArchivedResponse) + } + } + + if rf, ok := ret.Get(1).(func(context.Context, *items.GetArchivedRequest) error); ok { + r1 = rf(_a0, _a1) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // GetPublished provides a mock function with given fields: _a0, _a1 func (_m *ItemsServer) GetPublished(_a0 context.Context, _a1 *items.GetPublishedRequest) (*items.GetPublishedResponse, error) { ret := _m.Called(_a0, _a1) diff --git a/proto/mocks/UnsafeItemsServer.go b/proto/mocks/UnsafeItemsServer.go index 5db884b3261906fcc5393f7dfc4db611d06bd827..79bfa1521605d3c42d4fcf502373f31c11f5ede3 100644 --- a/proto/mocks/UnsafeItemsServer.go +++ b/proto/mocks/UnsafeItemsServer.go @@ -1,4 +1,4 @@ -// Code generated by mockery v2.46.3. DO NOT EDIT. +// Code generated by mockery v2.49.0. DO NOT EDIT. package mocks