Add ability to silence callback handler

This commit is contained in:
Michael Jard 2011-05-21 21:06:22 -07:00
parent 9d322aca1a
commit 78a4c71736
3 changed files with 8 additions and 2 deletions

1
irc.go
View File

@ -200,6 +200,7 @@ func IRC(nick, user string) *IRCConnection {
irc.Error = make(chan os.Error)
irc.nick = nick
irc.user = user
irc.VerboseCallbackHandler = true
irc.setupCallbacks()
return irc
}

View File

@ -49,11 +49,14 @@ func (irc *IRCConnection) RunCallbacks(event *IRCEvent) {
}
}
if callbacks, ok := irc.events[event.Code]; ok {
if irc.VerboseCallbackHandler {
fmt.Printf("%v (%v) >> %#v\n", event.Code, len(callbacks), event)
}
for _, callback := range callbacks {
go callback(event)
}
} else {
fmt.Printf("No callback for: %#v\n", event)
} else if irc.VerboseCallbackHandler {
fmt.Printf("%v (0) >> %#v\n", event.Code, event)
}
}

View File

@ -26,6 +26,8 @@ type IRCConnection struct {
ticker <-chan int64
ticker2 <-chan int64
VerboseCallbackHandler bool
quitting bool
}