From 4bca1f0294e1fe0b0c7453d5bc9230e91ac3b5bf Mon Sep 17 00:00:00 2001 From: Andrey Petrov Date: Thu, 1 Sep 2016 16:22:21 -0400 Subject: [PATCH] refactor: Identifier.SetID -> Identifier.SetName Identifier.ID() is now read-only and derived from name. --- .gitignore | 1 + chat/command.go | 4 ++-- chat/member.go | 2 +- chat/message/identity.go | 12 ++++++------ chat/message/user.go | 4 ++-- identity.go | 6 +----- 6 files changed, 13 insertions(+), 16 deletions(-) diff --git a/.gitignore b/.gitignore index 593c721..10fc9fc 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ /build +/vendor host_key host_key.pub ssh-chat diff --git a/chat/command.go b/chat/command.go index 76e01a7..1d8e6fb 100644 --- a/chat/command.go +++ b/chat/command.go @@ -156,10 +156,10 @@ func InitCommands(c *Commands) { } oldID := member.ID() - member.SetID(SanitizeName(args[0])) + member.SetName(args[0]) err := room.Rename(oldID, member) if err != nil { - member.SetID(oldID) + member.SetName(oldID) return err } return nil diff --git a/chat/member.go b/chat/member.go index cc37941..f0d3b1c 100644 --- a/chat/member.go +++ b/chat/member.go @@ -13,9 +13,9 @@ type roomMember struct { type Member interface { ID() string - SetID(string) Name() string + SetName(string) Config() message.UserConfig SetConfig(message.UserConfig) diff --git a/chat/message/identity.go b/chat/message/identity.go index 8edef77..5b3b18c 100644 --- a/chat/message/identity.go +++ b/chat/message/identity.go @@ -3,8 +3,8 @@ package message // Identifier is an interface that can uniquely identify itself. type Identifier interface { ID() string - SetID(string) Name() string + SetName(string) } // SimpleID is a simple Identifier implementation used for testing. @@ -15,12 +15,12 @@ func (i SimpleID) ID() string { return string(i) } -// SetID is a no-op -func (i SimpleID) SetID(s string) { - // no-op -} - // Name returns the ID func (i SimpleID) Name() string { return i.ID() } + +// SetName is a no-op +func (i SimpleID) SetName(s string) { + // no-op +} diff --git a/chat/message/user.go b/chat/message/user.go index dba68cf..b56d68b 100644 --- a/chat/message/user.go +++ b/chat/message/user.go @@ -65,8 +65,8 @@ func (u *User) SetConfig(cfg UserConfig) { } // Rename the user with a new Identifier. -func (u *User) SetID(id string) { - u.Identifier.SetID(id) +func (u *User) SetName(name string) { + u.Identifier.SetName(name) u.setColorIdx(rand.Int()) } diff --git a/identity.go b/identity.go index 50cee7e..6f38aa8 100644 --- a/identity.go +++ b/identity.go @@ -30,12 +30,8 @@ func (i Identity) ID() string { return i.id } -func (i *Identity) SetID(id string) { - i.id = id -} - func (i *Identity) SetName(name string) { - i.SetID(name) + i.id = chat.SanitizeName(name) } func (i Identity) Name() string {