1467 lines
56 KiB
Go
1467 lines
56 KiB
Go
// Extracted from: Spotify 1.1.73.517 (macOS)
|
|
|
|
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.28.1
|
|
// protoc v3.21.12
|
|
// source: playlist_permission.proto
|
|
|
|
package proto
|
|
|
|
import (
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
type PermissionLevel int32
|
|
|
|
const (
|
|
PermissionLevel_UNKNOWN PermissionLevel = 0
|
|
PermissionLevel_BLOCKED PermissionLevel = 1
|
|
PermissionLevel_VIEWER PermissionLevel = 2
|
|
PermissionLevel_CONTRIBUTOR PermissionLevel = 3
|
|
)
|
|
|
|
// Enum value maps for PermissionLevel.
|
|
var (
|
|
PermissionLevel_name = map[int32]string{
|
|
0: "UNKNOWN",
|
|
1: "BLOCKED",
|
|
2: "VIEWER",
|
|
3: "CONTRIBUTOR",
|
|
}
|
|
PermissionLevel_value = map[string]int32{
|
|
"UNKNOWN": 0,
|
|
"BLOCKED": 1,
|
|
"VIEWER": 2,
|
|
"CONTRIBUTOR": 3,
|
|
}
|
|
)
|
|
|
|
func (x PermissionLevel) Enum() *PermissionLevel {
|
|
p := new(PermissionLevel)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x PermissionLevel) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (PermissionLevel) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_playlist_permission_proto_enumTypes[0].Descriptor()
|
|
}
|
|
|
|
func (PermissionLevel) Type() protoreflect.EnumType {
|
|
return &file_playlist_permission_proto_enumTypes[0]
|
|
}
|
|
|
|
func (x PermissionLevel) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Do not use.
|
|
func (x *PermissionLevel) UnmarshalJSON(b []byte) error {
|
|
num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
*x = PermissionLevel(num)
|
|
return nil
|
|
}
|
|
|
|
// Deprecated: Use PermissionLevel.Descriptor instead.
|
|
func (PermissionLevel) EnumDescriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
type Permission struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Revision []byte `protobuf:"bytes,1,opt,name=revision" json:"revision,omitempty"`
|
|
PermissionLevel *PermissionLevel `protobuf:"varint,2,opt,name=permission_level,json=permissionLevel,enum=spotify.playlist_permission.proto.PermissionLevel" json:"permission_level,omitempty"`
|
|
}
|
|
|
|
func (x *Permission) Reset() {
|
|
*x = Permission{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Permission) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Permission) ProtoMessage() {}
|
|
|
|
func (x *Permission) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[0]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Permission.ProtoReflect.Descriptor instead.
|
|
func (*Permission) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *Permission) GetRevision() []byte {
|
|
if x != nil {
|
|
return x.Revision
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Permission) GetPermissionLevel() PermissionLevel {
|
|
if x != nil && x.PermissionLevel != nil {
|
|
return *x.PermissionLevel
|
|
}
|
|
return PermissionLevel_UNKNOWN
|
|
}
|
|
|
|
type Capabilities struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
CanView *bool `protobuf:"varint,1,opt,name=can_view,json=canView" json:"can_view,omitempty"`
|
|
CanAdministratePermissions *bool `protobuf:"varint,2,opt,name=can_administrate_permissions,json=canAdministratePermissions" json:"can_administrate_permissions,omitempty"`
|
|
GrantableLevel []PermissionLevel `protobuf:"varint,3,rep,name=grantable_level,json=grantableLevel,enum=spotify.playlist_permission.proto.PermissionLevel" json:"grantable_level,omitempty"`
|
|
CanEditMetadata *bool `protobuf:"varint,4,opt,name=can_edit_metadata,json=canEditMetadata" json:"can_edit_metadata,omitempty"`
|
|
CanEditItems *bool `protobuf:"varint,5,opt,name=can_edit_items,json=canEditItems" json:"can_edit_items,omitempty"`
|
|
CanCancelMembership *bool `protobuf:"varint,6,opt,name=can_cancel_membership,json=canCancelMembership" json:"can_cancel_membership,omitempty"`
|
|
}
|
|
|
|
func (x *Capabilities) Reset() {
|
|
*x = Capabilities{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Capabilities) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Capabilities) ProtoMessage() {}
|
|
|
|
func (x *Capabilities) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[1]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Capabilities.ProtoReflect.Descriptor instead.
|
|
func (*Capabilities) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *Capabilities) GetCanView() bool {
|
|
if x != nil && x.CanView != nil {
|
|
return *x.CanView
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Capabilities) GetCanAdministratePermissions() bool {
|
|
if x != nil && x.CanAdministratePermissions != nil {
|
|
return *x.CanAdministratePermissions
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Capabilities) GetGrantableLevel() []PermissionLevel {
|
|
if x != nil {
|
|
return x.GrantableLevel
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Capabilities) GetCanEditMetadata() bool {
|
|
if x != nil && x.CanEditMetadata != nil {
|
|
return *x.CanEditMetadata
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Capabilities) GetCanEditItems() bool {
|
|
if x != nil && x.CanEditItems != nil {
|
|
return *x.CanEditItems
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Capabilities) GetCanCancelMembership() bool {
|
|
if x != nil && x.CanCancelMembership != nil {
|
|
return *x.CanCancelMembership
|
|
}
|
|
return false
|
|
}
|
|
|
|
type CapabilitiesMultiRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Request []*CapabilitiesRequest `protobuf:"bytes,1,rep,name=request" json:"request,omitempty"`
|
|
FallbackUsername *string `protobuf:"bytes,2,opt,name=fallback_username,json=fallbackUsername" json:"fallback_username,omitempty"`
|
|
FallbackUserId *string `protobuf:"bytes,3,opt,name=fallback_user_id,json=fallbackUserId" json:"fallback_user_id,omitempty"`
|
|
FallbackUri *string `protobuf:"bytes,4,opt,name=fallback_uri,json=fallbackUri" json:"fallback_uri,omitempty"`
|
|
}
|
|
|
|
func (x *CapabilitiesMultiRequest) Reset() {
|
|
*x = CapabilitiesMultiRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CapabilitiesMultiRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CapabilitiesMultiRequest) ProtoMessage() {}
|
|
|
|
func (x *CapabilitiesMultiRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[2]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use CapabilitiesMultiRequest.ProtoReflect.Descriptor instead.
|
|
func (*CapabilitiesMultiRequest) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *CapabilitiesMultiRequest) GetRequest() []*CapabilitiesRequest {
|
|
if x != nil {
|
|
return x.Request
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *CapabilitiesMultiRequest) GetFallbackUsername() string {
|
|
if x != nil && x.FallbackUsername != nil {
|
|
return *x.FallbackUsername
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CapabilitiesMultiRequest) GetFallbackUserId() string {
|
|
if x != nil && x.FallbackUserId != nil {
|
|
return *x.FallbackUserId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CapabilitiesMultiRequest) GetFallbackUri() string {
|
|
if x != nil && x.FallbackUri != nil {
|
|
return *x.FallbackUri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type CapabilitiesRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Username *string `protobuf:"bytes,1,opt,name=username" json:"username,omitempty"`
|
|
UserId *string `protobuf:"bytes,2,opt,name=user_id,json=userId" json:"user_id,omitempty"`
|
|
Uri *string `protobuf:"bytes,3,opt,name=uri" json:"uri,omitempty"`
|
|
UserIsOwner *bool `protobuf:"varint,4,opt,name=user_is_owner,json=userIsOwner" json:"user_is_owner,omitempty"`
|
|
}
|
|
|
|
func (x *CapabilitiesRequest) Reset() {
|
|
*x = CapabilitiesRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CapabilitiesRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CapabilitiesRequest) ProtoMessage() {}
|
|
|
|
func (x *CapabilitiesRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[3]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use CapabilitiesRequest.ProtoReflect.Descriptor instead.
|
|
func (*CapabilitiesRequest) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *CapabilitiesRequest) GetUsername() string {
|
|
if x != nil && x.Username != nil {
|
|
return *x.Username
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CapabilitiesRequest) GetUserId() string {
|
|
if x != nil && x.UserId != nil {
|
|
return *x.UserId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CapabilitiesRequest) GetUri() string {
|
|
if x != nil && x.Uri != nil {
|
|
return *x.Uri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CapabilitiesRequest) GetUserIsOwner() bool {
|
|
if x != nil && x.UserIsOwner != nil {
|
|
return *x.UserIsOwner
|
|
}
|
|
return false
|
|
}
|
|
|
|
type CapabilitiesMultiResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Response []*CapabilitiesResponse `protobuf:"bytes,1,rep,name=response" json:"response,omitempty"`
|
|
}
|
|
|
|
func (x *CapabilitiesMultiResponse) Reset() {
|
|
*x = CapabilitiesMultiResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CapabilitiesMultiResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CapabilitiesMultiResponse) ProtoMessage() {}
|
|
|
|
func (x *CapabilitiesMultiResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[4]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use CapabilitiesMultiResponse.ProtoReflect.Descriptor instead.
|
|
func (*CapabilitiesMultiResponse) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *CapabilitiesMultiResponse) GetResponse() []*CapabilitiesResponse {
|
|
if x != nil {
|
|
return x.Response
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type CapabilitiesResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Status *ResponseStatus `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"`
|
|
Capabilities *Capabilities `protobuf:"bytes,2,opt,name=capabilities" json:"capabilities,omitempty"`
|
|
}
|
|
|
|
func (x *CapabilitiesResponse) Reset() {
|
|
*x = CapabilitiesResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CapabilitiesResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CapabilitiesResponse) ProtoMessage() {}
|
|
|
|
func (x *CapabilitiesResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[5]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use CapabilitiesResponse.ProtoReflect.Descriptor instead.
|
|
func (*CapabilitiesResponse) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *CapabilitiesResponse) GetStatus() *ResponseStatus {
|
|
if x != nil {
|
|
return x.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *CapabilitiesResponse) GetCapabilities() *Capabilities {
|
|
if x != nil {
|
|
return x.Capabilities
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type SetPermissionLevelRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
PermissionLevel *PermissionLevel `protobuf:"varint,1,opt,name=permission_level,json=permissionLevel,enum=spotify.playlist_permission.proto.PermissionLevel" json:"permission_level,omitempty"`
|
|
}
|
|
|
|
func (x *SetPermissionLevelRequest) Reset() {
|
|
*x = SetPermissionLevelRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SetPermissionLevelRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SetPermissionLevelRequest) ProtoMessage() {}
|
|
|
|
func (x *SetPermissionLevelRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[6]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SetPermissionLevelRequest.ProtoReflect.Descriptor instead.
|
|
func (*SetPermissionLevelRequest) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *SetPermissionLevelRequest) GetPermissionLevel() PermissionLevel {
|
|
if x != nil && x.PermissionLevel != nil {
|
|
return *x.PermissionLevel
|
|
}
|
|
return PermissionLevel_UNKNOWN
|
|
}
|
|
|
|
type SetPermissionResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
ResultingPermission *Permission `protobuf:"bytes,1,opt,name=resulting_permission,json=resultingPermission" json:"resulting_permission,omitempty"`
|
|
}
|
|
|
|
func (x *SetPermissionResponse) Reset() {
|
|
*x = SetPermissionResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SetPermissionResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SetPermissionResponse) ProtoMessage() {}
|
|
|
|
func (x *SetPermissionResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[7]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SetPermissionResponse.ProtoReflect.Descriptor instead.
|
|
func (*SetPermissionResponse) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *SetPermissionResponse) GetResultingPermission() *Permission {
|
|
if x != nil {
|
|
return x.ResultingPermission
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type GetMemberPermissionsResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
MemberPermissions map[string]*Permission `protobuf:"bytes,1,rep,name=member_permissions,json=memberPermissions" json:"member_permissions,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
|
}
|
|
|
|
func (x *GetMemberPermissionsResponse) Reset() {
|
|
*x = GetMemberPermissionsResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *GetMemberPermissionsResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*GetMemberPermissionsResponse) ProtoMessage() {}
|
|
|
|
func (x *GetMemberPermissionsResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[8]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use GetMemberPermissionsResponse.ProtoReflect.Descriptor instead.
|
|
func (*GetMemberPermissionsResponse) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *GetMemberPermissionsResponse) GetMemberPermissions() map[string]*Permission {
|
|
if x != nil {
|
|
return x.MemberPermissions
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type Permissions struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
BasePermission *Permission `protobuf:"bytes,1,opt,name=base_permission,json=basePermission" json:"base_permission,omitempty"`
|
|
}
|
|
|
|
func (x *Permissions) Reset() {
|
|
*x = Permissions{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Permissions) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Permissions) ProtoMessage() {}
|
|
|
|
func (x *Permissions) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[9]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Permissions.ProtoReflect.Descriptor instead.
|
|
func (*Permissions) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (x *Permissions) GetBasePermission() *Permission {
|
|
if x != nil {
|
|
return x.BasePermission
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type PermissionState struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Permissions *Permissions `protobuf:"bytes,1,opt,name=permissions" json:"permissions,omitempty"`
|
|
Capabilities *Capabilities `protobuf:"bytes,2,opt,name=capabilities" json:"capabilities,omitempty"`
|
|
IsPrivate *bool `protobuf:"varint,3,opt,name=is_private,json=isPrivate" json:"is_private,omitempty"`
|
|
IsCollaborative *bool `protobuf:"varint,4,opt,name=is_collaborative,json=isCollaborative" json:"is_collaborative,omitempty"`
|
|
}
|
|
|
|
func (x *PermissionState) Reset() {
|
|
*x = PermissionState{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[10]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PermissionState) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PermissionState) ProtoMessage() {}
|
|
|
|
func (x *PermissionState) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[10]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PermissionState.ProtoReflect.Descriptor instead.
|
|
func (*PermissionState) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
func (x *PermissionState) GetPermissions() *Permissions {
|
|
if x != nil {
|
|
return x.Permissions
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PermissionState) GetCapabilities() *Capabilities {
|
|
if x != nil {
|
|
return x.Capabilities
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PermissionState) GetIsPrivate() bool {
|
|
if x != nil && x.IsPrivate != nil {
|
|
return *x.IsPrivate
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *PermissionState) GetIsCollaborative() bool {
|
|
if x != nil && x.IsCollaborative != nil {
|
|
return *x.IsCollaborative
|
|
}
|
|
return false
|
|
}
|
|
|
|
type PermissionStatePub struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
PermissionState *PermissionState `protobuf:"bytes,1,opt,name=permission_state,json=permissionState" json:"permission_state,omitempty"`
|
|
}
|
|
|
|
func (x *PermissionStatePub) Reset() {
|
|
*x = PermissionStatePub{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[11]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PermissionStatePub) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PermissionStatePub) ProtoMessage() {}
|
|
|
|
func (x *PermissionStatePub) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[11]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PermissionStatePub.ProtoReflect.Descriptor instead.
|
|
func (*PermissionStatePub) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
func (x *PermissionStatePub) GetPermissionState() *PermissionState {
|
|
if x != nil {
|
|
return x.PermissionState
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type PermissionGrantOptions struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Permission *Permission `protobuf:"bytes,1,opt,name=permission" json:"permission,omitempty"`
|
|
TtlMs *int64 `protobuf:"varint,2,opt,name=ttl_ms,json=ttlMs" json:"ttl_ms,omitempty"`
|
|
}
|
|
|
|
func (x *PermissionGrantOptions) Reset() {
|
|
*x = PermissionGrantOptions{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[12]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PermissionGrantOptions) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PermissionGrantOptions) ProtoMessage() {}
|
|
|
|
func (x *PermissionGrantOptions) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[12]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PermissionGrantOptions.ProtoReflect.Descriptor instead.
|
|
func (*PermissionGrantOptions) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
func (x *PermissionGrantOptions) GetPermission() *Permission {
|
|
if x != nil {
|
|
return x.Permission
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PermissionGrantOptions) GetTtlMs() int64 {
|
|
if x != nil && x.TtlMs != nil {
|
|
return *x.TtlMs
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type PermissionGrant struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Token *string `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"`
|
|
PermissionGrantOptions *PermissionGrantOptions `protobuf:"bytes,2,opt,name=permission_grant_options,json=permissionGrantOptions" json:"permission_grant_options,omitempty"`
|
|
}
|
|
|
|
func (x *PermissionGrant) Reset() {
|
|
*x = PermissionGrant{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[13]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PermissionGrant) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PermissionGrant) ProtoMessage() {}
|
|
|
|
func (x *PermissionGrant) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[13]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PermissionGrant.ProtoReflect.Descriptor instead.
|
|
func (*PermissionGrant) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{13}
|
|
}
|
|
|
|
func (x *PermissionGrant) GetToken() string {
|
|
if x != nil && x.Token != nil {
|
|
return *x.Token
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PermissionGrant) GetPermissionGrantOptions() *PermissionGrantOptions {
|
|
if x != nil {
|
|
return x.PermissionGrantOptions
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type ClaimPermissionGrantResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
UserPermission *Permission `protobuf:"bytes,1,opt,name=user_permission,json=userPermission" json:"user_permission,omitempty"`
|
|
Capabilities *Capabilities `protobuf:"bytes,2,opt,name=capabilities" json:"capabilities,omitempty"`
|
|
}
|
|
|
|
func (x *ClaimPermissionGrantResponse) Reset() {
|
|
*x = ClaimPermissionGrantResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[14]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ClaimPermissionGrantResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ClaimPermissionGrantResponse) ProtoMessage() {}
|
|
|
|
func (x *ClaimPermissionGrantResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[14]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ClaimPermissionGrantResponse.ProtoReflect.Descriptor instead.
|
|
func (*ClaimPermissionGrantResponse) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{14}
|
|
}
|
|
|
|
func (x *ClaimPermissionGrantResponse) GetUserPermission() *Permission {
|
|
if x != nil {
|
|
return x.UserPermission
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ClaimPermissionGrantResponse) GetCapabilities() *Capabilities {
|
|
if x != nil {
|
|
return x.Capabilities
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type ResponseStatus struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
StatusCode *int32 `protobuf:"varint,1,opt,name=status_code,json=statusCode" json:"status_code,omitempty"`
|
|
StatusMessage *string `protobuf:"bytes,2,opt,name=status_message,json=statusMessage" json:"status_message,omitempty"`
|
|
}
|
|
|
|
func (x *ResponseStatus) Reset() {
|
|
*x = ResponseStatus{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_playlist_permission_proto_msgTypes[15]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ResponseStatus) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ResponseStatus) ProtoMessage() {}
|
|
|
|
func (x *ResponseStatus) ProtoReflect() protoreflect.Message {
|
|
mi := &file_playlist_permission_proto_msgTypes[15]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ResponseStatus.ProtoReflect.Descriptor instead.
|
|
func (*ResponseStatus) Descriptor() ([]byte, []int) {
|
|
return file_playlist_permission_proto_rawDescGZIP(), []int{15}
|
|
}
|
|
|
|
func (x *ResponseStatus) GetStatusCode() int32 {
|
|
if x != nil && x.StatusCode != nil {
|
|
return *x.StatusCode
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ResponseStatus) GetStatusMessage() string {
|
|
if x != nil && x.StatusMessage != nil {
|
|
return *x.StatusMessage
|
|
}
|
|
return ""
|
|
}
|
|
|
|
var File_playlist_permission_proto protoreflect.FileDescriptor
|
|
|
|
var file_playlist_permission_proto_rawDesc = []byte{
|
|
0x0a, 0x19, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69,
|
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x21, 0x73, 0x70, 0x6f,
|
|
0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65,
|
|
0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x87,
|
|
0x01, 0x0a, 0x0a, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a,
|
|
0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
|
|
0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x65, 0x72,
|
|
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c,
|
|
0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0xce, 0x02, 0x0a, 0x0c, 0x43, 0x61, 0x70,
|
|
0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x61, 0x6e,
|
|
0x5f, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x61, 0x6e,
|
|
0x56, 0x69, 0x65, 0x77, 0x12, 0x40, 0x0a, 0x1c, 0x63, 0x61, 0x6e, 0x5f, 0x61, 0x64, 0x6d, 0x69,
|
|
0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x63, 0x61, 0x6e, 0x41,
|
|
0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69,
|
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5b, 0x0a, 0x0f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x61,
|
|
0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32,
|
|
0x32, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69,
|
|
0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
|
|
0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x65,
|
|
0x76, 0x65, 0x6c, 0x52, 0x0e, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x65,
|
|
0x76, 0x65, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x61, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x5f,
|
|
0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f,
|
|
0x63, 0x61, 0x6e, 0x45, 0x64, 0x69, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12,
|
|
0x24, 0x0a, 0x0e, 0x63, 0x61, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x69, 0x74, 0x65, 0x6d,
|
|
0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x61, 0x6e, 0x45, 0x64, 0x69, 0x74,
|
|
0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x61, 0x6e, 0x5f, 0x63, 0x61, 0x6e,
|
|
0x63, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x18, 0x06,
|
|
0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x63, 0x61, 0x6e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d,
|
|
0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x22, 0xe6, 0x01, 0x0a, 0x18, 0x43, 0x61,
|
|
0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x52,
|
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x50, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
|
|
0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66,
|
|
0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69,
|
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x61, 0x70, 0x61,
|
|
0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52,
|
|
0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x66, 0x61, 0x6c, 0x6c,
|
|
0x62, 0x61, 0x63, 0x6b, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x10, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x55, 0x73, 0x65,
|
|
0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63,
|
|
0x6b, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x0e, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12,
|
|
0x21, 0x0a, 0x0c, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x75, 0x72, 0x69, 0x18,
|
|
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x55,
|
|
0x72, 0x69, 0x22, 0x80, 0x01, 0x0a, 0x13, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
|
|
0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73,
|
|
0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73,
|
|
0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69,
|
|
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12,
|
|
0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72,
|
|
0x69, 0x12, 0x22, 0x0a, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x5f, 0x6f, 0x77, 0x6e,
|
|
0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x49, 0x73,
|
|
0x4f, 0x77, 0x6e, 0x65, 0x72, 0x22, 0x70, 0x0a, 0x19, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c,
|
|
0x69, 0x74, 0x69, 0x65, 0x73, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
|
|
0x73, 0x65, 0x12, 0x53, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01,
|
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70,
|
|
0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c,
|
|
0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x72,
|
|
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb6, 0x01, 0x0a, 0x14, 0x43, 0x61, 0x70, 0x61,
|
|
0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
|
|
0x12, 0x49, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
|
|
0x32, 0x31, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c,
|
|
0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x53, 0x74, 0x61,
|
|
0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x53, 0x0a, 0x0c, 0x63,
|
|
0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
0x0b, 0x32, 0x2f, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79,
|
|
0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
|
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69,
|
|
0x65, 0x73, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73,
|
|
0x22, 0x7a, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5d, 0x0a,
|
|
0x10, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, 0x65,
|
|
0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66,
|
|
0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69,
|
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d,
|
|
0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x0f, 0x70, 0x65, 0x72,
|
|
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x79, 0x0a, 0x15,
|
|
0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
|
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x14, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69,
|
|
0x6e, 0x67, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c,
|
|
0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x52, 0x13, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72,
|
|
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x9b, 0x02, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x4d,
|
|
0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
|
|
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x85, 0x01, 0x0a, 0x12, 0x6d, 0x65, 0x6d,
|
|
0x62, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18,
|
|
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x56, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e,
|
|
0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d,
|
|
0x62, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
|
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x65, 0x72,
|
|
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x6d,
|
|
0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
|
|
0x1a, 0x73, 0x0a, 0x16, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73,
|
|
0x73, 0x69, 0x6f, 0x6e, 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, 0x43, 0x0a, 0x05,
|
|
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x73, 0x70,
|
|
0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70,
|
|
0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
|
|
0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
|
|
0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x65, 0x0a, 0x0b, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x56, 0x0a, 0x0f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x65, 0x72,
|
|
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e,
|
|
0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74,
|
|
0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x62, 0x61,
|
|
0x73, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x82, 0x02, 0x0a,
|
|
0x0f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65,
|
|
0x12, 0x50, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e,
|
|
0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73,
|
|
0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x73, 0x12, 0x53, 0x0a, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69,
|
|
0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69,
|
|
0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d,
|
|
0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x61, 0x70,
|
|
0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62,
|
|
0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x72,
|
|
0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50,
|
|
0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6c,
|
|
0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
|
|
0x52, 0x0f, 0x69, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x76,
|
|
0x65, 0x22, 0x73, 0x0a, 0x12, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53,
|
|
0x74, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x12, 0x5d, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x6d, 0x69,
|
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
|
|
0x0b, 0x32, 0x32, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79,
|
|
0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
|
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
|
|
0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x22, 0x7e, 0x0a, 0x16, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73,
|
|
0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
|
|
0x12, 0x4d, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70,
|
|
0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12,
|
|
0x15, 0x0a, 0x06, 0x74, 0x74, 0x6c, 0x5f, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
|
|
0x05, 0x74, 0x74, 0x6c, 0x4d, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x0f, 0x50, 0x65, 0x72, 0x6d, 0x69,
|
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f,
|
|
0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
|
|
0x12, 0x73, 0x0a, 0x18, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x67,
|
|
0x72, 0x61, 0x6e, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01,
|
|
0x28, 0x0b, 0x32, 0x39, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61,
|
|
0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
|
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x16, 0x70,
|
|
0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x70,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xcb, 0x01, 0x0a, 0x1c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x50,
|
|
0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x52, 0x65,
|
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x70,
|
|
0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
|
0x2d, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69,
|
|
0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
|
|
0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0e,
|
|
0x75, 0x73, 0x65, 0x72, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x53,
|
|
0x0a, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70,
|
|
0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c,
|
|
0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
|
|
0x69, 0x65, 0x73, 0x22, 0x58, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x53,
|
|
0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f,
|
|
0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74,
|
|
0x75, 0x73, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
|
|
0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
|
|
0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0x48, 0x0a,
|
|
0x0f, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c,
|
|
0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a,
|
|
0x07, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x56, 0x49,
|
|
0x45, 0x57, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x49,
|
|
0x42, 0x55, 0x54, 0x4f, 0x52, 0x10, 0x03, 0x42, 0x43, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x2e, 0x73,
|
|
0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x2e,
|
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x48, 0x02, 0x50, 0x01, 0x5a, 0x21, 0x74, 0x75, 0x78, 0x70, 0x61,
|
|
0x2e, 0x69, 0x6e, 0x2f, 0x61, 0x2f, 0x67, 0x6f, 0x70, 0x6c, 0x61, 0x79, 0x64, 0x2f, 0x6c, 0x69,
|
|
0x62, 0x2f, 0x73, 0x70, 0x6f, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
}
|
|
|
|
var (
|
|
file_playlist_permission_proto_rawDescOnce sync.Once
|
|
file_playlist_permission_proto_rawDescData = file_playlist_permission_proto_rawDesc
|
|
)
|
|
|
|
func file_playlist_permission_proto_rawDescGZIP() []byte {
|
|
file_playlist_permission_proto_rawDescOnce.Do(func() {
|
|
file_playlist_permission_proto_rawDescData = protoimpl.X.CompressGZIP(file_playlist_permission_proto_rawDescData)
|
|
})
|
|
return file_playlist_permission_proto_rawDescData
|
|
}
|
|
|
|
var file_playlist_permission_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
|
|
var file_playlist_permission_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
|
|
var file_playlist_permission_proto_goTypes = []interface{}{
|
|
(PermissionLevel)(0), // 0: spotify.playlist_permission.proto.PermissionLevel
|
|
(*Permission)(nil), // 1: spotify.playlist_permission.proto.Permission
|
|
(*Capabilities)(nil), // 2: spotify.playlist_permission.proto.Capabilities
|
|
(*CapabilitiesMultiRequest)(nil), // 3: spotify.playlist_permission.proto.CapabilitiesMultiRequest
|
|
(*CapabilitiesRequest)(nil), // 4: spotify.playlist_permission.proto.CapabilitiesRequest
|
|
(*CapabilitiesMultiResponse)(nil), // 5: spotify.playlist_permission.proto.CapabilitiesMultiResponse
|
|
(*CapabilitiesResponse)(nil), // 6: spotify.playlist_permission.proto.CapabilitiesResponse
|
|
(*SetPermissionLevelRequest)(nil), // 7: spotify.playlist_permission.proto.SetPermissionLevelRequest
|
|
(*SetPermissionResponse)(nil), // 8: spotify.playlist_permission.proto.SetPermissionResponse
|
|
(*GetMemberPermissionsResponse)(nil), // 9: spotify.playlist_permission.proto.GetMemberPermissionsResponse
|
|
(*Permissions)(nil), // 10: spotify.playlist_permission.proto.Permissions
|
|
(*PermissionState)(nil), // 11: spotify.playlist_permission.proto.PermissionState
|
|
(*PermissionStatePub)(nil), // 12: spotify.playlist_permission.proto.PermissionStatePub
|
|
(*PermissionGrantOptions)(nil), // 13: spotify.playlist_permission.proto.PermissionGrantOptions
|
|
(*PermissionGrant)(nil), // 14: spotify.playlist_permission.proto.PermissionGrant
|
|
(*ClaimPermissionGrantResponse)(nil), // 15: spotify.playlist_permission.proto.ClaimPermissionGrantResponse
|
|
(*ResponseStatus)(nil), // 16: spotify.playlist_permission.proto.ResponseStatus
|
|
nil, // 17: spotify.playlist_permission.proto.GetMemberPermissionsResponse.MemberPermissionsEntry
|
|
}
|
|
var file_playlist_permission_proto_depIdxs = []int32{
|
|
0, // 0: spotify.playlist_permission.proto.Permission.permission_level:type_name -> spotify.playlist_permission.proto.PermissionLevel
|
|
0, // 1: spotify.playlist_permission.proto.Capabilities.grantable_level:type_name -> spotify.playlist_permission.proto.PermissionLevel
|
|
4, // 2: spotify.playlist_permission.proto.CapabilitiesMultiRequest.request:type_name -> spotify.playlist_permission.proto.CapabilitiesRequest
|
|
6, // 3: spotify.playlist_permission.proto.CapabilitiesMultiResponse.response:type_name -> spotify.playlist_permission.proto.CapabilitiesResponse
|
|
16, // 4: spotify.playlist_permission.proto.CapabilitiesResponse.status:type_name -> spotify.playlist_permission.proto.ResponseStatus
|
|
2, // 5: spotify.playlist_permission.proto.CapabilitiesResponse.capabilities:type_name -> spotify.playlist_permission.proto.Capabilities
|
|
0, // 6: spotify.playlist_permission.proto.SetPermissionLevelRequest.permission_level:type_name -> spotify.playlist_permission.proto.PermissionLevel
|
|
1, // 7: spotify.playlist_permission.proto.SetPermissionResponse.resulting_permission:type_name -> spotify.playlist_permission.proto.Permission
|
|
17, // 8: spotify.playlist_permission.proto.GetMemberPermissionsResponse.member_permissions:type_name -> spotify.playlist_permission.proto.GetMemberPermissionsResponse.MemberPermissionsEntry
|
|
1, // 9: spotify.playlist_permission.proto.Permissions.base_permission:type_name -> spotify.playlist_permission.proto.Permission
|
|
10, // 10: spotify.playlist_permission.proto.PermissionState.permissions:type_name -> spotify.playlist_permission.proto.Permissions
|
|
2, // 11: spotify.playlist_permission.proto.PermissionState.capabilities:type_name -> spotify.playlist_permission.proto.Capabilities
|
|
11, // 12: spotify.playlist_permission.proto.PermissionStatePub.permission_state:type_name -> spotify.playlist_permission.proto.PermissionState
|
|
1, // 13: spotify.playlist_permission.proto.PermissionGrantOptions.permission:type_name -> spotify.playlist_permission.proto.Permission
|
|
13, // 14: spotify.playlist_permission.proto.PermissionGrant.permission_grant_options:type_name -> spotify.playlist_permission.proto.PermissionGrantOptions
|
|
1, // 15: spotify.playlist_permission.proto.ClaimPermissionGrantResponse.user_permission:type_name -> spotify.playlist_permission.proto.Permission
|
|
2, // 16: spotify.playlist_permission.proto.ClaimPermissionGrantResponse.capabilities:type_name -> spotify.playlist_permission.proto.Capabilities
|
|
1, // 17: spotify.playlist_permission.proto.GetMemberPermissionsResponse.MemberPermissionsEntry.value:type_name -> spotify.playlist_permission.proto.Permission
|
|
18, // [18:18] is the sub-list for method output_type
|
|
18, // [18:18] is the sub-list for method input_type
|
|
18, // [18:18] is the sub-list for extension type_name
|
|
18, // [18:18] is the sub-list for extension extendee
|
|
0, // [0:18] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_playlist_permission_proto_init() }
|
|
func file_playlist_permission_proto_init() {
|
|
if File_playlist_permission_proto != nil {
|
|
return
|
|
}
|
|
if !protoimpl.UnsafeEnabled {
|
|
file_playlist_permission_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Permission); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Capabilities); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CapabilitiesMultiRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CapabilitiesRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CapabilitiesMultiResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CapabilitiesResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SetPermissionLevelRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SetPermissionResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*GetMemberPermissionsResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Permissions); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PermissionState); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PermissionStatePub); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PermissionGrantOptions); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PermissionGrant); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ClaimPermissionGrantResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_playlist_permission_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ResponseStatus); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: file_playlist_permission_proto_rawDesc,
|
|
NumEnums: 1,
|
|
NumMessages: 17,
|
|
NumExtensions: 0,
|
|
NumServices: 0,
|
|
},
|
|
GoTypes: file_playlist_permission_proto_goTypes,
|
|
DependencyIndexes: file_playlist_permission_proto_depIdxs,
|
|
EnumInfos: file_playlist_permission_proto_enumTypes,
|
|
MessageInfos: file_playlist_permission_proto_msgTypes,
|
|
}.Build()
|
|
File_playlist_permission_proto = out.File
|
|
file_playlist_permission_proto_rawDesc = nil
|
|
file_playlist_permission_proto_goTypes = nil
|
|
file_playlist_permission_proto_depIdxs = nil
|
|
}
|