package resource import ( "github.com/cortezaproject/corteza/server/system/types" ) type ( Settings struct { *base Res types.SettingValueSet } Setting struct { *base Res types.SettingValue } ) func NewSettings(vv map[string]interface{}) *Settings { r := &Settings{base: &base{}} r.SetResourceType(SettingsResourceType) r.Res = make(types.SettingValueSet, 0, len(vv)) for k, v := range vv { sv := &types.SettingValue{ Name: k, } sv.SetSetting(v) r.Res = append(r.Res, sv) } return r } func NewSetting(s *types.SettingValue) *Setting { r := &Setting{base: &base{}} r.SetResourceType(SettingsResourceType) r.Res = *s r.AddIdentifier(identifiers(s.Name)...) // Set initial stamps r.SetTimestamps(MakeTimestampsCUDA(nil, &s.UpdatedAt, nil, nil)) r.SetUserstamps(&Userstamps{ UpdatedBy: &Userstamp{UserID: s.UpdatedBy}, }) return r } func (r *Setting) Resource() interface{} { return r.Res } func (r *Settings) Resource() interface{} { return r.Res }