From: <sk...@us...> - 2008-06-17 17:04:01
|
Revision: 966 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=966&view=rev Author: sknappe Date: 2008-06-17 10:03:58 -0700 (Tue, 17 Jun 2008) Log Message: ----------- Changed the classes to work without SparqlQueryThreaded Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java trunk/src/dl-learner/org/dllearner/kb/sparql/SPARQLTasks.java trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java Modified: trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java =================================================================== --- trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java 2008-06-17 16:33:03 UTC (rev 965) +++ trunk/src/dl-learner/org/dllearner/kb/sparql/Cache.java 2008-06-17 17:03:58 UTC (rev 966) @@ -34,6 +34,8 @@ import org.dllearner.core.KnowledgeSource; import org.dllearner.utilities.JamonMonitorLogger; +import com.hp.hpl.jena.query.ResultSet; + /** * SPARQL query cache to avoid possibly expensive multiple queries. The queries * and their results are written to files. A cache has an associated cache @@ -249,15 +251,17 @@ JamonMonitorLogger.getTimeMonitor(Cache.class, "ReadTime").stop(); if (result != null) { + query.setJson(result); + query.setRunning(false); logger.trace("got from cache"); JamonMonitorLogger.increaseCount(Cache.class, "SuccessfulHits"); //Statistics.increaseCachedQuery(); //return result; } else { //SimpleClock sc = new SimpleClock(); - query.send(); //sc.printAndSet("query"); - String json = query.getResult(); + ResultSet rs= query.send(); + String json = SparqlQuery.getAsJSON(rs); if (json!=null){ addToCache(query.getQueryString(), json); result=json; Modified: trunk/src/dl-learner/org/dllearner/kb/sparql/SPARQLTasks.java =================================================================== --- trunk/src/dl-learner/org/dllearner/kb/sparql/SPARQLTasks.java 2008-06-17 16:33:03 UTC (rev 965) +++ trunk/src/dl-learner/org/dllearner/kb/sparql/SPARQLTasks.java 2008-06-17 17:03:58 UTC (rev 966) @@ -354,8 +354,8 @@ if(c==null){ SparqlQuery sq = new SparqlQuery(SPARQLquery,se); // sq.extraDebugInfo+=se.getURL(); - sq.send(); - String JSON = sq.getResult(); + ResultSet rs=sq.send(); + String JSON = SparqlQuery.getAsJSON(rs); return JSON; }else{ return c.executeSparqlQuery(new SparqlQuery(SPARQLquery,se)); Modified: trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java =================================================================== --- trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java 2008-06-17 16:33:03 UTC (rev 965) +++ trunk/src/dl-learner/org/dllearner/kb/sparql/SparqlQuery.java 2008-06-17 17:03:58 UTC (rev 966) @@ -49,7 +49,8 @@ private String queryString; private QueryEngineHTTP queryExecution; private SparqlEndpoint endpoint; - private String json = null; + private ResultSet rs; + private String json; // private SparqlQueryException sendException=null; /** @@ -69,9 +70,8 @@ public ResultSet send() { isRunning = true; - ResultSet rs=null; logger.trace(queryString); - + String service = endpoint.getURL().toString(); logger.trace(endpoint.getURL().toString()); // Jena access to SPARQL endpoint @@ -91,8 +91,7 @@ JamonMonitorLogger.getTimeMonitor(SparqlQuery.class, "httpTime").stop(); logger.debug("query SPARQL server, retrieved: "+rs.getResultVars()); - json=SparqlQuery.getAsJSON(rs); - + logger.trace(rs.getResultVars().toString()); // } catch (Exception e){ // sendException=new SparqlQueryException(e.getMessage()); @@ -114,13 +113,6 @@ return queryString; } - /** - * @return String JSON - */ - public String getResult() { - return json; - } - public boolean isRunning() { return isRunning; } @@ -133,10 +125,6 @@ // return sendException; // } - public boolean hasCompleted() { - return (json != null); - } - /** * sends a query and returns XML * @@ -184,4 +172,19 @@ return ResultSetFactory.fromJSON(bais); } + public String getJson() { + return json; + } + + public void setJson(String json) { + this.json = json; + } + + public void setRunning(boolean running){ + this.isRunning=running; + } + + public ResultSet getResultSet(){ + return rs; + } } Modified: trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java =================================================================== --- trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java 2008-06-17 16:33:03 UTC (rev 965) +++ trunk/src/dl-learner/org/dllearner/server/DLLearnerWS.java 2008-06-17 17:03:58 UTC (rev 966) @@ -521,15 +521,22 @@ public String getAsJSON(int sessionID, int queryID) throws ClientNotKnownException, SparqlQueryException { ClientState state = getState(sessionID); - return state.getQuery(queryID).getResult(); + ResultSet resultSet=null; + String json=null; + if ((json=state.getQuery(queryID).getJson())!=null) return json; + else if ((resultSet=state.getQuery(queryID).getResultSet())!=null) return SparqlQuery.getAsJSON(resultSet); + else return SparqlQuery.getAsJSON(state.getQuery(queryID).send()); } @WebMethod public String getAsXMLString(int sessionID, int queryID) throws ClientNotKnownException { ClientState state = getState(sessionID); - ResultSet resultSet=SparqlQuery.JSONtoResultSet(state.getQuery(queryID).getResult()); - return SparqlQuery.getAsXMLString(resultSet); + ResultSet resultSet=null; + String json=null; + if ((resultSet=state.getQuery(queryID).getResultSet())!=null) return SparqlQuery.getAsXMLString(resultSet); + else if ((json=state.getQuery(queryID).getJson())!=null) return SparqlQuery.getAsXMLString(SparqlQuery.JSONtoResultSet(json)); + else return SparqlQuery.getAsXMLString(state.getQuery(queryID).send()); } @WebMethod @@ -543,6 +550,7 @@ @Override public void run() { if (ks.getUseCache()){ + state.getQuery(id).setRunning(true); Cache cache=new Cache(ks.getCacheDir()); cache.executeSparqlQuery(state.getQuery(id)); } @@ -562,10 +570,9 @@ SparqlQuery sparql=ks.sparqlQuery(query); if (ks.getUseCache()){ Cache cache=new Cache(ks.getCacheDir()); - cache.executeSparqlQuery(sparql); + return cache.executeSparqlQuery(sparql); } - else sparql.send(); - return sparql.getResult(); + else return SparqlQuery.getAsJSON(sparql.send()); } @WebMethod This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |