From 55cf7552924fc4514da2663216676cdd4510fb0c Mon Sep 17 00:00:00 2001 From: Tit Petric Date: Thu, 5 Jul 2018 11:59:25 +0200 Subject: [PATCH] add changelog property and persist errors import across files --- sam/channel.go | 8 +++++++- sam/message.go | 2 ++ sam/organisation.go | 3 +++ sam/team.go | 7 +++++-- sam/team.structs.go | 10 ++-------- sam/user.go | 2 ++ sam/websocket.go | 2 ++ sam/websocket.structs.go | 5 +---- 8 files changed, 24 insertions(+), 15 deletions(-) diff --git a/sam/channel.go b/sam/channel.go index a7fb02673..0bdb7f5c5 100644 --- a/sam/channel.go +++ b/sam/channel.go @@ -1,11 +1,14 @@ package sam import ( - "github.com/pkg/errors" + "fmt" + "github.com/pkg/errors" "github.com/titpetric/factory" ) +var _ = errors.Wrap + func (*Channel) Edit(r *channelEditRequest) (interface{}, error) { db, err := factory.Database.Get() if err != nil { @@ -19,6 +22,9 @@ func (*Channel) Edit(r *channelEditRequest) (interface{}, error) { c := Channel{}.new().SetID(r.id).SetName(r.name).SetTopic(r.topic) if c.GetID() > 0 { + if is("topic", c.changed...) { + fmt.Println("Topic for channel was changed:", c.GetTopic()) + } return c, db.Replace("channel", c) } c.SetID(factory.Sonyflake.NextID()) diff --git a/sam/message.go b/sam/message.go index b62c6239c..642169f1b 100644 --- a/sam/message.go +++ b/sam/message.go @@ -4,6 +4,8 @@ import ( "github.com/pkg/errors" ) +var _ = errors.Wrap + func (*Message) Edit(r *messageEditRequest) (interface{}, error) { return nil, errors.New("Not implemented: Message.edit") } diff --git a/sam/organisation.go b/sam/organisation.go index ef90370a1..11f78bb2f 100644 --- a/sam/organisation.go +++ b/sam/organisation.go @@ -2,8 +2,11 @@ package sam import ( "github.com/pkg/errors" + "github.com/titpetric/factory" ) +var _ = errors.Wrap + func (*Organisation) Edit(r *organisationEditRequest) (interface{}, error) { db, err := factory.Database.Get() if err != nil { diff --git a/sam/team.go b/sam/team.go index 1b715d24b..2e14a5649 100644 --- a/sam/team.go +++ b/sam/team.go @@ -2,8 +2,11 @@ package sam import ( "github.com/pkg/errors" + "github.com/titpetric/factory" ) +var _ = errors.Wrap + func (*Team) Edit(r *teamEditRequest) (interface{}, error) { db, err := factory.Database.Get() if err != nil { @@ -15,8 +18,8 @@ func (*Team) Edit(r *teamEditRequest) (interface{}, error) { if t.GetID() > 0 { return t, db.Replace("team", t) } - c.SetID(factory.Sonyflake.NextID()) - return c, db.Insert("team", t) + t.SetID(factory.Sonyflake.NextID()) + return t, db.Insert("team", t) } func (*Team) Remove(r *teamRemoveRequest) (interface{}, error) { diff --git a/sam/team.structs.go b/sam/team.structs.go index a72dd2b24..2b24e1a78 100644 --- a/sam/team.structs.go +++ b/sam/team.structs.go @@ -41,10 +41,7 @@ func (t *Team) GetMemberIDs() []uint64 { } func (t *Team) SetMemberIDs(value []uint64) *Team { - if t.MemberIDs != value { - t.changed = append(t.changed, "memberids") - t.MemberIDs = value - } + t.MemberIDs = value return t } func (t *Team) GetMembers() []User { @@ -52,9 +49,6 @@ func (t *Team) GetMembers() []User { } func (t *Team) SetMembers(value []User) *Team { - if t.Members != value { - t.changed = append(t.changed, "members") - t.Members = value - } + t.Members = value return t } diff --git a/sam/user.go b/sam/user.go index 6350499d3..a00435d97 100644 --- a/sam/user.go +++ b/sam/user.go @@ -4,6 +4,8 @@ import ( "github.com/pkg/errors" ) +var _ = errors.Wrap + func (*User) Login(r *userLoginRequest) (interface{}, error) { return nil, errors.New("Not implemented: User.login") } diff --git a/sam/websocket.go b/sam/websocket.go index 7e7e11fe8..6ba4b6736 100644 --- a/sam/websocket.go +++ b/sam/websocket.go @@ -4,6 +4,8 @@ import ( "github.com/pkg/errors" ) +var _ = errors.Wrap + func (*Websocket) Client(r *websocketClientRequest) (interface{}, error) { return nil, errors.New("Not implemented: Websocket.client") } diff --git a/sam/websocket.structs.go b/sam/websocket.structs.go index c620c3237..aaa2144a2 100644 --- a/sam/websocket.structs.go +++ b/sam/websocket.structs.go @@ -28,9 +28,6 @@ func (w *Websocket) GetUser() User { } func (w *Websocket) SetUser(value User) *Websocket { - if w.User != value { - w.changed = append(w.changed, "user") - w.User = value - } + w.User = value return w }