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 2013/11/26 15:29:05 UTC

svn commit: r1545673 - in /jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt: DatasetsCollectionServlet.java ManagementServer.java

Author: andy
Date: Tue Nov 26 14:29:04 2013
New Revision: 1545673

URL: http://svn.apache.org/r1545673
Log:
GET /$/datasets/ds -> JSON (for now)

Modified:
    jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/DatasetsCollectionServlet.java
    jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/ManagementServer.java

Modified: jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/DatasetsCollectionServlet.java
URL: http://svn.apache.org/viewvc/jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/DatasetsCollectionServlet.java?rev=1545673&r1=1545672&r2=1545673&view=diff
==============================================================================
--- jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/DatasetsCollectionServlet.java (original)
+++ jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/DatasetsCollectionServlet.java Tue Nov 26 14:29:04 2013
@@ -23,11 +23,15 @@ import java.io.InputStream ;
 import java.util.List ;
 
 import javax.servlet.ServletException ;
+import javax.servlet.ServletOutputStream ;
 import javax.servlet.http.HttpServletRequest ;
 import javax.servlet.http.HttpServletResponse ;
 
 import org.apache.jena.atlas.io.IO ;
 import org.apache.jena.atlas.iterator.Iter ;
+import org.apache.jena.atlas.json.JSON ;
+import org.apache.jena.atlas.json.JsonBuilder ;
+import org.apache.jena.atlas.json.JsonValue ;
 import org.apache.jena.atlas.lib.StrUtils ;
 import org.apache.jena.atlas.web.ContentType ;
 import org.apache.jena.fuseki.FusekiConfigException ;
@@ -78,10 +82,23 @@ public class DatasetsCollectionServlet e
         
     @Override
     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
-        super.doGet(request, response); 
-        
-        
+        String name = request.getRequestURI() ;
+        int idx = name.lastIndexOf('/') ;
+        name = name.substring(idx) ;
+        String datasetPath = DatasetRef.canocialDatasetPath(name) ;
+        DatasetRef dsDesc = DatasetRegistry.get().get(datasetPath) ;
+        if ( dsDesc == null )
+            errorNotFound("Not found: "+name);
         
+        JsonBuilder builder = new JsonBuilder() ;
+        JsonDescription.describe(builder, dsDesc) ;
+        JsonValue v = builder.build() ;
+        ServletOutputStream out = response.getOutputStream() ;
+        response.setContentType(WebContent.contentTypeJSON);
+        response.setCharacterEncoding(WebContent.charsetUTF8) ;
+        JSON.write(out, v) ;
+        out.println() ; 
+        out.flush() ;
     }
 
     protected void execPost(HttpServletRequest request, HttpServletResponse response) {

Modified: jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/ManagementServer.java
URL: http://svn.apache.org/viewvc/jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/ManagementServer.java?rev=1545673&r1=1545672&r2=1545673&view=diff
==============================================================================
--- jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/ManagementServer.java (original)
+++ jena/branches/jena-fuseki-new-ui/src/main/java/org/apache/jena/fuseki/mgt/ManagementServer.java Tue Nov 26 14:29:04 2013
@@ -78,7 +78,7 @@ public class ManagementServer
             throw new FusekiException("Base URI does nto start with a '/'") ; 
         addServlet(context, new MgtCmdServlet(),    base+"mgt") ;
         addServlet(context, new StatsServlet(),     base+"stats") ;
-        addServlet(context, new DatasetsCollectionServlet(),     base+"datasets") ;
+        addServlet(context, new DatasetsCollectionServlet(),     base+"datasets/*") ; // Covers base+"datasets" 
     }
 
     // SHARE