Author: andy
Date: Sat Jun 1 21:09:15 2013
New Revision: 1488602
URL: http://svn.apache.org/r1488602
Log:
Track services, not endpoints, because there can be 0,1, or more endpoints per
service.
Modified:
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/StatsServlet.java
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java
Modified:
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/StatsServlet.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/StatsServlet.java?rev=1488602&r1=1488601&r2=1488602&view=diff
==============================================================================
---
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/StatsServlet.java
(original)
+++
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/StatsServlet.java
Sat Jun 1 21:09:15 2013
@@ -27,6 +27,7 @@ import javax.servlet.http.HttpServletReq
import javax.servlet.http.HttpServletResponse ;
import org.apache.jena.atlas.json.JSON ;
+import org.apache.jena.atlas.json.JsonArray ;
import org.apache.jena.atlas.json.JsonObject ;
import org.apache.jena.fuseki.server.* ;
import org.apache.jena.riot.WebContent ;
@@ -80,14 +81,19 @@ public class StatsServlet extends HttpSe
stats.put(CounterName.Requests.name(),
desc.counters.value(CounterName.Requests)) ;
stats.put(CounterName.RequestsGood.name(),
desc.counters.value(CounterName.RequestsGood)) ;
stats.put(CounterName.RequestsBad.name(),
desc.counters.value(CounterName.RequestsBad)) ;
- JsonObject endpoints = new JsonObject() ;
- for ( String endpoint : desc.getEndpoints() ) {
- ServiceRef srvRef = desc.getServiceRef(endpoint) ;
+ JsonObject services = new JsonObject() ;
+ // There can be several endpoints for one service.
+ for ( ServiceRef srvRef : desc.getServiceRefs() ) {
JsonObject epStats = new JsonObject() ;
statsJSON(epStats, srvRef) ;
- endpoints.put(endpoint, epStats) ;
+ services.put(srvRef.name, epStats) ;
+ JsonArray endpoints = new JsonArray() ;
+ services.put("endpoints", endpoints) ;
+ for ( String ep : srvRef.endpoints) {
+ endpoints.add(ep) ;
+ }
}
- stats.put("endpoints", endpoints) ;
+ stats.put("services", services) ;
}
private void statsJSON(JsonObject epStats, ServiceRef srvRef) {
Modified:
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java?rev=1488602&r1=1488601&r2=1488602&view=diff
==============================================================================
---
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java
(original)
+++
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java
Sat Jun 1 21:09:15 2013
@@ -31,11 +31,19 @@ public class DatasetRef implements Datas
public String name = null ;
public DatasetGraph dataset = null ;
- public ServiceRef query = new ServiceRef("query") ;
- public ServiceRef update = new ServiceRef("update") ;
- public ServiceRef upload = new ServiceRef("upload") ;
- public ServiceRef readGraphStore = new ServiceRef("gspRead") ;
- public ServiceRef readWriteGraphStore = new
ServiceRef("gspReadWrite") ;
+ private List<ServiceRef> serviceRefs = new ArrayList<ServiceRef>()
;
+ private ServiceRef createService(String name) {
+ ServiceRef sr = new ServiceRef(name) ;
+ serviceRefs.add(sr) ;
+ return sr ;
+ }
+
+ public ServiceRef query = createService("query") ;
+ public ServiceRef update = createService("update") ;
+ public ServiceRef upload = createService("upload") ;
+ public ServiceRef readGraphStore = createService("gspRead") ;
+ public ServiceRef readWriteGraphStore =
createService("gspReadWrite") ;
+
// Dataset-level counters.
public final CounterSet counters = new CounterSet() ;
@@ -74,10 +82,14 @@ public class DatasetRef implements Datas
return endpoints.get(service) ;
}
- public Collection<String> getEndpoints() {
+ public Collection<String> ZgetEndpoints() {
return endpoints.keySet() ;
}
+ public Collection<ServiceRef> getServiceRefs() {
+ return serviceRefs ;
+ }
+
/** Counter of active read transactions */
public AtomicLong activeReadTxn = new AtomicLong(0) ;
Modified:
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java?rev=1488602&r1=1488601&r2=1488602&view=diff
==============================================================================
---
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java
(original)
+++
jena/trunk/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java
Sat Jun 1 21:09:15 2013
@@ -268,9 +268,8 @@ public class SPARQLServer
// x = x.substring(1) ;
ARQMgt.register(Fuseki.PATH+".dataset:name="+x, dsDesc) ;
// For all endpoints
- for ( String endpoint : dsDesc.getEndpoints() ) {
- ServiceRef sRef = dsDesc.getServiceRef(endpoint) ;
- ARQMgt.register(Fuseki.PATH+".dataset:name="+x+"/"+endpoint, sRef)
;
+ for ( ServiceRef sRef : dsDesc.getServiceRefs() ) {
+ ARQMgt.register(Fuseki.PATH+".dataset:name="+x+"/"+sRef.name,
sRef) ;
}
}