private static void runQueryOnClass(List <ConstraintViolation> results, SparqlParameterizedString arq, IQuery spinQuery, String label, SpinWrapperDataset model, IResource cls, Dictionary <String, IResource> initialBindings, bool thisUnbound, bool thisDeep, INode source, List <SPINStatistics> stats, IProgressMonitor monitor) { SpinProcessor spinModel = cls.getModel(); // let the underlying engine handle this. if (true || thisUnbound || SPINUtil.isRootClass(Resource.Get(cls, spinModel)) /*|| model.contains(null, RDF.type, cls)*/) { QuerySolutionMap arqBindings = new QuerySolutionMap(); if (!thisUnbound) { arqBindings.Add(SPINUtil.TYPE_CLASS_VAR_NAME, cls); } if (initialBindings != null) { foreach (String varName in initialBindings.Keys) { INode value = initialBindings[varName]; arqBindings.Add(varName, value); } } if (monitor != null) { monitor.subTask("Checking SPIN constraint on " + SPINLabels.getLabel(cls) + (label != null ? ": " + label : "")); } DateTime startTime = DateTime.Now; if (thisDeep && !thisUnbound) { arq.CommandText = SPINUtil.addThisTypeClause(arq.CommandText); arqBindings[SPINUtil.TYPE_CLASS_VAR_NAME] = cls; } //TODO replace this with the real query rewriting IGraph cm = model.MonitorConstruct(arq, spinQuery, arqBindings); model.DeleteGraphInternal(cm.BaseUri.ToString()); DateTime endTime = DateTime.Now; if (stats != null) { TimeSpan duration = endTime - startTime; String queryText = SPINLabels.getLabel(spinQuery); if (label == null) { label = queryText; } stats.Add(new SPINStatistics(label, queryText, duration, startTime, cls)); } model.UpdateGraph(model._transactionUri.ToString(), cm.Triples, null); addConstructedProblemReports(cm, results, model, cls, null, label, source); } }
public virtual void subTask(string name) { monitor.subTask(name); }
public void subTask(String name) { monitor.subTask(name); }