/** Locate a suitable factory for this query and dataset * * @param query Query * @param dataset Dataset * @return A QueryExecutionFactory or null if none accept the request */ public QueryEngineFactory find(Query query, DatasetGraph dataset) { return find(query, dataset, null) ; }
/** Locate a suitable factory for this algebra expression * and dataset from the default registry * * @param op Algebra expression * @param dataset DatasetGraph * @param context * @return A QueryExecutionFactory or null if none accept the request */ public static QueryEngineFactory findFactory(Op op, DatasetGraph dataset, Context context) { return get().find(op, dataset, context) ; }
/** Locate a suitable factory for this query and dataset from the default registry * * @param query Query * @param dataset Dataset * @return A QueryExecutionFactory or null if none accept the request */ public static QueryEngineFactory findFactory(Query query, DatasetGraph dataset, Context context) { return get().find(query, dataset, context) ; }
static private QueryEngineFactory findFactory(Query query, DatasetGraph dataset, Context context) { return QueryEngineRegistry.get().find(query, dataset, context) ; }
@Override public QueryExecution createQueryExecution(Query query) { // Copied from internals of jena's QueryExecutionFactory.create(query, dataset); query.setResultVars() ; if ( context == null ) context = ARQ.getContext(); // .copy done in QueryExecutionBase -> Context.setupContext. DatasetGraph dsg = null ; if ( dataset != null ) dsg = dataset.asDatasetGraph() ; QueryEngineFactory f = QueryEngineRegistry.get().find(query, dsg, context); if ( f == null ) { Log.warn(QueryExecutionFactory.class, "Failed to find a QueryEngineFactory for query: "+query) ; return null ; } //dataset.begin(ReadWrite.WRITE); return new QueryExecutionBase(query, dataset, context, f) ; }