Example #1
0
 static function get()
 {
     if (empty(self::$qm)) {
         if (Event::handle('StartNewQueueManager', array(&self::$qm))) {
             $enabled = common_config('queue', 'enabled');
             $type = common_config('queue', 'subsystem');
             if (!$enabled) {
                 // does everything immediately
                 self::$qm = new UnQueueManager();
             } else {
                 switch ($type) {
                     case 'db':
                         self::$qm = new DBQueueManager();
                         break;
                     case 'stomp':
                         self::$qm = new StompQueueManager();
                         break;
                     default:
                         throw new ServerException("No queue manager class for type '{$type}'");
                 }
             }
         }
     }
     return self::$qm;
 }