Bolt\Provider\QueryServiceProvider::register PHP Method

register() public method

public register ( Silex\Application $app )
$app Silex\Application
    public function register(Application $app)
    {
        $app['query'] = function ($app) {
            $runner = new Query($app['query.parser']);
            return $runner;
        };
        $app['query.parser'] = function ($app) {
            $parser = new ContentQueryParser($app['storage']);
            $parser->addService('select', $app['query.select']);
            $parser->addService('search', $app['query.search']);
            $parser->addService('search_weighter', $app['query.search_weighter']);
            $parser->addService('search_config', $app['query.search_config']);
            return $parser;
        };
        $app['query.parser.handler'] = function ($app) {
            return new QueryParameterParser($app['storage']->createExpressionBuilder());
        };
        $app['query.select'] = function ($app) {
            return new SelectQuery($app['storage']->createQueryBuilder(), $app['query.parser.handler']);
        };
        $app['query.search'] = function ($app) {
            return new SearchQuery($app['storage']->createQueryBuilder(), $app['query.parser.handler'], $app['query.search_config']);
        };
        $app['query.search_config'] = $app->share(function ($app) {
            return new SearchConfig($app['config']);
        });
        $app['query.search_weighter'] = $app->share(function ($app) {
            return new SearchWeighter($app['query.search_config']);
        });
    }
QueryServiceProvider