示例#1
0
/**
 * @param string|null $id
 * @param string|null $viewId
 * @param string $storeName
 * @param \Tripod\ITripodStat|null $stat
 * @param string $queue
 */
function generateViews($id, $viewId, $storeName, $stat, $queue)
{
    $viewSpec = \Tripod\Mongo\Config::getInstance()->getViewSpecification($storeName, $viewId);
    if (array_key_exists("from", $viewSpec)) {
        \Tripod\Mongo\Config::getInstance()->setMongoCursorTimeout(-1);
        print "Generating {$viewId}";
        $tripod = new \Tripod\Mongo\Driver($viewSpec['from'], $storeName, array('stat' => $stat));
        $views = $tripod->getTripodViews();
        if ($id) {
            print " for {$id}....\n";
            $views->generateView($viewId, $id, null, $queue);
        } else {
            print " for all views....\n";
            $views->generateView($viewId, null, null, $queue);
        }
    }
}