You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2011/09/09 13:26:27 UTC
svn commit: r1167103 - in /incubator/jena/Jena2/Fuseki/trunk/src:
main/java/org/openjena/fuseki/ main/java/org/openjena/fuseki/mgt/
main/java/org/openjena/fuseki/server/
main/java/org/openjena/fuseki/servlets/ test/java/org/openjena/fuseki/
Author: andy
Date: Fri Sep 9 11:26:26 2011
New Revision: 1167103
URL: http://svn.apache.org/viewvc?rev=1167103&view=rev
Log:
Use DatasetRef, not DatasetGraph, server-wide.
Added:
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRef.java (contents, props changed)
- copied, changed from r1165206, incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/ServiceDesc.java
Modified:
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/FusekiCmd.java
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/mgt/Functions.java
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRegistry.java
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/FusekiConfig.java
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/SPARQLServer.java
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/ServiceDesc.java
incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java
incubator/jena/Jena2/Fuseki/trunk/src/test/java/org/openjena/fuseki/ServerTest.java
Modified: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/FusekiCmd.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/FusekiCmd.java?rev=1167103&r1=1167102&r2=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/FusekiCmd.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/FusekiCmd.java Fri Sep 9 11:26:26 2011
@@ -29,7 +29,7 @@ import org.openjena.atlas.lib.FileOps ;
import org.openjena.atlas.lib.Sink ;
import org.openjena.fuseki.server.FusekiConfig ;
import org.openjena.fuseki.server.SPARQLServer ;
-import org.openjena.fuseki.server.ServiceDesc ;
+import org.openjena.fuseki.server.DatasetRef ;
import org.openjena.riot.Lang ;
import org.openjena.riot.RiotLoader ;
import org.openjena.riot.lang.SinkQuadsToDataset ;
@@ -279,12 +279,12 @@ public class FusekiCmd extends CmdARQ
SPARQLServer server ;
if ( fusekiConfigFile != null )
{
- List<ServiceDesc> services = FusekiConfig.configure(fusekiConfigFile) ;
+ List<DatasetRef> services = FusekiConfig.configure(fusekiConfigFile) ;
server = new SPARQLServer(jettyConfigFile, port, services) ;
}
else
{
- ServiceDesc sDesc = FusekiConfig.defaultConfiguration(datasetPath, dsg, allowUpdate) ;
+ DatasetRef sDesc = FusekiConfig.defaultConfiguration(datasetPath, dsg, allowUpdate) ;
server = new SPARQLServer(jettyConfigFile, port, Arrays.asList(sDesc) ) ;
}
server.start() ;
Modified: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/mgt/Functions.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/mgt/Functions.java?rev=1167103&r1=1167102&r2=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/mgt/Functions.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/mgt/Functions.java Fri Sep 9 11:26:26 2011
@@ -25,6 +25,7 @@ import javax.servlet.http.HttpSession ;
import org.openjena.atlas.io.IndentedLineBuffer ;
import org.openjena.fuseki.server.DatasetRegistry ;
+import org.openjena.fuseki.server.DatasetRef ;
import com.hp.hpl.jena.shared.PrefixMapping ;
import com.hp.hpl.jena.sparql.core.DatasetGraph ;
@@ -53,6 +54,16 @@ public class Functions
String ds = (String)session.getAttribute("dataset") ;
return ds ;
}
+
+ /** Return the dataset description reference for currnet dataset */
+ public static DatasetRef datasetDesc(HttpServletRequest request)
+ {
+ HttpSession session = request.getSession(false) ;
+ if ( session == null )
+ return null ;
+ String ds = (String)session.getAttribute("dataset") ;
+ return DatasetRegistry.get().get(ds) ;
+ }
/** Return lists of datasets */
public static String datasetsAsSelectOptions(HttpServletRequest request)
@@ -85,7 +96,11 @@ public class Functions
public static String prefixes(HttpServletRequest request)
{
String dsName = dataset(request) ;
- DatasetGraph dsg = DatasetRegistry.get().get(dsName) ;
+ DatasetRef desc = DatasetRegistry.get().get(dsName) ;
+ if ( desc == null )
+ return "<not found>" ;
+ DatasetGraph dsg = desc.dataset ;
+
if ( dsg instanceof DatasetGraphTDB )
{
PrefixMapping pmap = ((DatasetGraphTDB)dsg).getPrefixes().getPrefixMapping() ;
Copied: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRef.java (from r1165206, incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/ServiceDesc.java)
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRef.java?p2=incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRef.java&p1=incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/ServiceDesc.java&r1=1165206&r2=1167103&rev=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/ServiceDesc.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRef.java Fri Sep 9 11:26:26 2011
@@ -23,7 +23,7 @@ import java.util.List ;
import com.hp.hpl.jena.sparql.core.DatasetGraph ;
-public class ServiceDesc
+public class DatasetRef
{
public String name = null ;
public List<String> queryEP = new ArrayList<String>() ;
Propchange: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRef.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRegistry.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRegistry.java?rev=1167103&r1=1167102&r2=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRegistry.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/DatasetRegistry.java Fri Sep 9 11:26:26 2011
@@ -20,9 +20,7 @@ package org.openjena.fuseki.server;
import org.openjena.fuseki.migrate.Registry ;
-import com.hp.hpl.jena.sparql.core.DatasetGraph ;
-
-public class DatasetRegistry extends Registry<DatasetGraph>
+public class DatasetRegistry extends Registry<DatasetRef>
{
private static DatasetRegistry singleton = new DatasetRegistry() ;
Modified: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/FusekiConfig.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/FusekiConfig.java?rev=1167103&r1=1167102&r2=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/FusekiConfig.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/FusekiConfig.java Fri Sep 9 11:26:26 2011
@@ -75,9 +75,9 @@ public class FusekiConfig
"PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>" ,
"") ;
- public static ServiceDesc defaultConfiguration(String datasetPath, DatasetGraph dsg, boolean allowUpdate)
+ public static DatasetRef defaultConfiguration(String datasetPath, DatasetGraph dsg, boolean allowUpdate)
{
- ServiceDesc sDesc = new ServiceDesc() ;
+ DatasetRef sDesc = new DatasetRef() ;
sDesc.name = datasetPath ;
sDesc.dataset = dsg ;
sDesc.queryEP.add(HttpNames.ServiceQuery) ;
@@ -94,7 +94,7 @@ public class FusekiConfig
return sDesc ;
}
- public static List<ServiceDesc> configure(String filename)
+ public static List<DatasetRef> configure(String filename)
{
// Be absolutely sure everything has initaialized.
// Some initialization registers assemblers and sets abbreviation vocabulary.
@@ -119,13 +119,13 @@ public class FusekiConfig
if ( ! rs.hasNext() )
log.warn("No services found") ;
- List<ServiceDesc> services = new ArrayList<ServiceDesc>() ;
+ List<DatasetRef> services = new ArrayList<DatasetRef>() ;
for ( ; rs.hasNext() ; )
{
QuerySolution soln = rs.next() ;
Resource svc = soln.getResource("member") ;
- ServiceDesc sd = processService(svc) ;
+ DatasetRef sd = processService(svc) ;
services.add(sd) ;
}
@@ -180,9 +180,9 @@ public class FusekiConfig
catch (Exception e) { throw new FusekiConfigException(e) ; }
}
- private static ServiceDesc processService(Resource svc)
+ private static DatasetRef processService(Resource svc)
{
- ServiceDesc sDesc = new ServiceDesc() ;
+ DatasetRef sDesc = new DatasetRef() ;
log.info("Service: "+nodeLabel(svc)) ;
sDesc.name = ((Literal)getOne(svc, "fu:name")).getLexicalForm() ;
Modified: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/SPARQLServer.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/SPARQLServer.java?rev=1167103&r1=1167102&r2=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/SPARQLServer.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/server/SPARQLServer.java Fri Sep 9 11:26:26 2011
@@ -61,12 +61,12 @@ public class SPARQLServer
//private static int ThreadPoolSize = 100 ;
- public SPARQLServer(String jettyConfig, int port, List<ServiceDesc> services)
+ public SPARQLServer(String jettyConfig, int port, List<DatasetRef> services)
{
this.port = port ;
ServletContextHandler context = buildServer(jettyConfig) ;
// Build them all.
- for ( ServiceDesc sDesc : services )
+ for ( DatasetRef sDesc : services )
configureOneDataset(context, sDesc) ;
}
@@ -190,7 +190,7 @@ public class SPARQLServer
}
- private void configureOneDataset(ServletContextHandler context, ServiceDesc sDesc)
+ private void configureOneDataset(ServletContextHandler context, DatasetRef sDesc)
{
String datasetPath = sDesc.name ;
if ( datasetPath.equals("/") )
@@ -201,7 +201,7 @@ public class SPARQLServer
if ( datasetPath.endsWith("/") )
datasetPath = datasetPath.substring(0, datasetPath.length()-1) ;
- DatasetRegistry.get().put(datasetPath, sDesc.dataset) ;
+ DatasetRegistry.get().put(datasetPath, sDesc) ;
serverLog.info(format("Dataset path = %s", datasetPath)) ;
HttpServlet sparqlQuery = new SPARQL_QueryDataset(verbose) ;
Modified: incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java?rev=1167103&r1=1167102&r2=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/main/java/org/openjena/fuseki/servlets/SPARQL_ServletBase.java Fri Sep 9 11:26:26 2011
@@ -36,6 +36,7 @@ import org.openjena.fuseki.Fuseki ;
import org.openjena.fuseki.HttpNames ;
import org.openjena.fuseki.http.HttpSC ;
import org.openjena.fuseki.server.DatasetRegistry ;
+import org.openjena.fuseki.server.DatasetRef ;
import org.slf4j.Logger ;
import com.hp.hpl.jena.query.QueryParseException ;
@@ -83,12 +84,13 @@ public abstract class SPARQL_ServletBase
DatasetGraph dsg = null ;
if ( uri != null )
{
- dsg = DatasetRegistry.get().get(uri) ;
- if ( dsg == null )
+ DatasetRef desc = DatasetRegistry.get().get(uri) ;
+ if ( desc == null )
{
errorNotFound("No dataset for URI: "+uri) ;
return ;
}
+ dsg = desc.dataset ;
}
perform(id, dsg, request, response) ;
//serverlog.info(String.format("[%d] 200 Success", id)) ;
Modified: incubator/jena/Jena2/Fuseki/trunk/src/test/java/org/openjena/fuseki/ServerTest.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/Fuseki/trunk/src/test/java/org/openjena/fuseki/ServerTest.java?rev=1167103&r1=1167102&r2=1167103&view=diff
==============================================================================
--- incubator/jena/Jena2/Fuseki/trunk/src/test/java/org/openjena/fuseki/ServerTest.java (original)
+++ incubator/jena/Jena2/Fuseki/trunk/src/test/java/org/openjena/fuseki/ServerTest.java Fri Sep 9 11:26:26 2011
@@ -26,7 +26,7 @@ import org.openjena.atlas.logging.Log ;
import org.openjena.fuseki.http.UpdateRemote ;
import org.openjena.fuseki.server.FusekiConfig ;
import org.openjena.fuseki.server.SPARQLServer ;
-import org.openjena.fuseki.server.ServiceDesc ;
+import org.openjena.fuseki.server.DatasetRef ;
import com.hp.hpl.jena.sparql.core.DatasetGraph ;
import com.hp.hpl.jena.sparql.core.DatasetGraphFactory ;
@@ -69,7 +69,7 @@ public class ServerTest extends BaseServ
DatasetGraph dsg = DatasetGraphFactory.createMem() ;
// This must agree with BaseServerTest
- ServiceDesc sDesc = FusekiConfig.defaultConfiguration(datasetPath, dsg, true) ;
+ DatasetRef sDesc = FusekiConfig.defaultConfiguration(datasetPath, dsg, true) ;
// public static final String serviceUpdate = "http://localhost:"+ServerTest.port+datasetPath+"/update" ;
// public static final String serviceQuery = "http://localhost:"+ServerTest.port+datasetPath+"/query" ;
// public static final String serviceREST = "http://localhost:"+ServerTest.port+datasetPath+"/data" ; // ??????