Settings values protobuf and service

This commit is contained in:
Benedikt Kulmann
2020-04-29 09:51:22 +02:00
parent 2ea182243f
commit 8a6a06fcb8
17 changed files with 1050 additions and 514 deletions
+3 -3
View File
File diff suppressed because one or more lines are too long
+321 -235
View File
@@ -23,78 +23,78 @@ var _ = math.Inf
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
// requests and responses for settings bundles
type CreateSettingsBundleRequest struct {
type SaveSettingsBundleRequest struct {
SettingsBundle *SettingsBundle `protobuf:"bytes,1,opt,name=settings_bundle,json=settingsBundle,proto3" json:"settings_bundle,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CreateSettingsBundleRequest) Reset() { *m = CreateSettingsBundleRequest{} }
func (m *CreateSettingsBundleRequest) String() string { return proto.CompactTextString(m) }
func (*CreateSettingsBundleRequest) ProtoMessage() {}
func (*CreateSettingsBundleRequest) Descriptor() ([]byte, []int) {
func (m *SaveSettingsBundleRequest) Reset() { *m = SaveSettingsBundleRequest{} }
func (m *SaveSettingsBundleRequest) String() string { return proto.CompactTextString(m) }
func (*SaveSettingsBundleRequest) ProtoMessage() {}
func (*SaveSettingsBundleRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{0}
}
func (m *CreateSettingsBundleRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateSettingsBundleRequest.Unmarshal(m, b)
func (m *SaveSettingsBundleRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SaveSettingsBundleRequest.Unmarshal(m, b)
}
func (m *CreateSettingsBundleRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CreateSettingsBundleRequest.Marshal(b, m, deterministic)
func (m *SaveSettingsBundleRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SaveSettingsBundleRequest.Marshal(b, m, deterministic)
}
func (m *CreateSettingsBundleRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_CreateSettingsBundleRequest.Merge(m, src)
func (m *SaveSettingsBundleRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_SaveSettingsBundleRequest.Merge(m, src)
}
func (m *CreateSettingsBundleRequest) XXX_Size() int {
return xxx_messageInfo_CreateSettingsBundleRequest.Size(m)
func (m *SaveSettingsBundleRequest) XXX_Size() int {
return xxx_messageInfo_SaveSettingsBundleRequest.Size(m)
}
func (m *CreateSettingsBundleRequest) XXX_DiscardUnknown() {
xxx_messageInfo_CreateSettingsBundleRequest.DiscardUnknown(m)
func (m *SaveSettingsBundleRequest) XXX_DiscardUnknown() {
xxx_messageInfo_SaveSettingsBundleRequest.DiscardUnknown(m)
}
var xxx_messageInfo_CreateSettingsBundleRequest proto.InternalMessageInfo
var xxx_messageInfo_SaveSettingsBundleRequest proto.InternalMessageInfo
func (m *CreateSettingsBundleRequest) GetSettingsBundle() *SettingsBundle {
func (m *SaveSettingsBundleRequest) GetSettingsBundle() *SettingsBundle {
if m != nil {
return m.SettingsBundle
}
return nil
}
type CreateSettingsBundleResponse struct {
type SaveSettingsBundleResponse struct {
SettingsBundle *SettingsBundle `protobuf:"bytes,1,opt,name=settings_bundle,json=settingsBundle,proto3" json:"settings_bundle,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CreateSettingsBundleResponse) Reset() { *m = CreateSettingsBundleResponse{} }
func (m *CreateSettingsBundleResponse) String() string { return proto.CompactTextString(m) }
func (*CreateSettingsBundleResponse) ProtoMessage() {}
func (*CreateSettingsBundleResponse) Descriptor() ([]byte, []int) {
func (m *SaveSettingsBundleResponse) Reset() { *m = SaveSettingsBundleResponse{} }
func (m *SaveSettingsBundleResponse) String() string { return proto.CompactTextString(m) }
func (*SaveSettingsBundleResponse) ProtoMessage() {}
func (*SaveSettingsBundleResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{1}
}
func (m *CreateSettingsBundleResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateSettingsBundleResponse.Unmarshal(m, b)
func (m *SaveSettingsBundleResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SaveSettingsBundleResponse.Unmarshal(m, b)
}
func (m *CreateSettingsBundleResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CreateSettingsBundleResponse.Marshal(b, m, deterministic)
func (m *SaveSettingsBundleResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SaveSettingsBundleResponse.Marshal(b, m, deterministic)
}
func (m *CreateSettingsBundleResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_CreateSettingsBundleResponse.Merge(m, src)
func (m *SaveSettingsBundleResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_SaveSettingsBundleResponse.Merge(m, src)
}
func (m *CreateSettingsBundleResponse) XXX_Size() int {
return xxx_messageInfo_CreateSettingsBundleResponse.Size(m)
func (m *SaveSettingsBundleResponse) XXX_Size() int {
return xxx_messageInfo_SaveSettingsBundleResponse.Size(m)
}
func (m *CreateSettingsBundleResponse) XXX_DiscardUnknown() {
xxx_messageInfo_CreateSettingsBundleResponse.DiscardUnknown(m)
func (m *SaveSettingsBundleResponse) XXX_DiscardUnknown() {
xxx_messageInfo_SaveSettingsBundleResponse.DiscardUnknown(m)
}
var xxx_messageInfo_CreateSettingsBundleResponse proto.InternalMessageInfo
var xxx_messageInfo_SaveSettingsBundleResponse proto.InternalMessageInfo
func (m *CreateSettingsBundleResponse) GetSettingsBundle() *SettingsBundle {
func (m *SaveSettingsBundleResponse) GetSettingsBundle() *SettingsBundle {
if m != nil {
return m.SettingsBundle
}
@@ -102,11 +102,10 @@ func (m *CreateSettingsBundleResponse) GetSettingsBundle() *SettingsBundle {
}
type GetSettingsBundleRequest struct {
Extension string `protobuf:"bytes,1,opt,name=extension,proto3" json:"extension,omitempty"`
BundleKey string `protobuf:"bytes,2,opt,name=bundle_key,json=bundleKey,proto3" json:"bundle_key,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
Identifier *Identifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *GetSettingsBundleRequest) Reset() { *m = GetSettingsBundleRequest{} }
@@ -134,18 +133,11 @@ func (m *GetSettingsBundleRequest) XXX_DiscardUnknown() {
var xxx_messageInfo_GetSettingsBundleRequest proto.InternalMessageInfo
func (m *GetSettingsBundleRequest) GetExtension() string {
func (m *GetSettingsBundleRequest) GetIdentifier() *Identifier {
if m != nil {
return m.Extension
return m.Identifier
}
return ""
}
func (m *GetSettingsBundleRequest) GetBundleKey() string {
if m != nil {
return m.BundleKey
}
return ""
return nil
}
type GetSettingsBundleResponse struct {
@@ -188,10 +180,10 @@ func (m *GetSettingsBundleResponse) GetSettingsBundle() *SettingsBundle {
}
type ListSettingsBundlesRequest struct {
Extension string `protobuf:"bytes,1,opt,name=extension,proto3" json:"extension,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
Identifier *Identifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ListSettingsBundlesRequest) Reset() { *m = ListSettingsBundlesRequest{} }
@@ -219,11 +211,11 @@ func (m *ListSettingsBundlesRequest) XXX_DiscardUnknown() {
var xxx_messageInfo_ListSettingsBundlesRequest proto.InternalMessageInfo
func (m *ListSettingsBundlesRequest) GetExtension() string {
func (m *ListSettingsBundlesRequest) GetIdentifier() *Identifier {
if m != nil {
return m.Extension
return m.Identifier
}
return ""
return nil
}
type ListSettingsBundlesResponse struct {
@@ -345,13 +337,10 @@ func (m *SaveSettingsValueResponse) GetSettingsValue() *SettingsValue {
}
type GetSettingsValueRequest struct {
AccountUuid string `protobuf:"bytes,1,opt,name=account_uuid,json=accountUuid,proto3" json:"account_uuid,omitempty"`
Extension string `protobuf:"bytes,2,opt,name=extension,proto3" json:"extension,omitempty"`
BundleKey string `protobuf:"bytes,3,opt,name=bundle_key,json=bundleKey,proto3" json:"bundle_key,omitempty"`
SettingKey string `protobuf:"bytes,4,opt,name=setting_key,json=settingKey,proto3" json:"setting_key,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
Identifier *Identifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *GetSettingsValueRequest) Reset() { *m = GetSettingsValueRequest{} }
@@ -379,32 +368,11 @@ func (m *GetSettingsValueRequest) XXX_DiscardUnknown() {
var xxx_messageInfo_GetSettingsValueRequest proto.InternalMessageInfo
func (m *GetSettingsValueRequest) GetAccountUuid() string {
func (m *GetSettingsValueRequest) GetIdentifier() *Identifier {
if m != nil {
return m.AccountUuid
return m.Identifier
}
return ""
}
func (m *GetSettingsValueRequest) GetExtension() string {
if m != nil {
return m.Extension
}
return ""
}
func (m *GetSettingsValueRequest) GetBundleKey() string {
if m != nil {
return m.BundleKey
}
return ""
}
func (m *GetSettingsValueRequest) GetSettingKey() string {
if m != nil {
return m.SettingKey
}
return ""
return nil
}
type GetSettingsValueResponse struct {
@@ -446,22 +414,163 @@ func (m *GetSettingsValueResponse) GetSettingsValue() *SettingsValue {
return nil
}
type ListSettingsValuesRequest struct {
Identifier *Identifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ListSettingsValuesRequest) Reset() { *m = ListSettingsValuesRequest{} }
func (m *ListSettingsValuesRequest) String() string { return proto.CompactTextString(m) }
func (*ListSettingsValuesRequest) ProtoMessage() {}
func (*ListSettingsValuesRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{10}
}
func (m *ListSettingsValuesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListSettingsValuesRequest.Unmarshal(m, b)
}
func (m *ListSettingsValuesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ListSettingsValuesRequest.Marshal(b, m, deterministic)
}
func (m *ListSettingsValuesRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ListSettingsValuesRequest.Merge(m, src)
}
func (m *ListSettingsValuesRequest) XXX_Size() int {
return xxx_messageInfo_ListSettingsValuesRequest.Size(m)
}
func (m *ListSettingsValuesRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ListSettingsValuesRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ListSettingsValuesRequest proto.InternalMessageInfo
func (m *ListSettingsValuesRequest) GetIdentifier() *Identifier {
if m != nil {
return m.Identifier
}
return nil
}
type ListSettingsValuesResponse struct {
SettingsValues []*SettingsValue `protobuf:"bytes,1,rep,name=settings_values,json=settingsValues,proto3" json:"settings_values,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ListSettingsValuesResponse) Reset() { *m = ListSettingsValuesResponse{} }
func (m *ListSettingsValuesResponse) String() string { return proto.CompactTextString(m) }
func (*ListSettingsValuesResponse) ProtoMessage() {}
func (*ListSettingsValuesResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{11}
}
func (m *ListSettingsValuesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListSettingsValuesResponse.Unmarshal(m, b)
}
func (m *ListSettingsValuesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ListSettingsValuesResponse.Marshal(b, m, deterministic)
}
func (m *ListSettingsValuesResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_ListSettingsValuesResponse.Merge(m, src)
}
func (m *ListSettingsValuesResponse) XXX_Size() int {
return xxx_messageInfo_ListSettingsValuesResponse.Size(m)
}
func (m *ListSettingsValuesResponse) XXX_DiscardUnknown() {
xxx_messageInfo_ListSettingsValuesResponse.DiscardUnknown(m)
}
var xxx_messageInfo_ListSettingsValuesResponse proto.InternalMessageInfo
func (m *ListSettingsValuesResponse) GetSettingsValues() []*SettingsValue {
if m != nil {
return m.SettingsValues
}
return nil
}
// generic payloads
type Identifier struct {
Extension string `protobuf:"bytes,1,opt,name=extension,proto3" json:"extension,omitempty"`
BundleKey string `protobuf:"bytes,2,opt,name=bundle_key,json=bundleKey,proto3" json:"bundle_key,omitempty"`
SettingKey string `protobuf:"bytes,3,opt,name=setting_key,json=settingKey,proto3" json:"setting_key,omitempty"`
AccountUuid string `protobuf:"bytes,4,opt,name=account_uuid,json=accountUuid,proto3" json:"account_uuid,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Identifier) Reset() { *m = Identifier{} }
func (m *Identifier) String() string { return proto.CompactTextString(m) }
func (*Identifier) ProtoMessage() {}
func (*Identifier) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{12}
}
func (m *Identifier) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Identifier.Unmarshal(m, b)
}
func (m *Identifier) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Identifier.Marshal(b, m, deterministic)
}
func (m *Identifier) XXX_Merge(src proto.Message) {
xxx_messageInfo_Identifier.Merge(m, src)
}
func (m *Identifier) XXX_Size() int {
return xxx_messageInfo_Identifier.Size(m)
}
func (m *Identifier) XXX_DiscardUnknown() {
xxx_messageInfo_Identifier.DiscardUnknown(m)
}
var xxx_messageInfo_Identifier proto.InternalMessageInfo
func (m *Identifier) GetExtension() string {
if m != nil {
return m.Extension
}
return ""
}
func (m *Identifier) GetBundleKey() string {
if m != nil {
return m.BundleKey
}
return ""
}
func (m *Identifier) GetSettingKey() string {
if m != nil {
return m.SettingKey
}
return ""
}
func (m *Identifier) GetAccountUuid() string {
if m != nil {
return m.AccountUuid
}
return ""
}
// payloads for settings bundles
type SettingsBundle struct {
Extension string `protobuf:"bytes,1,opt,name=extension,proto3" json:"extension,omitempty"`
BundleKey string `protobuf:"bytes,2,opt,name=bundle_key,json=bundleKey,proto3" json:"bundle_key,omitempty"`
DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
Settings []*Setting `protobuf:"bytes,4,rep,name=settings,proto3" json:"settings,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
Identifier *Identifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
Settings []*Setting `protobuf:"bytes,3,rep,name=settings,proto3" json:"settings,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SettingsBundle) Reset() { *m = SettingsBundle{} }
func (m *SettingsBundle) String() string { return proto.CompactTextString(m) }
func (*SettingsBundle) ProtoMessage() {}
func (*SettingsBundle) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{10}
return fileDescriptor_6c7cab62fa432213, []int{13}
}
func (m *SettingsBundle) XXX_Unmarshal(b []byte) error {
@@ -482,18 +591,11 @@ func (m *SettingsBundle) XXX_DiscardUnknown() {
var xxx_messageInfo_SettingsBundle proto.InternalMessageInfo
func (m *SettingsBundle) GetExtension() string {
func (m *SettingsBundle) GetIdentifier() *Identifier {
if m != nil {
return m.Extension
return m.Identifier
}
return ""
}
func (m *SettingsBundle) GetBundleKey() string {
if m != nil {
return m.BundleKey
}
return ""
return nil
}
func (m *SettingsBundle) GetDisplayName() string {
@@ -530,7 +632,7 @@ func (m *Setting) Reset() { *m = Setting{} }
func (m *Setting) String() string { return proto.CompactTextString(m) }
func (*Setting) ProtoMessage() {}
func (*Setting) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{11}
return fileDescriptor_6c7cab62fa432213, []int{14}
}
func (m *Setting) XXX_Unmarshal(b []byte) error {
@@ -674,7 +776,7 @@ func (m *IntSetting) Reset() { *m = IntSetting{} }
func (m *IntSetting) String() string { return proto.CompactTextString(m) }
func (*IntSetting) ProtoMessage() {}
func (*IntSetting) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{12}
return fileDescriptor_6c7cab62fa432213, []int{15}
}
func (m *IntSetting) XXX_Unmarshal(b []byte) error {
@@ -745,7 +847,7 @@ func (m *StringSetting) Reset() { *m = StringSetting{} }
func (m *StringSetting) String() string { return proto.CompactTextString(m) }
func (*StringSetting) ProtoMessage() {}
func (*StringSetting) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{13}
return fileDescriptor_6c7cab62fa432213, []int{16}
}
func (m *StringSetting) XXX_Unmarshal(b []byte) error {
@@ -813,7 +915,7 @@ func (m *BoolSetting) Reset() { *m = BoolSetting{} }
func (m *BoolSetting) String() string { return proto.CompactTextString(m) }
func (*BoolSetting) ProtoMessage() {}
func (*BoolSetting) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{14}
return fileDescriptor_6c7cab62fa432213, []int{17}
}
func (m *BoolSetting) XXX_Unmarshal(b []byte) error {
@@ -859,7 +961,7 @@ func (m *SingleChoiceListSetting) Reset() { *m = SingleChoiceListSetting
func (m *SingleChoiceListSetting) String() string { return proto.CompactTextString(m) }
func (*SingleChoiceListSetting) ProtoMessage() {}
func (*SingleChoiceListSetting) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{15}
return fileDescriptor_6c7cab62fa432213, []int{18}
}
func (m *SingleChoiceListSetting) XXX_Unmarshal(b []byte) error {
@@ -898,7 +1000,7 @@ func (m *MultiChoiceListSetting) Reset() { *m = MultiChoiceListSetting{}
func (m *MultiChoiceListSetting) String() string { return proto.CompactTextString(m) }
func (*MultiChoiceListSetting) ProtoMessage() {}
func (*MultiChoiceListSetting) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{16}
return fileDescriptor_6c7cab62fa432213, []int{19}
}
func (m *MultiChoiceListSetting) XXX_Unmarshal(b []byte) error {
@@ -942,7 +1044,7 @@ func (m *ListOption) Reset() { *m = ListOption{} }
func (m *ListOption) String() string { return proto.CompactTextString(m) }
func (*ListOption) ProtoMessage() {}
func (*ListOption) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{17}
return fileDescriptor_6c7cab62fa432213, []int{20}
}
func (m *ListOption) XXX_Unmarshal(b []byte) error {
@@ -1024,10 +1126,7 @@ func (*ListOption) XXX_OneofWrappers() []interface{} {
// payloads for settings values
type SettingsValue struct {
AccountUuid string `protobuf:"bytes,1,opt,name=account_uuid,json=accountUuid,proto3" json:"account_uuid,omitempty"`
Extension string `protobuf:"bytes,2,opt,name=extension,proto3" json:"extension,omitempty"`
BundleKey string `protobuf:"bytes,3,opt,name=bundle_key,json=bundleKey,proto3" json:"bundle_key,omitempty"`
SettingKey string `protobuf:"bytes,4,opt,name=setting_key,json=settingKey,proto3" json:"setting_key,omitempty"`
Identifier *Identifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
// Types that are valid to be assigned to Value:
// *SettingsValue_BoolValue
// *SettingsValue_IntValue
@@ -1044,7 +1143,7 @@ func (m *SettingsValue) Reset() { *m = SettingsValue{} }
func (m *SettingsValue) String() string { return proto.CompactTextString(m) }
func (*SettingsValue) ProtoMessage() {}
func (*SettingsValue) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{18}
return fileDescriptor_6c7cab62fa432213, []int{21}
}
func (m *SettingsValue) XXX_Unmarshal(b []byte) error {
@@ -1065,32 +1164,11 @@ func (m *SettingsValue) XXX_DiscardUnknown() {
var xxx_messageInfo_SettingsValue proto.InternalMessageInfo
func (m *SettingsValue) GetAccountUuid() string {
func (m *SettingsValue) GetIdentifier() *Identifier {
if m != nil {
return m.AccountUuid
return m.Identifier
}
return ""
}
func (m *SettingsValue) GetExtension() string {
if m != nil {
return m.Extension
}
return ""
}
func (m *SettingsValue) GetBundleKey() string {
if m != nil {
return m.BundleKey
}
return ""
}
func (m *SettingsValue) GetSettingKey() string {
if m != nil {
return m.SettingKey
}
return ""
return nil
}
type isSettingsValue_Value interface {
@@ -1098,23 +1176,23 @@ type isSettingsValue_Value interface {
}
type SettingsValue_BoolValue struct {
BoolValue bool `protobuf:"varint,5,opt,name=bool_value,json=boolValue,proto3,oneof"`
BoolValue bool `protobuf:"varint,2,opt,name=bool_value,json=boolValue,proto3,oneof"`
}
type SettingsValue_IntValue struct {
IntValue int64 `protobuf:"varint,6,opt,name=int_value,json=intValue,proto3,oneof"`
IntValue int64 `protobuf:"varint,3,opt,name=int_value,json=intValue,proto3,oneof"`
}
type SettingsValue_StringValue struct {
StringValue string `protobuf:"bytes,7,opt,name=string_value,json=stringValue,proto3,oneof"`
StringValue string `protobuf:"bytes,4,opt,name=string_value,json=stringValue,proto3,oneof"`
}
type SettingsValue_IntListValue struct {
IntListValue *IntListValue `protobuf:"bytes,8,opt,name=int_list_value,json=intListValue,proto3,oneof"`
IntListValue *IntListValue `protobuf:"bytes,5,opt,name=int_list_value,json=intListValue,proto3,oneof"`
}
type SettingsValue_StringListValue struct {
StringListValue *StringListValue `protobuf:"bytes,9,opt,name=string_list_value,json=stringListValue,proto3,oneof"`
StringListValue *StringListValue `protobuf:"bytes,6,opt,name=string_list_value,json=stringListValue,proto3,oneof"`
}
func (*SettingsValue_BoolValue) isSettingsValue_Value() {}
@@ -1191,7 +1269,7 @@ func (m *IntListValue) Reset() { *m = IntListValue{} }
func (m *IntListValue) String() string { return proto.CompactTextString(m) }
func (*IntListValue) ProtoMessage() {}
func (*IntListValue) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{19}
return fileDescriptor_6c7cab62fa432213, []int{22}
}
func (m *IntListValue) XXX_Unmarshal(b []byte) error {
@@ -1230,7 +1308,7 @@ func (m *StringListValue) Reset() { *m = StringListValue{} }
func (m *StringListValue) String() string { return proto.CompactTextString(m) }
func (*StringListValue) ProtoMessage() {}
func (*StringListValue) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{20}
return fileDescriptor_6c7cab62fa432213, []int{23}
}
func (m *StringListValue) XXX_Unmarshal(b []byte) error {
@@ -1270,7 +1348,7 @@ func (m *SettingsValues) Reset() { *m = SettingsValues{} }
func (m *SettingsValues) String() string { return proto.CompactTextString(m) }
func (*SettingsValues) ProtoMessage() {}
func (*SettingsValues) Descriptor() ([]byte, []int) {
return fileDescriptor_6c7cab62fa432213, []int{21}
return fileDescriptor_6c7cab62fa432213, []int{24}
}
func (m *SettingsValues) XXX_Unmarshal(b []byte) error {
@@ -1299,8 +1377,8 @@ func (m *SettingsValues) GetValues() map[string]*SettingsValue {
}
func init() {
proto.RegisterType((*CreateSettingsBundleRequest)(nil), "proto.CreateSettingsBundleRequest")
proto.RegisterType((*CreateSettingsBundleResponse)(nil), "proto.CreateSettingsBundleResponse")
proto.RegisterType((*SaveSettingsBundleRequest)(nil), "proto.SaveSettingsBundleRequest")
proto.RegisterType((*SaveSettingsBundleResponse)(nil), "proto.SaveSettingsBundleResponse")
proto.RegisterType((*GetSettingsBundleRequest)(nil), "proto.GetSettingsBundleRequest")
proto.RegisterType((*GetSettingsBundleResponse)(nil), "proto.GetSettingsBundleResponse")
proto.RegisterType((*ListSettingsBundlesRequest)(nil), "proto.ListSettingsBundlesRequest")
@@ -1309,6 +1387,9 @@ func init() {
proto.RegisterType((*SaveSettingsValueResponse)(nil), "proto.SaveSettingsValueResponse")
proto.RegisterType((*GetSettingsValueRequest)(nil), "proto.GetSettingsValueRequest")
proto.RegisterType((*GetSettingsValueResponse)(nil), "proto.GetSettingsValueResponse")
proto.RegisterType((*ListSettingsValuesRequest)(nil), "proto.ListSettingsValuesRequest")
proto.RegisterType((*ListSettingsValuesResponse)(nil), "proto.ListSettingsValuesResponse")
proto.RegisterType((*Identifier)(nil), "proto.Identifier")
proto.RegisterType((*SettingsBundle)(nil), "proto.SettingsBundle")
proto.RegisterType((*Setting)(nil), "proto.Setting")
proto.RegisterType((*IntSetting)(nil), "proto.IntSetting")
@@ -1329,88 +1410,93 @@ func init() {
}
var fileDescriptor_6c7cab62fa432213 = []byte{
// 1318 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x57, 0xdd, 0x6e, 0x1b, 0xc5,
0x17, 0xef, 0x7a, 0xf3, 0x61, 0x1f, 0xe7, 0x73, 0x9a, 0x7f, 0xeb, 0xba, 0x49, 0xe3, 0x6e, 0xfe,
0x12, 0x25, 0x10, 0x6f, 0x9a, 0xdc, 0x50, 0x57, 0x45, 0x6d, 0xd2, 0xd0, 0x54, 0x6d, 0xda, 0x6a,
0xa3, 0x02, 0x02, 0x81, 0xb5, 0x5e, 0x0f, 0xf6, 0xc0, 0x7a, 0x67, 0xbb, 0x33, 0x9b, 0x26, 0x44,
0x41, 0x80, 0x78, 0x01, 0xe0, 0x0a, 0xc4, 0x15, 0x12, 0x37, 0x95, 0xe0, 0x96, 0x0b, 0x1e, 0x83,
0x57, 0xe0, 0x41, 0xd0, 0xce, 0xce, 0x7e, 0x7a, 0x1d, 0x8a, 0x52, 0x89, 0xab, 0xf5, 0x9e, 0xcf,
0xdf, 0xfe, 0xce, 0x99, 0x33, 0xc7, 0x30, 0xc3, 0x30, 0xe7, 0xc4, 0xe9, 0xb1, 0xa6, 0xeb, 0x51,
0x4e, 0xd1, 0xb8, 0x78, 0xd4, 0x17, 0x7b, 0x94, 0xf6, 0x6c, 0xac, 0x9b, 0x2e, 0xd1, 0x4d, 0xc7,
0xa1, 0xdc, 0xe4, 0x84, 0x3a, 0xd2, 0xa8, 0xfe, 0xa6, 0x78, 0x58, 0x6b, 0x3d, 0xec, 0xac, 0xb1,
0xe7, 0x66, 0xaf, 0x87, 0x3d, 0x9d, 0xba, 0xc2, 0x62, 0xd8, 0x5a, 0xfb, 0x08, 0x2e, 0x6f, 0x7b,
0xd8, 0xe4, 0x78, 0x5f, 0xa6, 0xda, 0xf2, 0x9d, 0xae, 0x8d, 0x0d, 0xfc, 0xcc, 0xc7, 0x8c, 0xa3,
0xb7, 0x61, 0x36, 0xc2, 0xd0, 0xee, 0x08, 0x4d, 0x4d, 0x69, 0x28, 0xd7, 0xaa, 0x1b, 0xff, 0x0b,
0xfd, 0x9b, 0x39, 0xb7, 0x18, 0x71, 0xf8, 0xae, 0x7d, 0x0c, 0x8b, 0xc5, 0xe1, 0x99, 0x4b, 0x1d,
0x86, 0xcf, 0x1c, 0xff, 0x3d, 0xa8, 0xdd, 0xc3, 0xbc, 0x18, 0xfb, 0x22, 0x54, 0xf0, 0x21, 0xc7,
0x0e, 0x23, 0xd4, 0x11, 0x51, 0x2b, 0x46, 0x22, 0x40, 0x4b, 0x00, 0x61, 0xc2, 0xf6, 0x67, 0xf8,
0xa8, 0x56, 0x0a, 0xd5, 0xa1, 0xe4, 0x01, 0x3e, 0xd2, 0x3e, 0x84, 0x4b, 0x05, 0x81, 0x5f, 0x11,
0xea, 0x16, 0xd4, 0x1f, 0x12, 0x96, 0x8b, 0xce, 0x5e, 0x0a, 0xb7, 0xd6, 0x86, 0xcb, 0x85, 0xbe,
0x12, 0xda, 0x6d, 0x98, 0xcb, 0x41, 0x63, 0x35, 0xa5, 0xa1, 0x8e, 0xc6, 0x36, 0x9b, 0xc5, 0xc6,
0x02, 0x4a, 0xf7, 0xcd, 0x83, 0xb8, 0x60, 0xef, 0x9a, 0xb6, 0x1f, 0x53, 0x7a, 0x33, 0x69, 0xc9,
0xf6, 0x41, 0xa0, 0x90, 0xdf, 0xbd, 0x90, 0x8b, 0x1d, 0x3a, 0x4d, 0xb3, 0xf4, 0xab, 0xf6, 0x3e,
0x5c, 0x2a, 0x08, 0x2c, 0x71, 0x9f, 0x29, 0xf2, 0x8f, 0x0a, 0x5c, 0x4c, 0x55, 0x2b, 0x03, 0xf9,
0x2a, 0x4c, 0x99, 0x96, 0x45, 0x7d, 0x87, 0xb7, 0x7d, 0x9f, 0x74, 0x25, 0xa1, 0x55, 0x29, 0x7b,
0xea, 0x93, 0x6e, 0x96, 0xf0, 0xd2, 0xe9, 0x8d, 0xa2, 0xe6, 0x1a, 0x05, 0x2d, 0x43, 0x55, 0x82,
0x11, 0xfa, 0x31, 0xa1, 0x07, 0x29, 0x0a, 0x3a, 0x29, 0xdb, 0xa2, 0xaf, 0xf0, 0xab, 0x7f, 0x52,
0x60, 0x26, 0x5b, 0xcc, 0x33, 0xb5, 0x7c, 0xc0, 0x54, 0x97, 0x30, 0xd7, 0x36, 0x8f, 0xda, 0x8e,
0x39, 0xc0, 0xf2, 0x53, 0xab, 0x52, 0xf6, 0xc8, 0x1c, 0x60, 0xb4, 0x0a, 0xe5, 0x08, 0x43, 0x6d,
0x4c, 0x74, 0xd5, 0x4c, 0x16, 0xa9, 0x11, 0xeb, 0xb5, 0x3f, 0x54, 0x98, 0x94, 0xd2, 0x3c, 0x49,
0x4a, 0x9e, 0xa4, 0xa1, 0xdc, 0xa5, 0xe1, 0xdc, 0x0d, 0xa8, 0x76, 0x31, 0xb3, 0x3c, 0x22, 0x66,
0x59, 0x8c, 0x2e, 0x11, 0xa1, 0x75, 0xa8, 0x10, 0x87, 0x4b, 0x22, 0xc7, 0x04, 0x91, 0xf3, 0x12,
0xde, 0x7d, 0x27, 0xaa, 0xc0, 0xee, 0x39, 0xa3, 0x4c, 0x1c, 0x2e, 0x28, 0x44, 0x37, 0x60, 0x8a,
0x71, 0x2f, 0x80, 0x15, 0x3a, 0x8d, 0x67, 0xd9, 0x17, 0xaa, 0xc4, 0xaf, 0x1a, 0xda, 0x86, 0xae,
0x9b, 0x00, 0x1d, 0x4a, 0x6d, 0xe9, 0x38, 0x21, 0x1c, 0x91, 0x74, 0xdc, 0xa2, 0xd4, 0x4e, 0xdc,
0x2a, 0x81, 0x5d, 0xe8, 0xf4, 0x04, 0xce, 0x33, 0xe2, 0xf4, 0x6c, 0xdc, 0xb6, 0xfa, 0x94, 0x58,
0x58, 0x7a, 0x4f, 0x0a, 0xef, 0x2b, 0x51, 0x5a, 0x61, 0xb1, 0x2d, 0x0c, 0x52, 0x47, 0x7d, 0xf7,
0x9c, 0x31, 0xcf, 0x52, 0xaa, 0x30, 0xe2, 0x1e, 0xa0, 0x81, 0x6f, 0x73, 0x92, 0x0d, 0x58, 0x16,
0x01, 0x97, 0x64, 0xc0, 0xbd, 0xc0, 0xa0, 0x28, 0xde, 0xdc, 0x20, 0xd1, 0x88, 0x70, 0x5b, 0x93,
0x30, 0x2e, 0x22, 0x68, 0x5f, 0x2a, 0x00, 0x09, 0x69, 0xa8, 0x06, 0x93, 0x5d, 0xfc, 0x89, 0xe9,
0xdb, 0x5c, 0x14, 0x4f, 0x35, 0xa2, 0x57, 0x34, 0x07, 0xea, 0x80, 0x84, 0xc7, 0x46, 0x35, 0x82,
0x9f, 0x42, 0x62, 0x1e, 0x8a, 0x02, 0x05, 0x12, 0xf3, 0x10, 0x21, 0x18, 0x63, 0x1c, 0xbb, 0xa2,
0x26, 0xaa, 0x21, 0x7e, 0x07, 0xe5, 0x74, 0x6d, 0xd3, 0xc2, 0x7d, 0x6a, 0x77, 0xb1, 0x27, 0x98,
0xaf, 0x18, 0x69, 0x91, 0xf6, 0x8b, 0x02, 0xd3, 0x99, 0x12, 0xe4, 0x51, 0x54, 0x12, 0x14, 0x75,
0x28, 0x7b, 0xf8, 0x99, 0x4f, 0x3c, 0xdc, 0x15, 0x50, 0xca, 0x46, 0xfc, 0x1e, 0xb4, 0xfd, 0x80,
0x38, 0x6d, 0x1b, 0x3b, 0x3d, 0xde, 0x17, 0xb0, 0xc6, 0x8d, 0xca, 0x80, 0x38, 0x0f, 0x85, 0x40,
0xa8, 0xcd, 0xc3, 0x48, 0x3d, 0x26, 0xd5, 0xe6, 0xa1, 0x54, 0xff, 0x33, 0xce, 0x5b, 0x50, 0x4d,
0x15, 0x3c, 0x0f, 0xb2, 0x9c, 0x80, 0x5c, 0x80, 0x71, 0xdb, 0xec, 0x60, 0x5b, 0x76, 0x77, 0xf8,
0xa2, 0xbd, 0x03, 0x17, 0x47, 0x54, 0x1c, 0xbd, 0x01, 0x93, 0xf2, 0xe6, 0x96, 0x33, 0x3c, 0x6a,
0xe7, 0xc0, 0xe8, 0xb1, 0xd0, 0x18, 0x91, 0x85, 0xb6, 0x03, 0x17, 0x8a, 0x0b, 0xfd, 0xef, 0xc2,
0xfc, 0xa0, 0x00, 0x24, 0x72, 0xb4, 0x92, 0x3b, 0x21, 0x82, 0xf7, 0xfc, 0x59, 0x58, 0x4a, 0x1f,
0x3c, 0xd1, 0x09, 0x99, 0x53, 0x96, 0x62, 0x44, 0xcd, 0x32, 0xb2, 0x02, 0xd3, 0xd1, 0xb1, 0x4f,
0x4e, 0x6d, 0xc5, 0x88, 0x66, 0x41, 0xd8, 0x93, 0x65, 0x98, 0x08, 0xc1, 0x69, 0x5f, 0xa9, 0x30,
0x9d, 0x19, 0x89, 0xff, 0xf9, 0x74, 0x47, 0xcb, 0x99, 0x31, 0x10, 0x74, 0x47, 0x39, 0x7b, 0xe4,
0x33, 0xdc, 0x4c, 0x0c, 0x71, 0x93, 0xe7, 0x77, 0xb2, 0x88, 0xdf, 0x9b, 0x30, 0x13, 0xc4, 0xb0,
0x09, 0xe3, 0x99, 0x03, 0x7e, 0x3e, 0x99, 0x6e, 0x41, 0xc9, 0x84, 0xf1, 0xee, 0x39, 0x63, 0x8a,
0xa4, 0xde, 0xd1, 0x5d, 0x98, 0x97, 0x19, 0x52, 0xfe, 0x15, 0xe1, 0x7f, 0x21, 0x33, 0xe8, 0xd2,
0x21, 0x66, 0x59, 0x56, 0x94, 0x0c, 0x86, 0xff, 0xc3, 0x54, 0x3a, 0x5d, 0xd0, 0xd4, 0x51, 0x67,
0xa8, 0xd7, 0x54, 0x43, 0x5a, 0xbd, 0x06, 0xb3, 0xb9, 0xa0, 0x59, 0xc3, 0x4a, 0x64, 0x98, 0xbe,
0xc4, 0x84, 0x1d, 0x43, 0x37, 0x60, 0x42, 0xe8, 0xa2, 0x6e, 0xbd, 0x5a, 0x74, 0x19, 0xb2, 0x66,
0xf8, 0xd8, 0x71, 0xb8, 0x77, 0x64, 0x48, 0x87, 0xfa, 0x63, 0xa8, 0xa6, 0xc4, 0xc1, 0x24, 0x4a,
0xae, 0x9b, 0xe0, 0x27, 0x5a, 0x8d, 0x40, 0x94, 0x4e, 0xb9, 0x67, 0x43, 0x93, 0x56, 0xe9, 0x2d,
0x65, 0xe3, 0x85, 0x0a, 0xd3, 0xe1, 0xdd, 0xba, 0x8f, 0xbd, 0x03, 0x62, 0x61, 0xf4, 0x8d, 0x02,
0x0b, 0x45, 0x2b, 0x2d, 0xd2, 0x64, 0xac, 0x53, 0xd6, 0xe9, 0xfa, 0xca, 0xa9, 0x36, 0xe1, 0x52,
0xa0, 0xad, 0x7c, 0xfd, 0xe7, 0x5f, 0xdf, 0x97, 0x96, 0xb4, 0x9a, 0x58, 0xf0, 0x0f, 0xd6, 0xf5,
0xe8, 0x4a, 0xd5, 0xe5, 0x42, 0xd7, 0x52, 0x56, 0xd1, 0xb7, 0x0a, 0xcc, 0x0f, 0x2d, 0xa8, 0x68,
0x59, 0xc6, 0x1f, 0xb5, 0x13, 0xd7, 0x1b, 0xa3, 0x0d, 0x64, 0xf6, 0x1b, 0x22, 0xfb, 0x26, 0xba,
0x3e, 0x2a, 0xbb, 0x7e, 0x1c, 0x9f, 0x9e, 0x13, 0xfd, 0x38, 0x39, 0x3c, 0x27, 0xe8, 0x0b, 0x38,
0x5f, 0xb0, 0x9a, 0xa2, 0xab, 0xa9, 0x69, 0x53, 0xbc, 0xf2, 0xd6, 0xb5, 0xd3, 0x4c, 0x24, 0xb0,
0x86, 0x00, 0x56, 0x47, 0x23, 0x69, 0xd9, 0xf8, 0xbd, 0x04, 0x53, 0xa2, 0x82, 0x51, 0xad, 0x3e,
0x87, 0xf9, 0xa1, 0x8d, 0x33, 0xe6, 0x68, 0xd4, 0x92, 0x1b, 0x73, 0x34, 0x72, 0x59, 0xd5, 0x34,
0x01, 0x65, 0x51, 0xbb, 0x38, 0x04, 0x25, 0xec, 0xc3, 0xa0, 0x40, 0x2f, 0x14, 0x98, 0xcb, 0xef,
0x7d, 0xe8, 0xca, 0x30, 0xfd, 0x99, 0xd4, 0xcb, 0x23, 0xf5, 0x32, 0xf3, 0x53, 0x91, 0xf9, 0x31,
0xda, 0x1b, 0x91, 0x59, 0x3f, 0x4e, 0x8f, 0xc3, 0x93, 0x91, 0xb5, 0xd2, 0x8f, 0x53, 0x63, 0xed,
0x64, 0xeb, 0xd7, 0xd2, 0x77, 0x77, 0x7e, 0x2e, 0xa1, 0xdf, 0x14, 0x28, 0x47, 0x79, 0xb5, 0x27,
0x30, 0x4d, 0x9f, 0x3b, 0xdb, 0x36, 0xf5, 0xbb, 0x8d, 0x7b, 0x83, 0xce, 0x2e, 0x7a, 0xbd, 0xcf,
0xb9, 0xcb, 0x5a, 0xba, 0xde, 0x23, 0xbc, 0xef, 0x77, 0x9a, 0x16, 0x1d, 0xe8, 0xf4, 0xb9, 0x63,
0x05, 0x16, 0x3a, 0xb5, 0x08, 0x5b, 0x8b, 0xc0, 0xd4, 0x17, 0x98, 0xef, 0xba, 0xd4, 0xe3, 0xb7,
0x23, 0x7d, 0x60, 0xbc, 0xfa, 0x00, 0xe0, 0x8e, 0x6b, 0x5a, 0x7d, 0xbc, 0xb6, 0xd1, 0x5c, 0x47,
0xb7, 0x5e, 0x3a, 0x9c, 0xde, 0xb1, 0x69, 0x47, 0x1f, 0x98, 0x8c, 0x63, 0x4f, 0x7f, 0x78, 0x7f,
0x7b, 0xe7, 0xd1, 0xfe, 0xce, 0x86, 0x7a, 0xbd, 0xb9, 0xbe, 0x5a, 0x52, 0x4a, 0x1b, 0x73, 0xa6,
0xeb, 0xda, 0xc4, 0x12, 0xff, 0x6a, 0xf5, 0x4f, 0x19, 0x75, 0x5a, 0x43, 0x12, 0xef, 0x1e, 0xcc,
0xdd, 0xc5, 0x07, 0xd8, 0xa6, 0x2e, 0xf6, 0x1a, 0x7b, 0xa6, 0xe3, 0x9b, 0x36, 0xda, 0x0c, 0xf2,
0xb7, 0xf4, 0x38, 0x67, 0x53, 0xe2, 0x20, 0x54, 0x8f, 0x49, 0x63, 0x02, 0x48, 0x3b, 0x06, 0xf2,
0x41, 0xf8, 0x0f, 0xbc, 0x33, 0x21, 0x1e, 0x9b, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0x7f, 0x0f,
0x46, 0x4c, 0xa1, 0x0f, 0x00, 0x00,
// 1395 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x4f, 0x6f, 0x1b, 0x45,
0x14, 0xef, 0x7a, 0xf3, 0xc7, 0x7e, 0xce, 0xdf, 0x69, 0x69, 0x5d, 0xd3, 0x34, 0xce, 0x16, 0x89,
0x12, 0x88, 0x37, 0x4d, 0x0f, 0xd0, 0x54, 0x45, 0x6d, 0xda, 0x90, 0x54, 0x4d, 0x9a, 0x6a, 0x23,
0x28, 0x02, 0x24, 0xb3, 0x5e, 0x4f, 0xed, 0x81, 0xf5, 0xcc, 0x76, 0x67, 0x37, 0x4d, 0xa8, 0x82,
0x80, 0x3b, 0x97, 0x22, 0x0e, 0x48, 0x9c, 0x90, 0x10, 0x12, 0x12, 0x5c, 0x38, 0x72, 0xe4, 0x13,
0x20, 0x0e, 0x7c, 0x01, 0x3e, 0x08, 0xda, 0xd9, 0x59, 0xef, 0x8e, 0xbd, 0x4e, 0x69, 0x53, 0x4e,
0xeb, 0x79, 0x7f, 0x7e, 0xef, 0x37, 0xef, 0xbd, 0x99, 0x79, 0x09, 0x4c, 0x71, 0x1c, 0x04, 0x84,
0xb6, 0x79, 0xdd, 0xf3, 0x59, 0xc0, 0xd0, 0xa8, 0xf8, 0x54, 0xcf, 0xb5, 0x19, 0x6b, 0xbb, 0xd8,
0xb4, 0x3d, 0x62, 0xda, 0x94, 0xb2, 0xc0, 0x0e, 0x08, 0xa3, 0xd2, 0xa8, 0xfa, 0x86, 0xf8, 0x38,
0x4b, 0x6d, 0x4c, 0x97, 0xf8, 0x23, 0xbb, 0xdd, 0xc6, 0xbe, 0xc9, 0x3c, 0x61, 0x31, 0x68, 0x6d,
0x7c, 0x08, 0x67, 0x77, 0xed, 0x3d, 0xbc, 0x2b, 0x03, 0xad, 0x85, 0xb4, 0xe5, 0x62, 0x0b, 0x3f,
0x0c, 0x31, 0x0f, 0xd0, 0xdb, 0x30, 0x9d, 0x30, 0x68, 0x34, 0x85, 0xa6, 0xa2, 0xd5, 0xb4, 0x8b,
0xe5, 0x95, 0x97, 0x62, 0xef, 0x7a, 0x9f, 0x5b, 0x8f, 0x6f, 0xbc, 0x36, 0x3e, 0x82, 0x6a, 0x1e,
0x38, 0xf7, 0x18, 0xe5, 0xf8, 0xd8, 0xe8, 0xdb, 0x50, 0xd9, 0xc0, 0x41, 0x3e, 0xf3, 0x4b, 0x00,
0xa4, 0x85, 0x69, 0x40, 0x1e, 0x10, 0xec, 0x4b, 0xd8, 0x59, 0x09, 0x7b, 0xbb, 0xa7, 0xb0, 0x32,
0x46, 0x51, 0x26, 0x72, 0xe0, 0x5e, 0x10, 0xd7, 0x1d, 0xa8, 0x6e, 0x11, 0xde, 0x87, 0xce, 0x8f,
0xc1, 0xb6, 0x01, 0x2f, 0xe7, 0x02, 0x4a, 0xbe, 0xd7, 0x61, 0xa6, 0x8f, 0x2f, 0xaf, 0x68, 0x35,
0x7d, 0x38, 0xe1, 0x69, 0x95, 0x30, 0x37, 0xee, 0x43, 0x25, 0x5b, 0xbb, 0xf7, 0x6c, 0x37, 0xec,
0x65, 0xf7, 0x6a, 0xda, 0x99, 0x8d, 0xbd, 0x48, 0x21, 0x39, 0x9f, 0xea, 0xc3, 0x8e, 0x9d, 0x26,
0x79, 0x76, 0x69, 0xbc, 0xaf, 0x76, 0x9c, 0x04, 0x96, 0xbc, 0x8f, 0x85, 0xbc, 0x05, 0x67, 0x32,
0x15, 0x54, 0x18, 0x3f, 0x47, 0x86, 0xef, 0x2b, 0xed, 0xf5, 0x02, 0x69, 0xde, 0x85, 0xb3, 0xd9,
0xd2, 0x09, 0x21, 0x3f, 0x56, 0xe3, 0x56, 0xf3, 0xf0, 0x24, 0xd5, 0x6b, 0x99, 0xce, 0x15, 0x54,
0x93, 0x46, 0xc8, 0xe7, 0x3a, 0xa5, 0x70, 0xe5, 0xc6, 0xd7, 0x1a, 0x40, 0x1a, 0x17, 0x9d, 0x83,
0x12, 0xde, 0x0f, 0x30, 0xe5, 0x84, 0x51, 0xc1, 0xae, 0x64, 0xa5, 0x02, 0x34, 0x07, 0x10, 0x37,
0x5b, 0xe3, 0x53, 0x7c, 0x50, 0x29, 0xc4, 0xea, 0x58, 0x72, 0x07, 0x1f, 0xa0, 0x79, 0x28, 0x4b,
0x74, 0xa1, 0xd7, 0x85, 0x1e, 0xa4, 0x28, 0x32, 0x58, 0x80, 0x09, 0xdb, 0x71, 0x58, 0x48, 0x83,
0x46, 0x18, 0x92, 0x56, 0x65, 0x44, 0x58, 0x94, 0xa5, 0xec, 0xdd, 0x90, 0xb4, 0x8c, 0x27, 0x1a,
0x4c, 0xa9, 0xad, 0xfb, 0x1c, 0x29, 0x8b, 0x02, 0xb5, 0x08, 0xf7, 0x5c, 0xfb, 0xa0, 0x41, 0xed,
0x2e, 0x96, 0x54, 0xcb, 0x52, 0x76, 0xd7, 0xee, 0x62, 0xb4, 0x08, 0xc5, 0x24, 0x15, 0x15, 0x5d,
0x24, 0x6c, 0x4a, 0x4d, 0x98, 0xd5, 0xd3, 0x1b, 0xbf, 0xeb, 0x30, 0x2e, 0xa5, 0xfd, 0x9b, 0xd4,
0xf2, 0x36, 0xf9, 0xb4, 0xd8, 0x35, 0x28, 0xb7, 0x30, 0x77, 0x7c, 0x22, 0xae, 0x6d, 0x99, 0xa8,
0xac, 0x08, 0x2d, 0x43, 0x89, 0xd0, 0x40, 0xf6, 0xde, 0x88, 0xba, 0x65, 0x9a, 0xb4, 0xc2, 0xe6,
0x09, 0xab, 0x48, 0x68, 0x20, 0x2a, 0x89, 0xae, 0xc0, 0x04, 0x0f, 0xfc, 0x88, 0x56, 0xec, 0x34,
0xaa, 0x36, 0xac, 0x50, 0xa5, 0x7e, 0xe5, 0xd8, 0x36, 0x76, 0xbd, 0x0c, 0xd0, 0x64, 0xcc, 0x95,
0x8e, 0x63, 0xc2, 0x11, 0x49, 0xc7, 0x35, 0xc6, 0xdc, 0xd4, 0xad, 0x14, 0xd9, 0xc5, 0x4e, 0xf7,
0xe0, 0x24, 0x27, 0xb4, 0xed, 0xe2, 0x86, 0xd3, 0x61, 0xc4, 0xc1, 0xd2, 0x7b, 0x5c, 0x78, 0x9f,
0x4f, 0xc2, 0x0a, 0x8b, 0x9b, 0xc2, 0x20, 0xd3, 0xc3, 0x9b, 0x27, 0xac, 0x59, 0x9e, 0x51, 0xc5,
0x88, 0xdb, 0x80, 0xba, 0xa1, 0x1b, 0x10, 0x15, 0xb0, 0x28, 0x00, 0xe7, 0x24, 0xe0, 0x76, 0x64,
0x90, 0x87, 0x37, 0xd3, 0x4d, 0x35, 0x02, 0x6e, 0x6d, 0x1c, 0x46, 0x05, 0x82, 0xf1, 0x45, 0xd4,
0xe2, 0xbd, 0xa4, 0xa1, 0x0a, 0x8c, 0xb7, 0xf0, 0x03, 0x3b, 0x74, 0x03, 0x51, 0x3c, 0xdd, 0x4a,
0x96, 0x68, 0x06, 0xf4, 0x2e, 0xa1, 0xa2, 0x60, 0xba, 0x15, 0xfd, 0x14, 0x12, 0x7b, 0x5f, 0x14,
0x28, 0x92, 0xd8, 0xfb, 0x08, 0xc1, 0x08, 0x0f, 0xb0, 0x27, 0x6a, 0xa2, 0x5b, 0xe2, 0x77, 0x54,
0x4e, 0xcf, 0xb5, 0x1d, 0xdc, 0x61, 0x6e, 0x0b, 0xfb, 0x22, 0xf3, 0x25, 0x2b, 0x2b, 0x32, 0x7e,
0xd4, 0x60, 0x52, 0x29, 0x41, 0x3f, 0x8b, 0x52, 0xca, 0xa2, 0x0a, 0x45, 0x1f, 0x3f, 0x0c, 0x89,
0x8f, 0x5b, 0x82, 0x4a, 0xd1, 0xea, 0xad, 0xa3, 0x03, 0xd8, 0x25, 0xb4, 0xe1, 0x62, 0xda, 0x0e,
0x3a, 0x82, 0xd6, 0xa8, 0x55, 0xea, 0x12, 0xba, 0x25, 0x04, 0x42, 0x6d, 0xef, 0x27, 0xea, 0x11,
0xa9, 0xb6, 0xf7, 0xa5, 0xfa, 0xe9, 0x3c, 0xaf, 0x41, 0x39, 0x53, 0xf0, 0x7e, 0x92, 0xc5, 0x94,
0xe4, 0x29, 0x18, 0x75, 0xed, 0x26, 0x76, 0x65, 0x77, 0xc7, 0x0b, 0xe3, 0x1d, 0x38, 0x33, 0xa4,
0xe2, 0xe8, 0x75, 0x18, 0x97, 0x43, 0x8a, 0xbc, 0x9e, 0x92, 0x76, 0x8e, 0x8c, 0x76, 0x84, 0xc6,
0x4a, 0x2c, 0x8c, 0x75, 0x38, 0x9d, 0x5f, 0xe8, 0x67, 0x83, 0xf9, 0x4e, 0x03, 0x48, 0xe5, 0xe8,
0x42, 0xdf, 0x09, 0x11, 0x79, 0xef, 0x3f, 0x0b, 0x73, 0xd9, 0x83, 0x27, 0x3a, 0x41, 0x39, 0x65,
0x99, 0x8c, 0xe8, 0x6a, 0x46, 0x2e, 0xc0, 0x64, 0x72, 0xec, 0xd3, 0x53, 0x5b, 0xb2, 0x92, 0xbb,
0x20, 0xee, 0xc9, 0x22, 0x8c, 0xc5, 0xe4, 0x8c, 0xdf, 0x0a, 0x30, 0xa9, 0xdc, 0xcc, 0xcf, 0x73,
0xcd, 0xcd, 0x2b, 0x07, 0x57, 0x34, 0x8b, 0x7a, 0x48, 0x95, 0xdd, 0xe8, 0x03, 0xbb, 0xe9, 0xcf,
0xc8, 0x48, 0x5e, 0x46, 0xae, 0xc2, 0x54, 0x84, 0xe1, 0x12, 0x1e, 0x28, 0x57, 0xcb, 0xc9, 0xf4,
0x3e, 0x8a, 0x92, 0x2c, 0x8c, 0x37, 0x4f, 0x58, 0x13, 0x24, 0xb3, 0x46, 0xb7, 0x60, 0x56, 0x46,
0xc8, 0xf8, 0xc7, 0x37, 0xcc, 0x69, 0xe5, 0x6a, 0xca, 0x42, 0x4c, 0x73, 0x55, 0x94, 0x1e, 0xe5,
0x57, 0x60, 0x22, 0x1b, 0x2e, 0x6a, 0xc3, 0xa4, 0x96, 0xfa, 0x45, 0xdd, 0x92, 0x56, 0xaf, 0xc2,
0x74, 0x1f, 0xa8, 0x6a, 0x58, 0x4a, 0x0c, 0xbf, 0xcf, 0x3c, 0x36, 0xf1, 0x7b, 0x88, 0xae, 0xc0,
0x98, 0xf2, 0x8a, 0x2e, 0xe4, 0xbd, 0xa2, 0xbc, 0x1e, 0x7f, 0xd6, 0x69, 0xe0, 0x1f, 0x58, 0xd2,
0xa1, 0xba, 0x03, 0xe5, 0x8c, 0x38, 0xba, 0x3b, 0xd2, 0x07, 0x22, 0xfa, 0x89, 0x16, 0x13, 0x12,
0x85, 0x23, 0x86, 0x89, 0xd8, 0x64, 0xb5, 0xf0, 0x96, 0xb6, 0xf2, 0xa7, 0x0e, 0x93, 0xf1, 0x1b,
0xb8, 0x8b, 0xfd, 0x3d, 0xe2, 0x60, 0xf4, 0x39, 0xa0, 0xc1, 0x81, 0x1b, 0xd5, 0x12, 0xa0, 0x61,
0x83, 0x7e, 0x75, 0xe1, 0x08, 0x8b, 0x78, 0x8e, 0x30, 0x2e, 0x7c, 0xf5, 0xd7, 0x3f, 0xdf, 0x14,
0xe6, 0x8c, 0x8a, 0xf8, 0xb3, 0x63, 0x6f, 0xd9, 0x4c, 0x5e, 0x3f, 0x53, 0xce, 0x97, 0xab, 0xda,
0x22, 0xfa, 0x49, 0x83, 0xd9, 0x81, 0x21, 0x1a, 0xcd, 0x4b, 0xf4, 0x61, 0xd3, 0x7a, 0xb5, 0x36,
0xdc, 0x40, 0x46, 0xdf, 0x11, 0xd1, 0x6f, 0xa3, 0x8d, 0x61, 0xd1, 0xcd, 0xc7, 0x69, 0xdf, 0xd7,
0x7b, 0x13, 0xc9, 0xa1, 0x22, 0x4e, 0x67, 0x93, 0x43, 0xf4, 0xad, 0x06, 0x27, 0x73, 0x06, 0x68,
0xb4, 0x90, 0xb9, 0x2f, 0xf2, 0xa7, 0xf5, 0xaa, 0x71, 0x94, 0x89, 0xe4, 0xfb, 0xa6, 0xe0, 0x7b,
0x09, 0x99, 0xcf, 0xc8, 0x77, 0xe5, 0xe7, 0x11, 0x98, 0x10, 0x85, 0x4e, 0x4a, 0xfa, 0x19, 0xcc,
0x0e, 0x8c, 0xcb, 0xbd, 0x8c, 0x0e, 0x9b, 0xd0, 0xab, 0xb5, 0xe1, 0x06, 0x92, 0xa1, 0x21, 0x18,
0x9e, 0x33, 0xce, 0x0c, 0x30, 0x8c, 0xdb, 0x35, 0x2a, 0xe7, 0xdf, 0x1a, 0xcc, 0xf4, 0xcf, 0xc0,
0xe8, 0xfc, 0x60, 0xb1, 0x94, 0xd0, 0xf3, 0x43, 0xf5, 0x32, 0xf2, 0x97, 0x9a, 0x08, 0xfd, 0x18,
0x1d, 0x0c, 0x09, 0xad, 0xe4, 0x26, 0x3b, 0x10, 0x1e, 0x3e, 0x63, 0x95, 0x15, 0x79, 0x66, 0x2a,
0x3b, 0x44, 0x7f, 0x68, 0x80, 0x06, 0x87, 0xe6, 0xde, 0x49, 0x19, 0x3a, 0x9f, 0x57, 0x17, 0x8e,
0xb0, 0x90, 0xfb, 0xeb, 0x88, 0xed, 0x35, 0xd1, 0xc7, 0xff, 0xf7, 0xf6, 0xd6, 0x7e, 0x29, 0x3c,
0xb9, 0xf1, 0x43, 0x01, 0xfd, 0xaa, 0x41, 0x31, 0xe1, 0x62, 0xdc, 0x83, 0x49, 0xf6, 0x88, 0xde,
0x74, 0x59, 0xd8, 0xaa, 0x6d, 0x74, 0x9b, 0x9b, 0xe8, 0xb5, 0x4e, 0x10, 0x78, 0x7c, 0xd5, 0x34,
0xdb, 0x24, 0xe8, 0x84, 0xcd, 0xba, 0xc3, 0xba, 0x26, 0x7b, 0x44, 0x9d, 0xc8, 0xc2, 0x64, 0x0e,
0xe1, 0x4b, 0x09, 0xbf, 0xea, 0x29, 0x1e, 0x7a, 0x1e, 0xf3, 0x83, 0xeb, 0x89, 0x3e, 0x32, 0x5e,
0xbc, 0x03, 0x70, 0xc3, 0xb3, 0x9d, 0x0e, 0x5e, 0x5a, 0xa9, 0x2f, 0xa3, 0x6b, 0xff, 0x19, 0xce,
0x6c, 0xba, 0xac, 0x69, 0x76, 0x6d, 0x1e, 0x60, 0xdf, 0xdc, 0xba, 0x7d, 0x73, 0xfd, 0xee, 0xee,
0xfa, 0x8a, 0x7e, 0xa9, 0xbe, 0xbc, 0x58, 0xd0, 0x0a, 0x2b, 0x33, 0xb6, 0xe7, 0xb9, 0xc4, 0x11,
0xff, 0x8c, 0x30, 0x3f, 0xe1, 0x8c, 0xae, 0x0e, 0x48, 0xfc, 0x0d, 0x98, 0xb9, 0x85, 0xf7, 0xb0,
0xcb, 0x3c, 0xec, 0xd7, 0xb6, 0x6d, 0x1a, 0xda, 0x2e, 0xba, 0x1c, 0xc5, 0x5f, 0x35, 0x7b, 0x31,
0xeb, 0x92, 0x07, 0x61, 0x66, 0x2f, 0x63, 0x5c, 0x10, 0x69, 0xf4, 0x88, 0x7c, 0x10, 0xff, 0xe3,
0xa4, 0x39, 0x26, 0x3e, 0x97, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x0a, 0x60, 0x06, 0x34, 0x58,
0x11, 0x00, 0x00,
}
+25 -8
View File
@@ -36,7 +36,7 @@ var _ server.Option
// Client API for BundleService service
type BundleService interface {
CreateSettingsBundle(ctx context.Context, in *CreateSettingsBundleRequest, opts ...client.CallOption) (*CreateSettingsBundleResponse, error)
SaveSettingsBundle(ctx context.Context, in *SaveSettingsBundleRequest, opts ...client.CallOption) (*SaveSettingsBundleResponse, error)
GetSettingsBundle(ctx context.Context, in *GetSettingsBundleRequest, opts ...client.CallOption) (*GetSettingsBundleResponse, error)
ListSettingsBundles(ctx context.Context, in *ListSettingsBundlesRequest, opts ...client.CallOption) (*ListSettingsBundlesResponse, error)
}
@@ -53,9 +53,9 @@ func NewBundleService(name string, c client.Client) BundleService {
}
}
func (c *bundleService) CreateSettingsBundle(ctx context.Context, in *CreateSettingsBundleRequest, opts ...client.CallOption) (*CreateSettingsBundleResponse, error) {
req := c.c.NewRequest(c.name, "BundleService.CreateSettingsBundle", in)
out := new(CreateSettingsBundleResponse)
func (c *bundleService) SaveSettingsBundle(ctx context.Context, in *SaveSettingsBundleRequest, opts ...client.CallOption) (*SaveSettingsBundleResponse, error) {
req := c.c.NewRequest(c.name, "BundleService.SaveSettingsBundle", in)
out := new(SaveSettingsBundleResponse)
err := c.c.Call(ctx, req, out, opts...)
if err != nil {
return nil, err
@@ -86,14 +86,14 @@ func (c *bundleService) ListSettingsBundles(ctx context.Context, in *ListSetting
// Server API for BundleService service
type BundleServiceHandler interface {
CreateSettingsBundle(context.Context, *CreateSettingsBundleRequest, *CreateSettingsBundleResponse) error
SaveSettingsBundle(context.Context, *SaveSettingsBundleRequest, *SaveSettingsBundleResponse) error
GetSettingsBundle(context.Context, *GetSettingsBundleRequest, *GetSettingsBundleResponse) error
ListSettingsBundles(context.Context, *ListSettingsBundlesRequest, *ListSettingsBundlesResponse) error
}
func RegisterBundleServiceHandler(s server.Server, hdlr BundleServiceHandler, opts ...server.HandlerOption) error {
type bundleService interface {
CreateSettingsBundle(ctx context.Context, in *CreateSettingsBundleRequest, out *CreateSettingsBundleResponse) error
SaveSettingsBundle(ctx context.Context, in *SaveSettingsBundleRequest, out *SaveSettingsBundleResponse) error
GetSettingsBundle(ctx context.Context, in *GetSettingsBundleRequest, out *GetSettingsBundleResponse) error
ListSettingsBundles(ctx context.Context, in *ListSettingsBundlesRequest, out *ListSettingsBundlesResponse) error
}
@@ -108,8 +108,8 @@ type bundleServiceHandler struct {
BundleServiceHandler
}
func (h *bundleServiceHandler) CreateSettingsBundle(ctx context.Context, in *CreateSettingsBundleRequest, out *CreateSettingsBundleResponse) error {
return h.BundleServiceHandler.CreateSettingsBundle(ctx, in, out)
func (h *bundleServiceHandler) SaveSettingsBundle(ctx context.Context, in *SaveSettingsBundleRequest, out *SaveSettingsBundleResponse) error {
return h.BundleServiceHandler.SaveSettingsBundle(ctx, in, out)
}
func (h *bundleServiceHandler) GetSettingsBundle(ctx context.Context, in *GetSettingsBundleRequest, out *GetSettingsBundleResponse) error {
@@ -125,6 +125,7 @@ func (h *bundleServiceHandler) ListSettingsBundles(ctx context.Context, in *List
type ValueService interface {
SaveSettingsValue(ctx context.Context, in *SaveSettingsValueRequest, opts ...client.CallOption) (*SaveSettingsValueResponse, error)
GetSettingsValue(ctx context.Context, in *GetSettingsValueRequest, opts ...client.CallOption) (*GetSettingsValueResponse, error)
ListSettingsValues(ctx context.Context, in *ListSettingsValuesRequest, opts ...client.CallOption) (*ListSettingsValuesResponse, error)
}
type valueService struct {
@@ -159,17 +160,29 @@ func (c *valueService) GetSettingsValue(ctx context.Context, in *GetSettingsValu
return out, nil
}
func (c *valueService) ListSettingsValues(ctx context.Context, in *ListSettingsValuesRequest, opts ...client.CallOption) (*ListSettingsValuesResponse, error) {
req := c.c.NewRequest(c.name, "ValueService.ListSettingsValues", in)
out := new(ListSettingsValuesResponse)
err := c.c.Call(ctx, req, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// Server API for ValueService service
type ValueServiceHandler interface {
SaveSettingsValue(context.Context, *SaveSettingsValueRequest, *SaveSettingsValueResponse) error
GetSettingsValue(context.Context, *GetSettingsValueRequest, *GetSettingsValueResponse) error
ListSettingsValues(context.Context, *ListSettingsValuesRequest, *ListSettingsValuesResponse) error
}
func RegisterValueServiceHandler(s server.Server, hdlr ValueServiceHandler, opts ...server.HandlerOption) error {
type valueService interface {
SaveSettingsValue(ctx context.Context, in *SaveSettingsValueRequest, out *SaveSettingsValueResponse) error
GetSettingsValue(ctx context.Context, in *GetSettingsValueRequest, out *GetSettingsValueResponse) error
ListSettingsValues(ctx context.Context, in *ListSettingsValuesRequest, out *ListSettingsValuesResponse) error
}
type ValueService struct {
valueService
@@ -189,3 +202,7 @@ func (h *valueServiceHandler) SaveSettingsValue(ctx context.Context, in *SaveSet
func (h *valueServiceHandler) GetSettingsValue(ctx context.Context, in *GetSettingsValueRequest, out *GetSettingsValueResponse) error {
return h.ValueServiceHandler.GetSettingsValue(ctx, in, out)
}
func (h *valueServiceHandler) ListSettingsValues(ctx context.Context, in *ListSettingsValuesRequest, out *ListSettingsValuesResponse) error {
return h.ValueServiceHandler.ListSettingsValues(ctx, in, out)
}
+165 -32
View File
@@ -23,18 +23,18 @@ func (h *webBundleServiceHandler) ServeHTTP(w http.ResponseWriter, r *http.Reque
h.r.ServeHTTP(w, r)
}
func (h *webBundleServiceHandler) CreateSettingsBundle(w http.ResponseWriter, r *http.Request) {
func (h *webBundleServiceHandler) SaveSettingsBundle(w http.ResponseWriter, r *http.Request) {
req := &CreateSettingsBundleRequest{}
req := &SaveSettingsBundleRequest{}
resp := &CreateSettingsBundleResponse{}
resp := &SaveSettingsBundleResponse{}
if err := json.NewDecoder(r.Body).Decode(&req); err != nil {
http.Error(w, err.Error(), http.StatusPreconditionFailed)
return
}
if err := h.h.CreateSettingsBundle(
if err := h.h.SaveSettingsBundle(
context.Background(),
req,
resp,
@@ -101,9 +101,9 @@ func RegisterBundleServiceWeb(r chi.Router, i BundleServiceHandler, middlewares
h: i,
}
r.MethodFunc("POST", "/api/v0/settings/bundles", handler.CreateSettingsBundle)
r.MethodFunc("GET", "/api/v0/settings/bundles/{extension}/{bundle_key}", handler.GetSettingsBundle)
r.MethodFunc("GET", "/api/v0/settings/bundles", handler.ListSettingsBundles)
r.MethodFunc("POST", "/api/v0/settings/bundles", handler.SaveSettingsBundle)
r.MethodFunc("GET", "/api/v0/settings/bundles/{identifier.extension}/{identifier.bundle_key}", handler.GetSettingsBundle)
r.MethodFunc("GET", "/api/v0/settings/bundles/{identifier.extension}", handler.ListSettingsBundles)
}
type webValueServiceHandler struct {
@@ -163,6 +163,30 @@ func (h *webValueServiceHandler) GetSettingsValue(w http.ResponseWriter, r *http
render.JSON(w, r, resp)
}
func (h *webValueServiceHandler) ListSettingsValues(w http.ResponseWriter, r *http.Request) {
req := &ListSettingsValuesRequest{}
resp := &ListSettingsValuesResponse{}
//if err := json.NewDecoder(r.Body).Decode(&req); err != nil {
// http.Error(w, err.Error(), http.StatusPreconditionFailed)
// return
//}
if err := h.h.ListSettingsValues(
context.Background(),
req,
resp,
); err != nil {
http.Error(w, err.Error(), http.StatusBadRequest)
return
}
render.Status(r, http.StatusOK)
render.JSON(w, r, resp)
}
func RegisterValueServiceWeb(r chi.Router, i ValueServiceHandler, middlewares ...func(http.Handler) http.Handler) {
handler := &webValueServiceHandler{
r: r,
@@ -170,80 +194,81 @@ func RegisterValueServiceWeb(r chi.Router, i ValueServiceHandler, middlewares ..
}
r.MethodFunc("POST", "/api/v0/settings/values", handler.SaveSettingsValue)
r.MethodFunc("GET", "/api/v0/settings/values/{account_uuid}/{extension}/{bundle_key}/{setting_key}", handler.GetSettingsValue)
r.MethodFunc("GET", "/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}/{identifier.setting_key}", handler.GetSettingsValue)
r.MethodFunc("GET", "/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}", handler.ListSettingsValues)
}
// CreateSettingsBundleRequestJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of CreateSettingsBundleRequest. This struct is safe to replace or modify but
// SaveSettingsBundleRequestJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of SaveSettingsBundleRequest. This struct is safe to replace or modify but
// should not be done so concurrently.
var CreateSettingsBundleRequestJSONMarshaler = new(jsonpb.Marshaler)
var SaveSettingsBundleRequestJSONMarshaler = new(jsonpb.Marshaler)
// MarshalJSON satisfies the encoding/json Marshaler interface. This method
// uses the more correct jsonpb package to correctly marshal the message.
func (m *CreateSettingsBundleRequest) MarshalJSON() ([]byte, error) {
func (m *SaveSettingsBundleRequest) MarshalJSON() ([]byte, error) {
if m == nil {
return json.Marshal(nil)
}
buf := &bytes.Buffer{}
if err := CreateSettingsBundleRequestJSONMarshaler.Marshal(buf, m); err != nil {
if err := SaveSettingsBundleRequestJSONMarshaler.Marshal(buf, m); err != nil {
return nil, err
}
return buf.Bytes(), nil
}
var _ json.Marshaler = (*CreateSettingsBundleRequest)(nil)
var _ json.Marshaler = (*SaveSettingsBundleRequest)(nil)
// CreateSettingsBundleRequestJSONUnmarshaler describes the default jsonpb.Unmarshaler used by all
// instances of CreateSettingsBundleRequest. This struct is safe to replace or modify but
// SaveSettingsBundleRequestJSONUnmarshaler describes the default jsonpb.Unmarshaler used by all
// instances of SaveSettingsBundleRequest. This struct is safe to replace or modify but
// should not be done so concurrently.
var CreateSettingsBundleRequestJSONUnmarshaler = new(jsonpb.Unmarshaler)
var SaveSettingsBundleRequestJSONUnmarshaler = new(jsonpb.Unmarshaler)
// UnmarshalJSON satisfies the encoding/json Unmarshaler interface. This method
// uses the more correct jsonpb package to correctly unmarshal the message.
func (m *CreateSettingsBundleRequest) UnmarshalJSON(b []byte) error {
return CreateSettingsBundleRequestJSONUnmarshaler.Unmarshal(bytes.NewReader(b), m)
func (m *SaveSettingsBundleRequest) UnmarshalJSON(b []byte) error {
return SaveSettingsBundleRequestJSONUnmarshaler.Unmarshal(bytes.NewReader(b), m)
}
var _ json.Unmarshaler = (*CreateSettingsBundleRequest)(nil)
var _ json.Unmarshaler = (*SaveSettingsBundleRequest)(nil)
// CreateSettingsBundleResponseJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of CreateSettingsBundleResponse. This struct is safe to replace or modify but
// SaveSettingsBundleResponseJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of SaveSettingsBundleResponse. This struct is safe to replace or modify but
// should not be done so concurrently.
var CreateSettingsBundleResponseJSONMarshaler = new(jsonpb.Marshaler)
var SaveSettingsBundleResponseJSONMarshaler = new(jsonpb.Marshaler)
// MarshalJSON satisfies the encoding/json Marshaler interface. This method
// uses the more correct jsonpb package to correctly marshal the message.
func (m *CreateSettingsBundleResponse) MarshalJSON() ([]byte, error) {
func (m *SaveSettingsBundleResponse) MarshalJSON() ([]byte, error) {
if m == nil {
return json.Marshal(nil)
}
buf := &bytes.Buffer{}
if err := CreateSettingsBundleResponseJSONMarshaler.Marshal(buf, m); err != nil {
if err := SaveSettingsBundleResponseJSONMarshaler.Marshal(buf, m); err != nil {
return nil, err
}
return buf.Bytes(), nil
}
var _ json.Marshaler = (*CreateSettingsBundleResponse)(nil)
var _ json.Marshaler = (*SaveSettingsBundleResponse)(nil)
// CreateSettingsBundleResponseJSONUnmarshaler describes the default jsonpb.Unmarshaler used by all
// instances of CreateSettingsBundleResponse. This struct is safe to replace or modify but
// SaveSettingsBundleResponseJSONUnmarshaler describes the default jsonpb.Unmarshaler used by all
// instances of SaveSettingsBundleResponse. This struct is safe to replace or modify but
// should not be done so concurrently.
var CreateSettingsBundleResponseJSONUnmarshaler = new(jsonpb.Unmarshaler)
var SaveSettingsBundleResponseJSONUnmarshaler = new(jsonpb.Unmarshaler)
// UnmarshalJSON satisfies the encoding/json Unmarshaler interface. This method
// uses the more correct jsonpb package to correctly unmarshal the message.
func (m *CreateSettingsBundleResponse) UnmarshalJSON(b []byte) error {
return CreateSettingsBundleResponseJSONUnmarshaler.Unmarshal(bytes.NewReader(b), m)
func (m *SaveSettingsBundleResponse) UnmarshalJSON(b []byte) error {
return SaveSettingsBundleResponseJSONUnmarshaler.Unmarshal(bytes.NewReader(b), m)
}
var _ json.Unmarshaler = (*CreateSettingsBundleResponse)(nil)
var _ json.Unmarshaler = (*SaveSettingsBundleResponse)(nil)
// GetSettingsBundleRequestJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of GetSettingsBundleRequest. This struct is safe to replace or modify but
@@ -533,6 +558,114 @@ func (m *GetSettingsValueResponse) UnmarshalJSON(b []byte) error {
var _ json.Unmarshaler = (*GetSettingsValueResponse)(nil)
// ListSettingsValuesRequestJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of ListSettingsValuesRequest. This struct is safe to replace or modify but
// should not be done so concurrently.
var ListSettingsValuesRequestJSONMarshaler = new(jsonpb.Marshaler)
// MarshalJSON satisfies the encoding/json Marshaler interface. This method
// uses the more correct jsonpb package to correctly marshal the message.
func (m *ListSettingsValuesRequest) MarshalJSON() ([]byte, error) {
if m == nil {
return json.Marshal(nil)
}
buf := &bytes.Buffer{}
if err := ListSettingsValuesRequestJSONMarshaler.Marshal(buf, m); err != nil {
return nil, err
}
return buf.Bytes(), nil
}
var _ json.Marshaler = (*ListSettingsValuesRequest)(nil)
// ListSettingsValuesRequestJSONUnmarshaler describes the default jsonpb.Unmarshaler used by all
// instances of ListSettingsValuesRequest. This struct is safe to replace or modify but
// should not be done so concurrently.
var ListSettingsValuesRequestJSONUnmarshaler = new(jsonpb.Unmarshaler)
// UnmarshalJSON satisfies the encoding/json Unmarshaler interface. This method
// uses the more correct jsonpb package to correctly unmarshal the message.
func (m *ListSettingsValuesRequest) UnmarshalJSON(b []byte) error {
return ListSettingsValuesRequestJSONUnmarshaler.Unmarshal(bytes.NewReader(b), m)
}
var _ json.Unmarshaler = (*ListSettingsValuesRequest)(nil)
// ListSettingsValuesResponseJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of ListSettingsValuesResponse. This struct is safe to replace or modify but
// should not be done so concurrently.
var ListSettingsValuesResponseJSONMarshaler = new(jsonpb.Marshaler)
// MarshalJSON satisfies the encoding/json Marshaler interface. This method
// uses the more correct jsonpb package to correctly marshal the message.
func (m *ListSettingsValuesResponse) MarshalJSON() ([]byte, error) {
if m == nil {
return json.Marshal(nil)
}
buf := &bytes.Buffer{}
if err := ListSettingsValuesResponseJSONMarshaler.Marshal(buf, m); err != nil {
return nil, err
}
return buf.Bytes(), nil
}
var _ json.Marshaler = (*ListSettingsValuesResponse)(nil)
// ListSettingsValuesResponseJSONUnmarshaler describes the default jsonpb.Unmarshaler used by all
// instances of ListSettingsValuesResponse. This struct is safe to replace or modify but
// should not be done so concurrently.
var ListSettingsValuesResponseJSONUnmarshaler = new(jsonpb.Unmarshaler)
// UnmarshalJSON satisfies the encoding/json Unmarshaler interface. This method
// uses the more correct jsonpb package to correctly unmarshal the message.
func (m *ListSettingsValuesResponse) UnmarshalJSON(b []byte) error {
return ListSettingsValuesResponseJSONUnmarshaler.Unmarshal(bytes.NewReader(b), m)
}
var _ json.Unmarshaler = (*ListSettingsValuesResponse)(nil)
// IdentifierJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of Identifier. This struct is safe to replace or modify but
// should not be done so concurrently.
var IdentifierJSONMarshaler = new(jsonpb.Marshaler)
// MarshalJSON satisfies the encoding/json Marshaler interface. This method
// uses the more correct jsonpb package to correctly marshal the message.
func (m *Identifier) MarshalJSON() ([]byte, error) {
if m == nil {
return json.Marshal(nil)
}
buf := &bytes.Buffer{}
if err := IdentifierJSONMarshaler.Marshal(buf, m); err != nil {
return nil, err
}
return buf.Bytes(), nil
}
var _ json.Marshaler = (*Identifier)(nil)
// IdentifierJSONUnmarshaler describes the default jsonpb.Unmarshaler used by all
// instances of Identifier. This struct is safe to replace or modify but
// should not be done so concurrently.
var IdentifierJSONUnmarshaler = new(jsonpb.Unmarshaler)
// UnmarshalJSON satisfies the encoding/json Unmarshaler interface. This method
// uses the more correct jsonpb package to correctly unmarshal the message.
func (m *Identifier) UnmarshalJSON(b []byte) error {
return IdentifierJSONUnmarshaler.Unmarshal(bytes.NewReader(b), m)
}
var _ json.Unmarshaler = (*Identifier)(nil)
// SettingsBundleJSONMarshaler describes the default jsonpb.Marshaler used by all
// instances of SettingsBundle. This struct is safe to replace or modify but
// should not be done so concurrently.
+38 -33
View File
@@ -31,21 +31,17 @@ option (grpc.gateway.protoc_gen_swagger.options.openapiv2_swagger) = {
};
service BundleService {
rpc CreateSettingsBundle(CreateSettingsBundleRequest) returns (CreateSettingsBundleResponse) {
rpc SaveSettingsBundle(SaveSettingsBundleRequest) returns (SaveSettingsBundleResponse) {
option (google.api.http) = {
post: "/api/v0/settings/bundles",
body: "*"
};
};
rpc GetSettingsBundle(GetSettingsBundleRequest) returns (GetSettingsBundleResponse) {
option (google.api.http) = {
get: "/api/v0/settings/bundles/{extension}/{bundle_key}"
};
option (google.api.http).get = "/api/v0/settings/bundles/{identifier.extension}/{identifier.bundle_key}";
};
rpc ListSettingsBundles(ListSettingsBundlesRequest) returns (ListSettingsBundlesResponse) {
option (google.api.http) = {
get: "/api/v0/settings/bundles"
};
option (google.api.http).get = "/api/v0/settings/bundles/{identifier.extension}";
};
}
@@ -57,24 +53,24 @@ service ValueService {
};
};
rpc GetSettingsValue(GetSettingsValueRequest) returns (GetSettingsValueResponse) {
option (google.api.http) = {
get: "/api/v0/settings/values/{account_uuid}/{extension}/{bundle_key}/{setting_key}"
};
option (google.api.http).get = "/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}/{identifier.setting_key}";
};
rpc ListSettingsValues(ListSettingsValuesRequest) returns (ListSettingsValuesResponse) {
option (google.api.http).get = "/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}";
};
}
// requests and responses for settings bundles
message CreateSettingsBundleRequest {
message SaveSettingsBundleRequest {
SettingsBundle settings_bundle = 1;
}
message CreateSettingsBundleResponse {
message SaveSettingsBundleResponse {
SettingsBundle settings_bundle = 1;
}
message GetSettingsBundleRequest {
string extension = 1;
string bundle_key = 2;
Identifier identifier = 1;
}
message GetSettingsBundleResponse {
@@ -82,7 +78,7 @@ message GetSettingsBundleResponse {
}
message ListSettingsBundlesRequest {
string extension = 1;// can be limited to all settings bundles of an extension
Identifier identifier = 1;
}
message ListSettingsBundlesResponse {
@@ -99,22 +95,34 @@ message SaveSettingsValueResponse {
}
message GetSettingsValueRequest {
string account_uuid = 1;
string extension = 2;
string bundle_key = 3;
string setting_key = 4;
Identifier identifier = 1;
}
message GetSettingsValueResponse {
SettingsValue settings_value = 1;
}
// payloads for settings bundles
message SettingsBundle {
message ListSettingsValuesRequest {
Identifier identifier = 1;
}
message ListSettingsValuesResponse {
repeated SettingsValue settings_values = 1;
}
// generic payloads
message Identifier {
string extension = 1;
string bundle_key = 2;
string display_name = 3;
repeated Setting settings = 4;
string setting_key = 3;
string account_uuid = 4;
}
// payloads for settings bundles
message SettingsBundle {
Identifier identifier = 1;
string display_name = 2;
repeated Setting settings = 3;
}
message Setting {
@@ -170,16 +178,13 @@ message ListOption {
// payloads for settings values
message SettingsValue {
string account_uuid = 1;
string extension = 2;
string bundle_key = 3;
string setting_key = 4;
Identifier identifier = 1;
oneof value {
bool bool_value = 5;
int64 int_value = 6;
string string_value = 7;
IntListValue int_list_value = 8;
StringListValue string_list_value = 9;
bool bool_value = 2;
int64 int_value = 3;
string string_value = 4;
IntListValue int_list_value = 5;
StringListValue string_list_value = 6;
}
}
@@ -193,5 +198,5 @@ message StringListValue {
// only meant for serialization
message SettingsValues {
map<string,SettingsValue> values = 1;
map<string, SettingsValue> values = 1;
}
+169 -72
View File
@@ -25,6 +25,38 @@
],
"paths": {
"/api/v0/settings/bundles": {
"post": {
"operationId": "SaveSettingsBundle",
"responses": {
"200": {
"description": "A successful response.",
"schema": {
"$ref": "#/definitions/protoSaveSettingsBundleResponse"
}
},
"default": {
"description": "An unexpected error response",
"schema": {
"$ref": "#/definitions/runtimeError"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/protoSaveSettingsBundleRequest"
}
}
],
"tags": [
"BundleService"
]
}
},
"/api/v0/settings/bundles/{identifier.extension}": {
"get": {
"operationId": "ListSettingsBundles",
"responses": {
@@ -43,7 +75,25 @@
},
"parameters": [
{
"name": "extension",
"name": "identifier.extension",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "identifier.bundle_key",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "identifier.setting_key",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "identifier.account_uuid",
"in": "query",
"required": false,
"type": "string"
@@ -52,39 +102,9 @@
"tags": [
"BundleService"
]
},
"post": {
"operationId": "CreateSettingsBundle",
"responses": {
"200": {
"description": "A successful response.",
"schema": {
"$ref": "#/definitions/protoCreateSettingsBundleResponse"
}
},
"default": {
"description": "An unexpected error response",
"schema": {
"$ref": "#/definitions/runtimeError"
}
}
},
"parameters": [
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/protoCreateSettingsBundleRequest"
}
}
],
"tags": [
"BundleService"
]
}
},
"/api/v0/settings/bundles/{extension}/{bundle_key}": {
"/api/v0/settings/bundles/{identifier.extension}/{identifier.bundle_key}": {
"get": {
"operationId": "GetSettingsBundle",
"responses": {
@@ -103,16 +123,28 @@
},
"parameters": [
{
"name": "extension",
"name": "identifier.extension",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "bundle_key",
"name": "identifier.bundle_key",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "identifier.setting_key",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "identifier.account_uuid",
"in": "query",
"required": false,
"type": "string"
}
],
"tags": [
@@ -152,7 +184,55 @@
]
}
},
"/api/v0/settings/values/{account_uuid}/{extension}/{bundle_key}/{setting_key}": {
"/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}": {
"get": {
"operationId": "ListSettingsValues",
"responses": {
"200": {
"description": "A successful response.",
"schema": {
"$ref": "#/definitions/protoListSettingsValuesResponse"
}
},
"default": {
"description": "An unexpected error response",
"schema": {
"$ref": "#/definitions/runtimeError"
}
}
},
"parameters": [
{
"name": "identifier.account_uuid",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "identifier.extension",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "identifier.bundle_key",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "identifier.setting_key",
"in": "query",
"required": false,
"type": "string"
}
],
"tags": [
"ValueService"
]
}
},
"/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}/{identifier.setting_key}": {
"get": {
"operationId": "GetSettingsValue",
"responses": {
@@ -171,25 +251,25 @@
},
"parameters": [
{
"name": "account_uuid",
"name": "identifier.account_uuid",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "extension",
"name": "identifier.extension",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "bundle_key",
"name": "identifier.bundle_key",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "setting_key",
"name": "identifier.setting_key",
"in": "path",
"required": true,
"type": "string"
@@ -214,23 +294,6 @@
}
}
},
"protoCreateSettingsBundleRequest": {
"type": "object",
"properties": {
"settings_bundle": {
"$ref": "#/definitions/protoSettingsBundle"
}
},
"title": "requests and responses for settings bundles"
},
"protoCreateSettingsBundleResponse": {
"type": "object",
"properties": {
"settings_bundle": {
"$ref": "#/definitions/protoSettingsBundle"
}
}
},
"protoGetSettingsBundleResponse": {
"type": "object",
"properties": {
@@ -247,6 +310,24 @@
}
}
},
"protoIdentifier": {
"type": "object",
"properties": {
"extension": {
"type": "string"
},
"bundle_key": {
"type": "string"
},
"setting_key": {
"type": "string"
},
"account_uuid": {
"type": "string"
}
},
"title": "generic payloads"
},
"protoIntListValue": {
"type": "object",
"properties": {
@@ -313,6 +394,17 @@
}
}
},
"protoListSettingsValuesResponse": {
"type": "object",
"properties": {
"settings_values": {
"type": "array",
"items": {
"$ref": "#/definitions/protoSettingsValue"
}
}
}
},
"protoMultiChoiceListSetting": {
"type": "object",
"properties": {
@@ -324,6 +416,23 @@
}
}
},
"protoSaveSettingsBundleRequest": {
"type": "object",
"properties": {
"settings_bundle": {
"$ref": "#/definitions/protoSettingsBundle"
}
},
"title": "requests and responses for settings bundles"
},
"protoSaveSettingsBundleResponse": {
"type": "object",
"properties": {
"settings_bundle": {
"$ref": "#/definitions/protoSettingsBundle"
}
}
},
"protoSaveSettingsValueRequest": {
"type": "object",
"properties": {
@@ -373,11 +482,8 @@
"protoSettingsBundle": {
"type": "object",
"properties": {
"extension": {
"type": "string"
},
"bundle_key": {
"type": "string"
"identifier": {
"$ref": "#/definitions/protoIdentifier"
},
"display_name": {
"type": "string"
@@ -394,17 +500,8 @@
"protoSettingsValue": {
"type": "object",
"properties": {
"account_uuid": {
"type": "string"
},
"extension": {
"type": "string"
},
"bundle_key": {
"type": "string"
},
"setting_key": {
"type": "string"
"identifier": {
"$ref": "#/definitions/protoIdentifier"
},
"bool_value": {
"type": "boolean",
+21 -4
View File
@@ -23,7 +23,7 @@ func NewService(cfg *config.Config) Service {
}
}
func (g Service) CreateSettingsBundle(c context.Context, req *proto.CreateSettingsBundleRequest, res *proto.CreateSettingsBundleResponse) error {
func (g Service) SaveSettingsBundle(c context.Context, req *proto.SaveSettingsBundleRequest, res *proto.SaveSettingsBundleResponse) error {
r, err := g.manager.WriteBundle(req.SettingsBundle)
if err != nil {
return err
@@ -33,7 +33,7 @@ func (g Service) CreateSettingsBundle(c context.Context, req *proto.CreateSettin
}
func (g Service) GetSettingsBundle(c context.Context, req *proto.GetSettingsBundleRequest, res *proto.GetSettingsBundleResponse) error {
r, err := g.manager.ReadBundle(req.Extension, req.BundleKey)
r, err := g.manager.ReadBundle(getFailsafeIdentifier(req.Identifier))
if err != nil {
return err
}
@@ -42,7 +42,7 @@ func (g Service) GetSettingsBundle(c context.Context, req *proto.GetSettingsBund
}
func (g Service) ListSettingsBundles(c context.Context, req *proto.ListSettingsBundlesRequest, res *proto.ListSettingsBundlesResponse) error {
r, err := g.manager.ListByExtension(req.Extension)
r, err := g.manager.ListBundles(getFailsafeIdentifier(req.Identifier))
if err != nil {
return err
}
@@ -60,10 +60,27 @@ func (g Service) SaveSettingsValue(c context.Context, req *proto.SaveSettingsVal
}
func (g Service) GetSettingsValue(c context.Context, req *proto.GetSettingsValueRequest, res *proto.GetSettingsValueResponse) error {
r, err := g.manager.ReadValue(req.AccountUuid, req.Extension, req.BundleKey, req.SettingKey)
r, err := g.manager.ReadValue(getFailsafeIdentifier(req.Identifier))
if err != nil {
return err
}
res.SettingsValue = r
return nil
}
func (g Service) ListSettingsValues(c context.Context, req *proto.ListSettingsValuesRequest, res *proto.ListSettingsValuesResponse) error {
r, err := g.manager.ListValues(getFailsafeIdentifier(req.Identifier))
if err != nil {
return err
}
res.SettingsValues = r
return nil
}
func getFailsafeIdentifier(identifier *proto.Identifier) *proto.Identifier {
if identifier == nil {
return &proto.Identifier{}
} else {
return identifier
}
}
+4 -3
View File
@@ -20,13 +20,14 @@ type Manager interface {
// BundleManager
type BundleManager interface {
ReadBundle(extension string, bundleKey string) (*proto.SettingsBundle, error)
ReadBundle(identifier *proto.Identifier) (*proto.SettingsBundle, error)
WriteBundle(bundle *proto.SettingsBundle) (*proto.SettingsBundle, error)
ListByExtension(extension string) ([]*proto.SettingsBundle, error)
ListBundles(identifier *proto.Identifier) ([]*proto.SettingsBundle, error)
}
// ValueManager
type ValueManager interface {
ReadValue(accountUuid string, extension string, bundleKey string, settingKey string) (*proto.SettingsValue, error)
ReadValue(identifier *proto.Identifier) (*proto.SettingsValue, error)
WriteValue(value *proto.SettingsValue) (*proto.SettingsValue, error)
ListValues(identifier *proto.Identifier) ([]*proto.SettingsValue, error)
}
+12 -8
View File
@@ -9,8 +9,8 @@ import (
"path"
)
// ListByExtension returns all bundles in the mountPath folder belonging to the given extension
func (s Store) ListByExtension(extension string) ([]*proto.SettingsBundle, error) {
// ListBundles returns all bundles in the mountPath folder belonging to the given extension
func (s Store) ListBundles(identifier *proto.Identifier) ([]*proto.SettingsBundle, error) {
bundlesFolder := s.buildFolderPathBundles()
extensionFolders, err := ioutil.ReadDir(bundlesFolder)
if err != nil {
@@ -18,7 +18,11 @@ func (s Store) ListByExtension(extension string) ([]*proto.SettingsBundle, error
return nil, err
}
s.Logger.Info().Msgf("listing bundles by extension %v", extension)
if len(identifier.Extension) < 1 {
s.Logger.Info().Msg("listing all bundles")
} else {
s.Logger.Info().Msgf("listing bundles by extension %v", identifier.Extension)
}
var records []*proto.SettingsBundle
for _, extensionFolder := range extensionFolders {
extensionPath := path.Join(bundlesFolder, extensionFolder.Name())
@@ -27,7 +31,7 @@ func (s Store) ListByExtension(extension string) ([]*proto.SettingsBundle, error
for _, bundleFile := range bundleFiles {
record := proto.SettingsBundle{}
err = s.parseRecordFromFile(&record, path.Join(extensionPath, bundleFile.Name()))
if err == nil && (len(extension) == 0 || extension == record.Extension) {
if err == nil && (len(identifier.Extension) == 0 || identifier.Extension == record.Identifier.Extension) {
records = append(records, &record)
}
}
@@ -40,13 +44,13 @@ func (s Store) ListByExtension(extension string) ([]*proto.SettingsBundle, error
}
// Read tries to find a bundle by the given extension and key within the mountPath
func (s Store) ReadBundle(extension string, bundleKey string) (*proto.SettingsBundle, error) {
if len(extension) < 1 || len(bundleKey) < 1 {
func (s Store) ReadBundle(identifier *proto.Identifier) (*proto.SettingsBundle, error) {
if len(identifier.Extension) < 1 || len(identifier.BundleKey) < 1 {
s.Logger.Error().Msg("extension and bundleKey cannot be empty")
return nil, gstatus.Error(codes.InvalidArgument, "Missing a required identifier attribute")
}
filePath := s.buildFilePathFromBundleArgs(extension, bundleKey)
filePath := s.buildFilePathFromBundleArgs(identifier.Extension, identifier.BundleKey)
record := proto.SettingsBundle{}
if err := s.parseRecordFromFile(&record, filePath); err != nil {
return nil, err
@@ -58,7 +62,7 @@ func (s Store) ReadBundle(extension string, bundleKey string) (*proto.SettingsBu
// Write writes the given record into a file within the mountPath
func (s Store) WriteBundle(record *proto.SettingsBundle) (*proto.SettingsBundle, error) {
if len(record.Extension) < 1 || len(record.BundleKey) < 1 {
if len(record.Identifier.Extension) < 1 || len(record.Identifier.BundleKey) < 1 {
s.Logger.Error().Msg("extension and bundleKey cannot be empty")
return nil, gstatus.Error(codes.InvalidArgument, "Missing a required identifier attribute")
}
+2 -2
View File
@@ -18,7 +18,7 @@ func (s Store) buildFolderPathBundles() string {
// Builds a unique file name from the given settings bundle
func (s Store) buildFilePathFromBundle(bundle *proto.SettingsBundle) string {
return s.buildFilePathFromBundleArgs(bundle.Extension, bundle.BundleKey)
return s.buildFilePathFromBundleArgs(bundle.Identifier.Extension, bundle.Identifier.BundleKey)
}
// Builds a unique file name from the given params
@@ -37,7 +37,7 @@ func (s Store) buildFolderPathValues() string {
// Builds a unique file name from the given settings value
func (s Store) buildFilePathFromValue(value *proto.SettingsValue) string {
return s.buildFilePathFromValueArgs(value.AccountUuid, value.Extension, value.BundleKey)
return s.buildFilePathFromValueArgs(value.Identifier.AccountUuid, value.Identifier.Extension, value.Identifier.BundleKey)
}
// Builds a unique file name from the given params
+71 -10
View File
@@ -6,31 +6,33 @@ import (
"google.golang.org/grpc/codes"
gstatus "google.golang.org/grpc/status"
"os"
"path"
"path/filepath"
)
// Read tries to find a value by the given identifier attributes within the mountPath
func (s Store) ReadValue(accountUuid string, extension string, bundleKey string, settingKey string) (*proto.SettingsValue, error) {
if len(accountUuid) < 1 || len(extension) < 1 || len(bundleKey) < 1 || len(settingKey) < 1 {
s.Logger.Error().Msg("account, extension, bundle and setting are required")
// Tries to find a value by the given identifier attributes within the mountPath
func (s Store) ReadValue(identifier *proto.Identifier) (*proto.SettingsValue, error) {
if len(identifier.AccountUuid) < 1 || len(identifier.Extension) < 1 || len(identifier.BundleKey) < 1 || len(identifier.SettingKey) < 1 {
s.Logger.Error().Msg("account-uuid, extension, bundle and setting are required")
return nil, gstatus.Errorf(codes.InvalidArgument, "Missing a required identifier attribute")
}
filePath := s.buildFilePathFromValueArgs(accountUuid, extension, bundleKey)
filePath := s.buildFilePathFromValueArgs(identifier.AccountUuid, identifier.Extension, identifier.BundleKey)
values, err := s.readValuesMapFromFile(filePath)
if err != nil {
return nil, err
}
if value := values.Values[settingKey]; value != nil {
if value := values.Values[identifier.SettingKey]; value != nil {
return value, nil
}
// TODO: we want to return sensible defaults here, when the value was not found
return nil, gstatus.Error(codes.NotFound, "SettingsValue not set")
}
// Write writes the given SettingsValue into a file within the mountPath
// Writes the given SettingsValue into a file within the mountPath
func (s Store) WriteValue(value *proto.SettingsValue) (*proto.SettingsValue, error) {
if len(value.AccountUuid) < 1 || len(value.Extension) < 1 || len(value.BundleKey) < 1 || len(value.SettingKey) < 1 {
s.Logger.Error().Msg("account, extension, bundle and setting are required")
if len(value.Identifier.AccountUuid) < 1 || len(value.Identifier.Extension) < 1 || len(value.Identifier.BundleKey) < 1 || len(value.Identifier.SettingKey) < 1 {
s.Logger.Error().Msg("account-uuid, extension, bundle and setting are required")
return nil, gstatus.Errorf(codes.InvalidArgument, "Missing a required identifier attribute")
}
@@ -39,13 +41,72 @@ func (s Store) WriteValue(value *proto.SettingsValue) (*proto.SettingsValue, err
if err != nil {
return nil, err
}
values.Values[value.SettingKey] = value
values.Values[value.Identifier.SettingKey] = value
if err := s.writeRecordToFile(values, filePath); err != nil {
return nil, err
}
return value, nil
}
// Reads all values within the scope of the given identifier
func (s Store) ListValues(identifier *proto.Identifier) ([]*proto.SettingsValue, error) {
if len(identifier.AccountUuid) < 1 {
s.Logger.Error().Msg("account-uuid is required")
return nil, gstatus.Errorf(codes.InvalidArgument, "Missing a required identifier attribute")
}
accountFolderPath := path.Join(s.mountPath, folderNameValues, identifier.AccountUuid)
var values []*proto.SettingsValue
if _, err := os.Stat(accountFolderPath); err != nil {
return values, nil
}
// TODO: might be a good idea to do this non-hierarchical. i.e. allowing all fragments in the identifier being set or not.
// depending on the set values in the identifier arg, collect all SettingValues files for the account
var valueFilePaths []string
if len(identifier.Extension) < 1 {
if err := filepath.Walk(accountFolderPath, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
valueFilePaths = append(valueFilePaths, path)
return nil
}); err != nil {
s.Logger.Err(err).Msgf("error reading %v", accountFolderPath)
return nil, err
}
} else if len(identifier.BundleKey) < 1 {
extensionPath := path.Join(accountFolderPath, identifier.Extension)
if err := filepath.Walk(extensionPath, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
valueFilePaths = append(valueFilePaths, path)
return nil
}); err != nil {
s.Logger.Err(err).Msgf("error reading %v", extensionPath)
return nil, err
}
} else {
bundlePath := path.Join(accountFolderPath, identifier.Extension, identifier.BundleKey+".json")
valueFilePaths = append(valueFilePaths, bundlePath)
}
// parse the SettingValues from the collected files
for _, filePath := range valueFilePaths {
bundleValues, err := s.readValuesMapFromFile(filePath)
if err != nil {
s.Logger.Err(err).Msgf("error reading %v", filePath)
} else {
for _, value := range bundleValues.Values {
values = append(values, value)
}
}
}
return values, nil
}
// Reads SettingsValues as map from the given file or returns an empty map if the file doesn't exist.
func (s Store) readValuesMapFromFile(filePath string) (*proto.SettingsValues, error) {
values := &proto.SettingsValues{}
err := s.parseRecordFromFile(values, filePath)
+188 -90
View File
@@ -29,59 +29,13 @@ export const request = (method, url, body, queryParameters, form, config) => {
==========================================================*/
/**
*
* request: ListSettingsBundles
* url: ListSettingsBundlesURL
* method: ListSettingsBundles_TYPE
* raw_url: ListSettingsBundles_RAW_URL
* @param extension -
*/
export const ListSettingsBundles = function(parameters = {}) {
const domain = parameters.$domain ? parameters.$domain : getDomain()
const config = parameters.$config
let path = '/api/v0/settings/bundles'
let body
let queryParameters = {}
let form = {}
if (parameters['extension'] !== undefined) {
queryParameters['extension'] = parameters['extension']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
});
}
return request('get', domain + path, body, queryParameters, form, config)
}
export const ListSettingsBundles_RAW_URL = function() {
return '/api/v0/settings/bundles'
}
export const ListSettingsBundles_TYPE = function() {
return 'get'
}
export const ListSettingsBundlesURL = function(parameters = {}) {
let queryParameters = {}
const domain = parameters.$domain ? parameters.$domain : getDomain()
let path = '/api/v0/settings/bundles'
if (parameters['extension'] !== undefined) {
queryParameters['extension'] = parameters['extension']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
})
}
let keys = Object.keys(queryParameters)
return domain + path + (keys.length > 0 ? '?' + (keys.map(key => key + '=' + encodeURIComponent(queryParameters[key])).join('&')) : '')
}
/**
*
* request: CreateSettingsBundle
* url: CreateSettingsBundleURL
* method: CreateSettingsBundle_TYPE
* raw_url: CreateSettingsBundle_RAW_URL
* request: SaveSettingsBundle
* url: SaveSettingsBundleURL
* method: SaveSettingsBundle_TYPE
* raw_url: SaveSettingsBundle_RAW_URL
* @param body -
*/
export const CreateSettingsBundle = function(parameters = {}) {
export const SaveSettingsBundle = function(parameters = {}) {
const domain = parameters.$domain ? parameters.$domain : getDomain()
const config = parameters.$config
let path = '/api/v0/settings/bundles'
@@ -101,13 +55,13 @@ export const CreateSettingsBundle = function(parameters = {}) {
}
return request('post', domain + path, body, queryParameters, form, config)
}
export const CreateSettingsBundle_RAW_URL = function() {
export const SaveSettingsBundle_RAW_URL = function() {
return '/api/v0/settings/bundles'
}
export const CreateSettingsBundle_TYPE = function() {
export const SaveSettingsBundle_TYPE = function() {
return 'post'
}
export const CreateSettingsBundleURL = function(parameters = {}) {
export const SaveSettingsBundleURL = function(parameters = {}) {
let queryParameters = {}
const domain = parameters.$domain ? parameters.$domain : getDomain()
let path = '/api/v0/settings/bundles'
@@ -119,29 +73,103 @@ export const CreateSettingsBundleURL = function(parameters = {}) {
let keys = Object.keys(queryParameters)
return domain + path + (keys.length > 0 ? '?' + (keys.map(key => key + '=' + encodeURIComponent(queryParameters[key])).join('&')) : '')
}
/**
*
* request: ListSettingsBundles
* url: ListSettingsBundlesURL
* method: ListSettingsBundles_TYPE
* raw_url: ListSettingsBundles_RAW_URL
* @param identifierExtension -
* @param identifierBundleKey -
* @param identifierSettingKey -
* @param identifierAccountUuid -
*/
export const ListSettingsBundles = function(parameters = {}) {
const domain = parameters.$domain ? parameters.$domain : getDomain()
const config = parameters.$config
let path = '/api/v0/settings/bundles/{identifier.extension}'
let body
let queryParameters = {}
let form = {}
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
if (parameters['identifierExtension'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierExtension'))
}
if (parameters['identifierBundleKey'] !== undefined) {
queryParameters['identifier.bundle_key'] = parameters['identifierBundleKey']
}
if (parameters['identifierSettingKey'] !== undefined) {
queryParameters['identifier.setting_key'] = parameters['identifierSettingKey']
}
if (parameters['identifierAccountUuid'] !== undefined) {
queryParameters['identifier.account_uuid'] = parameters['identifierAccountUuid']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
});
}
return request('get', domain + path, body, queryParameters, form, config)
}
export const ListSettingsBundles_RAW_URL = function() {
return '/api/v0/settings/bundles/{identifier.extension}'
}
export const ListSettingsBundles_TYPE = function() {
return 'get'
}
export const ListSettingsBundlesURL = function(parameters = {}) {
let queryParameters = {}
const domain = parameters.$domain ? parameters.$domain : getDomain()
let path = '/api/v0/settings/bundles/{identifier.extension}'
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
if (parameters['identifierBundleKey'] !== undefined) {
queryParameters['identifier.bundle_key'] = parameters['identifierBundleKey']
}
if (parameters['identifierSettingKey'] !== undefined) {
queryParameters['identifier.setting_key'] = parameters['identifierSettingKey']
}
if (parameters['identifierAccountUuid'] !== undefined) {
queryParameters['identifier.account_uuid'] = parameters['identifierAccountUuid']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
})
}
let keys = Object.keys(queryParameters)
return domain + path + (keys.length > 0 ? '?' + (keys.map(key => key + '=' + encodeURIComponent(queryParameters[key])).join('&')) : '')
}
/**
*
* request: GetSettingsBundle
* url: GetSettingsBundleURL
* method: GetSettingsBundle_TYPE
* raw_url: GetSettingsBundle_RAW_URL
* @param extension -
* @param bundleKey -
* @param identifierExtension -
* @param identifierBundleKey -
* @param identifierSettingKey -
* @param identifierAccountUuid -
*/
export const GetSettingsBundle = function(parameters = {}) {
const domain = parameters.$domain ? parameters.$domain : getDomain()
const config = parameters.$config
let path = '/api/v0/settings/bundles/{extension}/{bundle_key}'
let path = '/api/v0/settings/bundles/{identifier.extension}/{identifier.bundle_key}'
let body
let queryParameters = {}
let form = {}
path = path.replace('{extension}', `${parameters['extension']}`)
if (parameters['extension'] === undefined) {
return Promise.reject(new Error('Missing required parameter: extension'))
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
if (parameters['identifierExtension'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierExtension'))
}
path = path.replace('{bundle_key}', `${parameters['bundleKey']}`)
if (parameters['bundleKey'] === undefined) {
return Promise.reject(new Error('Missing required parameter: bundleKey'))
path = path.replace('{identifier.bundle_key}', `${parameters['identifierBundleKey']}`)
if (parameters['identifierBundleKey'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierBundleKey'))
}
if (parameters['identifierSettingKey'] !== undefined) {
queryParameters['identifier.setting_key'] = parameters['identifierSettingKey']
}
if (parameters['identifierAccountUuid'] !== undefined) {
queryParameters['identifier.account_uuid'] = parameters['identifierAccountUuid']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
@@ -151,7 +179,7 @@ export const GetSettingsBundle = function(parameters = {}) {
return request('get', domain + path, body, queryParameters, form, config)
}
export const GetSettingsBundle_RAW_URL = function() {
return '/api/v0/settings/bundles/{extension}/{bundle_key}'
return '/api/v0/settings/bundles/{identifier.extension}/{identifier.bundle_key}'
}
export const GetSettingsBundle_TYPE = function() {
return 'get'
@@ -159,9 +187,15 @@ export const GetSettingsBundle_TYPE = function() {
export const GetSettingsBundleURL = function(parameters = {}) {
let queryParameters = {}
const domain = parameters.$domain ? parameters.$domain : getDomain()
let path = '/api/v0/settings/bundles/{extension}/{bundle_key}'
path = path.replace('{extension}', `${parameters['extension']}`)
path = path.replace('{bundle_key}', `${parameters['bundleKey']}`)
let path = '/api/v0/settings/bundles/{identifier.extension}/{identifier.bundle_key}'
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
path = path.replace('{identifier.bundle_key}', `${parameters['identifierBundleKey']}`)
if (parameters['identifierSettingKey'] !== undefined) {
queryParameters['identifier.setting_key'] = parameters['identifierSettingKey']
}
if (parameters['identifierAccountUuid'] !== undefined) {
queryParameters['identifier.account_uuid'] = parameters['identifierAccountUuid']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
@@ -216,39 +250,103 @@ export const SaveSettingsValueURL = function(parameters = {}) {
let keys = Object.keys(queryParameters)
return domain + path + (keys.length > 0 ? '?' + (keys.map(key => key + '=' + encodeURIComponent(queryParameters[key])).join('&')) : '')
}
/**
*
* request: ListSettingsValues
* url: ListSettingsValuesURL
* method: ListSettingsValues_TYPE
* raw_url: ListSettingsValues_RAW_URL
* @param identifierAccountUuid -
* @param identifierExtension -
* @param identifierBundleKey -
* @param identifierSettingKey -
*/
export const ListSettingsValues = function(parameters = {}) {
const domain = parameters.$domain ? parameters.$domain : getDomain()
const config = parameters.$config
let path = '/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}'
let body
let queryParameters = {}
let form = {}
path = path.replace('{identifier.account_uuid}', `${parameters['identifierAccountUuid']}`)
if (parameters['identifierAccountUuid'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierAccountUuid'))
}
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
if (parameters['identifierExtension'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierExtension'))
}
path = path.replace('{identifier.bundle_key}', `${parameters['identifierBundleKey']}`)
if (parameters['identifierBundleKey'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierBundleKey'))
}
if (parameters['identifierSettingKey'] !== undefined) {
queryParameters['identifier.setting_key'] = parameters['identifierSettingKey']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
});
}
return request('get', domain + path, body, queryParameters, form, config)
}
export const ListSettingsValues_RAW_URL = function() {
return '/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}'
}
export const ListSettingsValues_TYPE = function() {
return 'get'
}
export const ListSettingsValuesURL = function(parameters = {}) {
let queryParameters = {}
const domain = parameters.$domain ? parameters.$domain : getDomain()
let path = '/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}'
path = path.replace('{identifier.account_uuid}', `${parameters['identifierAccountUuid']}`)
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
path = path.replace('{identifier.bundle_key}', `${parameters['identifierBundleKey']}`)
if (parameters['identifierSettingKey'] !== undefined) {
queryParameters['identifier.setting_key'] = parameters['identifierSettingKey']
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
})
}
let keys = Object.keys(queryParameters)
return domain + path + (keys.length > 0 ? '?' + (keys.map(key => key + '=' + encodeURIComponent(queryParameters[key])).join('&')) : '')
}
/**
*
* request: GetSettingsValue
* url: GetSettingsValueURL
* method: GetSettingsValue_TYPE
* raw_url: GetSettingsValue_RAW_URL
* @param accountUuid -
* @param extension -
* @param bundleKey -
* @param settingKey -
* @param identifierAccountUuid -
* @param identifierExtension -
* @param identifierBundleKey -
* @param identifierSettingKey -
*/
export const GetSettingsValue = function(parameters = {}) {
const domain = parameters.$domain ? parameters.$domain : getDomain()
const config = parameters.$config
let path = '/api/v0/settings/values/{account_uuid}/{extension}/{bundle_key}/{setting_key}'
let path = '/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}/{identifier.setting_key}'
let body
let queryParameters = {}
let form = {}
path = path.replace('{account_uuid}', `${parameters['accountUuid']}`)
if (parameters['accountUuid'] === undefined) {
return Promise.reject(new Error('Missing required parameter: accountUuid'))
path = path.replace('{identifier.account_uuid}', `${parameters['identifierAccountUuid']}`)
if (parameters['identifierAccountUuid'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierAccountUuid'))
}
path = path.replace('{extension}', `${parameters['extension']}`)
if (parameters['extension'] === undefined) {
return Promise.reject(new Error('Missing required parameter: extension'))
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
if (parameters['identifierExtension'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierExtension'))
}
path = path.replace('{bundle_key}', `${parameters['bundleKey']}`)
if (parameters['bundleKey'] === undefined) {
return Promise.reject(new Error('Missing required parameter: bundleKey'))
path = path.replace('{identifier.bundle_key}', `${parameters['identifierBundleKey']}`)
if (parameters['identifierBundleKey'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierBundleKey'))
}
path = path.replace('{setting_key}', `${parameters['settingKey']}`)
if (parameters['settingKey'] === undefined) {
return Promise.reject(new Error('Missing required parameter: settingKey'))
path = path.replace('{identifier.setting_key}', `${parameters['identifierSettingKey']}`)
if (parameters['identifierSettingKey'] === undefined) {
return Promise.reject(new Error('Missing required parameter: identifierSettingKey'))
}
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
@@ -258,7 +356,7 @@ export const GetSettingsValue = function(parameters = {}) {
return request('get', domain + path, body, queryParameters, form, config)
}
export const GetSettingsValue_RAW_URL = function() {
return '/api/v0/settings/values/{account_uuid}/{extension}/{bundle_key}/{setting_key}'
return '/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}/{identifier.setting_key}'
}
export const GetSettingsValue_TYPE = function() {
return 'get'
@@ -266,11 +364,11 @@ export const GetSettingsValue_TYPE = function() {
export const GetSettingsValueURL = function(parameters = {}) {
let queryParameters = {}
const domain = parameters.$domain ? parameters.$domain : getDomain()
let path = '/api/v0/settings/values/{account_uuid}/{extension}/{bundle_key}/{setting_key}'
path = path.replace('{account_uuid}', `${parameters['accountUuid']}`)
path = path.replace('{extension}', `${parameters['extension']}`)
path = path.replace('{bundle_key}', `${parameters['bundleKey']}`)
path = path.replace('{setting_key}', `${parameters['settingKey']}`)
let path = '/api/v0/settings/values/{identifier.account_uuid}/{identifier.extension}/{identifier.bundle_key}/{identifier.setting_key}'
path = path.replace('{identifier.account_uuid}', `${parameters['identifierAccountUuid']}`)
path = path.replace('{identifier.extension}', `${parameters['identifierExtension']}`)
path = path.replace('{identifier.bundle_key}', `${parameters['identifierBundleKey']}`)
path = path.replace('{identifier.setting_key}', `${parameters['identifierSettingKey']}`)
if (parameters.$queryParameters) {
Object.keys(parameters.$queryParameters).forEach(function(parameterName) {
queryParameters[parameterName] = parameters.$queryParameters[parameterName]
+1 -1
View File
@@ -18,7 +18,7 @@
</template>
<settings-bundle
v-for="bundle in selectedSettingsBundles"
:key="'bundle-' + bundle.key"
:key="'bundle-' + bundle.identifier.bundleKey"
:bundle="bundle"
class="uk-margin-top"
/>
+1 -1
View File
@@ -35,7 +35,7 @@ export default {
},
methods: {
getElementId(bundle, setting) {
return `setting-${bundle.key}-${setting.key}`
return `setting-${bundle.identifier.bundleKey}-${setting.settingKey}`
},
getSettingComponent(setting) {
return 'Setting' + setting.type[0].toUpperCase() + setting.type.substr(1)
@@ -60,15 +60,15 @@ export default {
return Array.from(this.selectedOptions).map(option => option.displayValue).join(', ')
},
dropElementId() {
return `multi-choice-drop-${this.bundle.key}-${this.setting.key}`
return `multi-choice-drop-${this.bundle.identifier.bundleKey}-${this.setting.settingKey}`
},
buttonElementId() {
return `multi-choice-toggle-${this.bundle.key}-${this.setting.key}`
return `multi-choice-toggle-${this.bundle.identifier.bundleKey}-${this.setting.settingKey}`
},
},
methods: {
getOptionElementId(index) {
return `${this.bundle.key}-${this.setting.key}-${index}`
return `${this.bundle.identifier.bundleKey}-${this.setting.settingKey}-${index}`
},
onSelectedOption() {
// TODO: propagate selection to parent
@@ -58,15 +58,15 @@ export default {
},
computed: {
dropElementId() {
return `single-choice-drop-${this.bundle.key}-${this.setting.key}`
return `single-choice-drop-${this.bundle.identifier.bundleKey}-${this.setting.settingKey}`
},
buttonElementId() {
return `single-choice-toggle-${this.bundle.key}-${this.setting.key}`
return `single-choice-toggle-${this.bundle.identifier.bundleKey}-${this.setting.settingKey}`
},
},
methods: {
getOptionElementId(index) {
return `${this.bundle.key}-${this.setting.key}-${index}`
return `${this.bundle.identifier.bundleKey}-${this.setting.settingKey}-${index}`
},
onSelectedOption() {
// TODO: propagate selection to parent
+23 -6
View File
@@ -1,4 +1,4 @@
import { ListSettingsBundles } from '../client/settings'
import { ListSettingsBundles, ListSettingsValues } from '../client/settings'
const state = {
config: null,
@@ -11,11 +11,11 @@ const getters = {
initialized: state => state.initialized,
settingsBundles: state => state.settingsBundles,
extensions: state => {
return [...new Set(Array.from(state.settingsBundles).map(bundle => bundle.extension))].sort()
return [...new Set(Array.from(state.settingsBundles).map(bundle => bundle.identifier.extension))].sort()
},
getSettingsBundlesByExtension: state => extension => {
return state.settingsBundles.filter(bundle => bundle.extension === extension).sort((b1,b2) => {
return b1.key.localeCompare(b2.key)
return state.settingsBundles.filter(bundle => bundle.identifier.extension === extension).sort((b1,b2) => {
return b1.identifier.bundleKey.localeCompare(b2.identifier.bundleKey)
})
}
}
@@ -38,14 +38,19 @@ const actions = {
},
async initialize({ commit, dispatch }) {
await dispatch('fetchSettingsBundles')
await Promise.all([
dispatch('fetchSettingsBundles'),
// dispatch('fetchSettingsValues')
])
commit('SET_INITIALIZED', true)
},
async fetchSettingsBundles ({ commit, dispatch, getters }) {
const response = await ListSettingsBundles({
$domain: getters.config.url
$domain: getters.config.url,
identifierExtension: "ocis-accounts"
})
console.log(response)
if (response.status === 200) {
// the settings markup has implicit typing. inject an explicit type variable here
const settingsBundles = response.data.settingsBundles
@@ -78,6 +83,18 @@ const actions = {
status: 'danger'
}, { root: true })
}
},
async fetchSettingsValues ({ commit, dispatch, getters }) {
const response = await ListSettingsValues({
$domain: getters.config.url,
identifierAccountUuid: "5681371F-4A6E-43BC-8BB5-9C9237FA9C58",
identifierExtension: "ocis-accounts",
identifierBundleKey: "notifications"
})
console.log(response)
if (response.status === 200) {
}
}
}