package event //package event // //import ( // "fmt" // "sync" //) // //var ( // PrintObject *PrintObjectStruct // 缓存的打印机对象 // PrintAddrAndIp *PrintAddrAndIpStruct // 缓存打印机地址:[ip:printNo] event 文件包,connect只能获取到addr // PrintIpAndAddr *PrintIpAndAddrStruct // 缓存打印机地址:[printNo:ip] api_controller 只能获取到printNo //) // //func init() { // fmt.Println("初始化打印机对象") // PrintObject = &PrintObjectStruct{ // PrintObject: make(map[string]*TcpClient), // RWMutex: new(sync.RWMutex), // } // PrintAddrAndIp = &PrintAddrAndIpStruct{ // PrintObject: make(map[string]string), // RWMutex: new(sync.RWMutex), // } // PrintIpAndAddr = &PrintIpAndAddrStruct{ // PrintObject: make(map[string]string), // RWMutex: new(sync.RWMutex), // } //} // //type PrintObjectStruct struct { // PrintObject map[string]*TcpClient // *sync.RWMutex //} // //func (p *PrintObjectStruct) GetPrintObj(printNo string) (*TcpClient, bool) { // p.RLock() // defer p.RUnlock() // tcpObj, ok := PrintObject.PrintObject[printNo] // return tcpObj, ok //} //func (p *PrintObjectStruct) SetPrintObj(printNo string, tcpObj *TcpClient) { // p.RLock() // defer p.RUnlock() // PrintObject.PrintObject[printNo] = tcpObj //} // //func (p *PrintObjectStruct) DelPrintObj(printNo string) { // p.RLock() // defer p.RUnlock() // delete(PrintObject.PrintObject, printNo) //} // //type PrintAddrAndIpStruct struct { // PrintObject map[string]string // *sync.RWMutex //} // //func (p *PrintAddrAndIpStruct) GetPrintAddrAndIp(ip string) (string, bool) { // p.RLock() // defer p.RUnlock() // printNo, ok := PrintAddrAndIp.PrintObject[ip] // return printNo, ok //} //func (p *PrintAddrAndIpStruct) SetPrintAddrAndIp(ip string, printNo string) { // p.RLock() // defer p.RUnlock() // PrintAddrAndIp.PrintObject[ip] = printNo //} // //func (p *PrintAddrAndIpStruct) DelPrintAddrAndIp(ip string) { // p.RLock() // defer p.RUnlock() // delete(PrintAddrAndIp.PrintObject, ip) //} // //type PrintIpAndAddrStruct struct { // PrintObject map[string]string // *sync.RWMutex //} // //func (p *PrintIpAndAddrStruct) GetPrintIpAndAddr(printNo string) (string, bool) { // p.RLock() // defer p.RUnlock() // tcpObj, ok := PrintIpAndAddr.PrintObject[printNo] // return tcpObj, ok //} //func (p *PrintIpAndAddrStruct) SetPrintIpAndAddr(printNo string, ip string) { // p.RLock() // defer p.RUnlock() // PrintIpAndAddr.PrintObject[printNo] = ip //} // //func (p *PrintIpAndAddrStruct) DelPrintIpAndAddr(printNo string) { // p.RLock() // defer p.RUnlock() // delete(PrintIpAndAddr.PrintObject, printNo) //}