func CreateFacade() *ServiceFacade { lock.Lock() defer lock.Unlock() if facade == nil { facade = NewFacade(db.GetDatabase()) } return facade }
func LoadPQueue(desc *common.ServiceDescription) (iface.ISvc, error) { config := &PQConfig{} database := db.GetDatabase() err := database.LoadServiceConfig(config, common.MakeServiceId(desc)) if err != nil { return nil, err } pq := initPQueue(desc, config) return pq, nil }
func initPQueue(desc *common.ServiceDescription, config *PQConfig) *PQueue { pq := PQueue{ desc: desc, config: config, msgMap: make(map[string]*PQMessage), availMsgs: structs.NewActiveQueues(config.MaxPriority), expireHeap: structs.NewIndexHeap(), inFlightHeap: structs.NewIndexHeap(), database: db.GetDatabase(), newMsgNotification: make(chan bool), msgSerialNumber: 0, serviceId: common.MakeServiceId(desc), } pq.loadAllMessages() return &pq }
func CreateTestQueue() *PQueue { ldb := db.GetDatabase() ldb.FlushCache() desc := common.NewServiceDescription(common.STYPE_PRIORITY_QUEUE, 54634673456, "name") return NewPQueue(desc, 100, 1000) }