github.com/Cloud-Foundations/Dominator@v0.3.4/lib/filegen/manager.go (about) 1 package filegen 2 3 import ( 4 "github.com/Cloud-Foundations/Dominator/lib/log" 5 "github.com/Cloud-Foundations/Dominator/lib/mdb" 6 "github.com/Cloud-Foundations/Dominator/lib/objectserver/memory" 7 "github.com/Cloud-Foundations/Dominator/lib/srpc" 8 proto "github.com/Cloud-Foundations/Dominator/proto/filegenerator" 9 ) 10 11 type rpcType struct { 12 manager *Manager 13 } 14 15 func newManager(logger log.Logger) *Manager { 16 m := new(Manager) 17 m.pathManagers = make(map[string]*pathManager) 18 m.machineData = make(map[string]mdb.Machine) 19 m.clients = make( 20 map[<-chan *proto.ServerMessage]chan<- *proto.ServerMessage) 21 m.objectServer = memory.NewObjectServer() 22 m.logger = logger 23 m.registerMdbGeneratorForPath("/etc/mdb.json") 24 srpc.RegisterName("FileGenerator", &rpcType{m}) 25 return m 26 }