Ocean/ICCC/Init.go
2015-07-10 14:36:47 +02:00

31 lines
995 B
Go

package ICCC
import (
"container/list"
"github.com/SommerEngineering/Ocean/Log"
LM "github.com/SommerEngineering/Ocean/Log/Meta"
"github.com/SommerEngineering/Ocean/Tools"
)
// Init this package.
func init() {
Log.LogShort(senderName, LM.CategorySYSTEM, LM.LevelINFO, LM.MessageNameINIT, `Start init of ICCC.`)
defer Log.LogShort(senderName, LM.CategorySYSTEM, LM.LevelINFO, LM.MessageNameINIT, `Done init ICCC.`)
// Create the list as cache for all global listener and hosts (not only listener from this server):
cacheListenerDatabase = list.New()
cacheHostDatabase = list.New()
// Create a mapping as cache for all local listener end-points (functions):
listeners = make(map[string]func(data map[string][]string) map[string][]string)
// Using the local IP address:
correctAddressWithPort = Tools.LocalIPAddressAndPort()
// Init the database:
initDB()
// Register this server to the listener (if not present):
registerThisHost2Database()
}