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