diff options
author | Hubert Hirtz <hubert@hirtzfr.eu> | 2020-08-16 16:10:01 +0200 |
---|---|---|
committer | Hubert Hirtz <hubert@hirtzfr.eu> | 2020-08-16 16:10:01 +0200 |
commit | cb1f094bbfdcebf12b57c416266b76058dc2b7a5 (patch) | |
tree | ed7a55f882b60414aed61c2742d372387cf66243 /irc/states.go | |
parent | irc: go syntax i guess (diff) |
irc: Delete ConnectionState and use a bool instead
Diffstat (limited to 'irc/states.go')
-rw-r--r-- | irc/states.go | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/irc/states.go b/irc/states.go index 68c18bd..1405c48 100644 --- a/irc/states.go +++ b/irc/states.go @@ -67,14 +67,6 @@ const ( TypingDone ) -type ConnectionState int - -const ( - ConnStart ConnectionState = iota - ConnRegistered - ConnQuit -) - type action interface{} type ( @@ -140,7 +132,7 @@ type Session struct { debug bool running atomic.Value // bool - state ConnectionState + registered bool typingStamps map[string]time.Time nick string @@ -357,10 +349,10 @@ func (s *Session) run() { err = s.requestHistory(act) } case msg := <-s.msgs: - if s.state == ConnStart { - err = s.handleStart(msg) - } else if s.state == ConnRegistered { + if s.registered { err = s.handle(msg) + } else { + err = s.handleStart(msg) } } @@ -485,7 +477,7 @@ func (s *Session) handle(msg Message) (err error) { case rplWelcome: s.nick = msg.Params[0] s.nickCf = strings.ToLower(s.nick) - s.state = ConnRegistered + s.registered = true s.evts <- RegisteredEvent{} if s.host == "" { @@ -771,7 +763,7 @@ func (s *Session) handle(msg Message) (err error) { if len(msg.Params) > 0 { err = fmt.Errorf("connection terminated: %s", msg.Params[0]) } - s.state = ConnQuit + _ = s.conn.Close() default: } |