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 2018/09/21 10:16:15 UTC

[64/70] [abbrv] jena git commit: Reorganise library code.

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiLib.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiLib.java b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiLib.java
new file mode 100644
index 0000000..36598b7
--- /dev/null
+++ b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiLib.java
@@ -0,0 +1,74 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.jena.fuseki.main;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
+import org.apache.jena.fuseki.build.FusekiBuilder;
+import org.apache.jena.fuseki.server.DataAccessPointRegistry;
+import org.apache.jena.fuseki.server.DataService;
+import org.apache.jena.fuseki.system.FusekiNetLib;
+import org.apache.jena.sparql.core.DatasetGraph;
+
+/** Actions on a {@link FusekiServer} */
+public class FusekiLib {
+
+    /** Choose a free port */
+    public static int choosePort() {
+        return FusekiNetLib.choosePort();
+    }
+
+    /**
+     * Return a collection of the names registered. This collection does not change as the
+     * server changes.
+     */
+    public static Collection<String> names(FusekiServer server) {
+        DataAccessPointRegistry dataAccessPoints = DataAccessPointRegistry.get(server.getServletContext());
+        int N = dataAccessPoints.size();
+        Stream<String> stream = DataAccessPointRegistry.get(server.getServletContext()).keys().stream();
+        // Correct size, no reallocate.
+        List<String> names = stream.collect(Collectors.toCollection(() -> new ArrayList<>(N)));
+        return names;
+    }
+
+    /** Add a dataset to a server */
+    public static FusekiServer addDataset(FusekiServer server, String name, DatasetGraph dsg, boolean withUpdate) {
+        DataAccessPointRegistry dataAccessPoints = DataAccessPointRegistry.get(server.getServletContext());
+        FusekiBuilder.addDataset(dataAccessPoints, name, dsg, withUpdate);
+        return server;
+    }
+
+    /** Add a {@link DataService} to a server */
+    public static FusekiServer addDataset(FusekiServer server, String name, DataService dataService) {
+        DataAccessPointRegistry dataAccessPoints = DataAccessPointRegistry.get(server.getServletContext());
+        FusekiBuilder.addDataService(dataAccessPoints, name, dataService);
+        return server;
+    }
+
+    /** Remove dataset from a server */
+    public static FusekiServer removeDataset(FusekiServer server, String name) {
+        DataAccessPointRegistry dataAccessPoints = DataAccessPointRegistry.get(server.getServletContext());
+        FusekiBuilder.removeDataset(dataAccessPoints, name);
+        return server;
+    }
+}

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestAuth.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestAuth.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestAuth.java
index 8342571..9e57a25 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestAuth.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestAuth.java
@@ -21,7 +21,7 @@ package org.apache.jena.fuseki.main;
 import java.util.Objects;
 
 import org.apache.jena.atlas.web.HttpException;
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.jetty.JettyLib;
 import org.apache.jena.sparql.core.DatasetGraph ;
 import org.apache.jena.sparql.core.DatasetGraphFactory;
@@ -77,7 +77,7 @@ import org.junit.Assert;
  * large test suite may end up quite slow.
  */
 public class FusekiTestAuth {
-    private static int currentPort = FusekiLib.choosePort() ;
+    private static int currentPort = WebLib.choosePort() ;
     
     public static int port() {
         return currentPort ;

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestServer.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestServer.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestServer.java
index 58983c9..6f064b3 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestServer.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/FusekiTestServer.java
@@ -27,7 +27,7 @@ import java.util.concurrent.atomic.AtomicInteger ;
 import org.apache.http.client.HttpClient ;
 import org.apache.http.impl.client.CloseableHttpClient ;
 import org.apache.jena.atlas.io.IO ;
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.riot.web.HttpOp ;
 import org.apache.jena.sparql.core.DatasetGraph ;
 import org.apache.jena.sparql.core.DatasetGraphFactory;
@@ -121,7 +121,7 @@ public class FusekiTestServer {
     
     /*package : for import static */ enum ServerScope { SUITE, CLASS, TEST }
     private static ServerScope serverScope = ServerScope.CLASS ;
-    private static int currentPort = FusekiLib.choosePort() ;
+    private static int currentPort = WebLib.choosePort() ;
     
     public static int port() {
         return currentPort ;

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestEmbeddedFuseki.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestEmbeddedFuseki.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestEmbeddedFuseki.java
index 6499444..97b7a5f 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestEmbeddedFuseki.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestEmbeddedFuseki.java
@@ -33,7 +33,7 @@ import org.apache.http.entity.EntityTemplate ;
 import org.apache.jena.atlas.web.ContentType ;
 import org.apache.jena.atlas.web.HttpException ;
 import org.apache.jena.atlas.web.TypedInputStream ;
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.server.DataAccessPointRegistry ;
 import org.apache.jena.fuseki.server.DataService ;
 import org.apache.jena.fuseki.server.Operation ;
@@ -94,7 +94,7 @@ public class TestEmbeddedFuseki {
     // Different dataset name.
     @Test public void embedded_03() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
         FusekiServer server = FusekiServer.create()
             .port(port)
             .add("/ds1", dsg) 
@@ -128,7 +128,7 @@ public class TestEmbeddedFuseki {
         dataService.addEndpoint(Operation.Quads_RW, "");
         dataService.addEndpoint(Operation.Query, "");
         dataService.addEndpoint(Operation.Update, "");
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
         
         FusekiServer server = FusekiServer.create()
             .port(port)
@@ -168,7 +168,7 @@ public class TestEmbeddedFuseki {
     
     @Test public void embedded_05() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
         FusekiServer server = FusekiServer.create()
             .port(port)
             .add("/ds0", dsg) 
@@ -183,7 +183,7 @@ public class TestEmbeddedFuseki {
     
     @Test public void embedded_06() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
         FusekiServer server = FusekiServer.create()
             .port(port)
             .add("/ds0", dsg)
@@ -199,7 +199,7 @@ public class TestEmbeddedFuseki {
     // Context path.
     @Test public void embedded_07() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
         
         FusekiServer server = FusekiServer.create()
             .port(port)
@@ -217,7 +217,7 @@ public class TestEmbeddedFuseki {
     
     @Test public void embedded_08() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
 
         FusekiServer server = FusekiServer.create()
             .port(port)
@@ -231,7 +231,7 @@ public class TestEmbeddedFuseki {
     
     @Test public void embedded_09() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
 
         FusekiServer server = FusekiServer.create()
             .port(port)
@@ -252,7 +252,7 @@ public class TestEmbeddedFuseki {
 
     @Test public void embedded_20() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
 
         DataService dSrv = new DataService(dsg) ;
         dSrv.addEndpoint(Operation.Query, "q") ;
@@ -271,7 +271,7 @@ public class TestEmbeddedFuseki {
     
     @Test public void embedded_21() {
         DatasetGraph dsg = dataset() ;
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
 
         DataService dSrv = new DataService(dsg) ;
         dSrv.addEndpoint(Operation.Query, "q") ;

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiCustomOperation.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiCustomOperation.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiCustomOperation.java
index 6003320..2431d82 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiCustomOperation.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiCustomOperation.java
@@ -29,8 +29,8 @@ import org.apache.commons.io.IOUtils;
 import org.apache.jena.atlas.io.IO;
 import org.apache.jena.atlas.web.HttpException;
 import org.apache.jena.atlas.web.TypedInputStream;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.FusekiConfigException;
-import org.apache.jena.fuseki.FusekiLib;
 import org.apache.jena.fuseki.build.FusekiBuilder;
 import org.apache.jena.fuseki.server.DataService;
 import org.apache.jena.fuseki.server.Operation;
@@ -50,7 +50,7 @@ public class TestFusekiCustomOperation {
     private static final String endpointName = "special";
 
     private final ActionService customHandler = new CustomService();
-    private final int port = FusekiLib.choosePort();
+    private final int port = WebLib.choosePort();
     private final String url = "http://localhost:"+port;
 
     @Test

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestMultipleEmbedded.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestMultipleEmbedded.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestMultipleEmbedded.java
index ecb4e21..fd5c81d 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestMultipleEmbedded.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestMultipleEmbedded.java
@@ -29,8 +29,8 @@ import org.apache.http.HttpEntity ;
 import org.apache.http.entity.ContentProducer ;
 import org.apache.http.entity.EntityTemplate ;
 import org.apache.jena.atlas.web.ContentType ;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.FusekiException ;
-import org.apache.jena.fuseki.FusekiLib;
 import org.apache.jena.graph.Graph ;
 import org.apache.jena.query.ResultSet ;
 import org.apache.jena.query.ResultSetFormatter ;
@@ -52,7 +52,7 @@ public class TestMultipleEmbedded {
     public void multiple_01() {
         DatasetGraph dsg = dataset() ;
 
-        int port = FusekiLib.choosePort() ;
+        int port = WebLib.choosePort() ;
         FusekiServer server1 = FusekiServer.create().port(port).add("/ds1", dsg).build() ;
         // Same port - Bad.
         FusekiServer server2 = FusekiServer.create().port(port).add("/ds2", dsg).build() ;
@@ -74,11 +74,11 @@ public class TestMultipleEmbedded {
     @Test
     public void multiple_02() {
         DatasetGraph dsg = dataset() ;
-        int port1 = FusekiLib.choosePort() ;
+        int port1 = WebLib.choosePort() ;
         FusekiServer server1 = FusekiServer.create().port(port1).add("/ds1", dsg).build() ;
 
         // Different port - good
-        int port2 = FusekiLib.choosePort() ;
+        int port2 = WebLib.choosePort() ;
         FusekiServer server2 = FusekiServer.create().port(port2).add("/ds2", dsg).build() ;
 
         try {
@@ -96,11 +96,11 @@ public class TestMultipleEmbedded {
         DatasetGraph dsg1 = dataset() ;
         DatasetGraph dsg2 = dataset() ;
         // Same name.
-        int port1 = FusekiLib.choosePort() ;
+        int port1 = WebLib.choosePort() ;
         FusekiServer server1 = FusekiServer.create().port(port1).add("/ds", dsg1).build().start() ;
         Txn.executeWrite(dsg1, ()->dsg1.add(q1));
         
-        int port2 = FusekiLib.choosePort() ;
+        int port2 = WebLib.choosePort() ;
         FusekiServer server2 = FusekiServer.create().port(port2).add("/ds", dsg2).build().start() ;
         Txn.executeWrite(dsg2, ()->dsg2.add(q2));
         
@@ -129,11 +129,11 @@ public class TestMultipleEmbedded {
     public void multiple_04() {
         DatasetGraph dsg = dataset() ;
         
-        int port1 = FusekiLib.choosePort() ;
+        int port1 = WebLib.choosePort() ;
         FusekiServer server1 = FusekiServer.create().port(port1).add("/ds1", dsg).build().start() ;
         Txn.executeWrite(dsg, ()->dsg.add(q1));
         
-        int port2 = FusekiLib.choosePort() ;
+        int port2 = WebLib.choosePort() ;
         FusekiServer server2 = FusekiServer.create().port(port2).add("/ds2", dsg).build().start() ;
         Txn.executeWrite(dsg, ()->dsg.add(q2));
         

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_1.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_1.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_1.java
index bfdcb42..95dcbe9 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_1.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_1.java
@@ -24,7 +24,7 @@ import org.apache.jena.atlas.io.IO;
 import org.apache.jena.atlas.logging.LogCtl;
 import org.apache.jena.atlas.web.HttpException;
 import org.apache.jena.atlas.web.TypedInputStream;
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.main.FusekiServer;
 import org.apache.jena.fuseki.server.Operation;
 import org.apache.jena.fuseki.servlets.ActionService;
@@ -78,7 +78,7 @@ public class ExtendFuseki_AddService_1 {
     // Choose free port for the example
     // Normally, this is fixed and published, and fixed in URLs.
     // To make the example portable, we ask the OS for a free port.
-    static int PORT             = FusekiLib.choosePort();
+    static int PORT             = WebLib.choosePort();
     
     // The server
     static String SERVER_URL    = "http://localhost:"+PORT+"/";

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_2.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_2.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_2.java
index 295eebc..cbe868a 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_2.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_2.java
@@ -19,7 +19,7 @@
 package org.apache.jena.fuseki.main.examples;
 
 import org.apache.jena.atlas.logging.LogCtl;
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.build.FusekiBuilder;
 import org.apache.jena.fuseki.main.FusekiServer;
 import org.apache.jena.fuseki.server.DataService;
@@ -44,7 +44,7 @@ public class ExtendFuseki_AddService_2 {
     static { LogCtl.setLog4j(); }
 
     // Endpoint dispatch only.
-    static int PORT             = FusekiLib.choosePort();
+    static int PORT             = WebLib.choosePort();
     
     // The server
     static String SERVER_URL    = "http://localhost:"+PORT+"/";

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_3.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_3.java b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_3.java
index f0dc08f..cc1f7df 100644
--- a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_3.java
+++ b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExtendFuseki_AddService_3.java
@@ -23,7 +23,7 @@ import java.io.IOException;
 import org.apache.jena.atlas.io.IO;
 import org.apache.jena.atlas.logging.LogCtl;
 import org.apache.jena.atlas.web.TypedInputStream;
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.main.FusekiServer;
 import org.apache.jena.fuseki.server.Operation;
 import org.apache.jena.fuseki.servlets.ActionService;
@@ -41,7 +41,7 @@ import org.apache.jena.util.FileUtils;
 public class ExtendFuseki_AddService_3 {
     static { LogCtl.setLog4j(); }
 
-    static int PORT             = FusekiLib.choosePort();
+    static int PORT             = WebLib.choosePort();
     
     // The server
     static String SERVER_URL    = "http://localhost:"+PORT+"/";

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/mgt/ActionDatasets.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/mgt/ActionDatasets.java b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/mgt/ActionDatasets.java
index b016c3b..57179ec 100644
--- a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/mgt/ActionDatasets.java
+++ b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/mgt/ActionDatasets.java
@@ -26,7 +26,11 @@ import java.io.OutputStream;
 import java.io.StringReader;
 import java.nio.file.Files;
 import java.nio.file.Path;
-import java.util.*;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest ;
 
@@ -41,9 +45,8 @@ import org.apache.jena.atlas.lib.StrUtils ;
 import org.apache.jena.atlas.logging.FmtLog;
 import org.apache.jena.atlas.web.ContentType ;
 import org.apache.jena.datatypes.xsd.XSDDatatype ;
-import org.apache.jena.fuseki.FusekiLib ;
 import org.apache.jena.fuseki.build.DatasetDescriptionRegistry;
-import org.apache.jena.fuseki.build.FusekiBuilder;
+import org.apache.jena.fuseki.build.FusekiConfig;
 import org.apache.jena.fuseki.build.FusekiConst;
 import org.apache.jena.fuseki.ctl.ActionContainerItem;
 import org.apache.jena.fuseki.ctl.JsonDescription;
@@ -54,6 +57,7 @@ import org.apache.jena.fuseki.server.ServerConst;
 import org.apache.jena.fuseki.servlets.ActionLib;
 import org.apache.jena.fuseki.servlets.HttpAction;
 import org.apache.jena.fuseki.servlets.ServletOps;
+import org.apache.jena.fuseki.system.FusekiNetLib;
 import org.apache.jena.fuseki.system.Upload;
 import org.apache.jena.fuseki.webapp.FusekiSystem;
 import org.apache.jena.fuseki.webapp.SystemState;
@@ -62,7 +66,11 @@ import org.apache.jena.graph.NodeFactory ;
 import org.apache.jena.query.Dataset;
 import org.apache.jena.query.ReadWrite;
 import org.apache.jena.rdf.model.* ;
-import org.apache.jena.riot.* ;
+import org.apache.jena.riot.Lang;
+import org.apache.jena.riot.RDFDataMgr;
+import org.apache.jena.riot.RDFLanguages;
+import org.apache.jena.riot.RDFParser;
+import org.apache.jena.riot.WebContent;
 import org.apache.jena.riot.system.StreamRDF ;
 import org.apache.jena.riot.system.StreamRDFLib ;
 import org.apache.jena.shared.uuid.JenaUUID ;
@@ -121,7 +129,7 @@ public class ActionDatasets extends ActionContainerItem {
         JenaUUID uuid = JenaUUID.generate() ;
         DatasetDescriptionRegistry registry = new DatasetDescriptionRegistry() ;
         
-        ContentType ct = FusekiLib.getContentType(action) ;
+        ContentType ct = ActionLib.getContentType(action) ;
         
         boolean hasParams = action.request.getParameterNames().hasMoreElements();
         
@@ -219,7 +227,7 @@ public class ActionDatasets extends ActionContainerItem {
 //            modelSys.add(subject, pStatus, FusekiVocab.stateActive) ;
             
             // Need to be in Resource space at this point.
-            DataAccessPoint dataAccessPoint = FusekiBuilder.buildDataAccessPoint(subject, registry) ;
+            DataAccessPoint dataAccessPoint = FusekiConfig.buildDataAccessPoint(subject, registry) ;
             dataAccessPoint.getDataService().goActive();
             if ( ! datasetPath.equals(dataAccessPoint.getName()) )
                 FmtLog.warn(action.log, "Inconsistent names: datasetPath = %s; DataAccessPoint name = %s", datasetPath, dataAccessPoint);
@@ -487,7 +495,7 @@ public class ActionDatasets extends ActionContainerItem {
     private static void bodyAsGraph(HttpAction action, StreamRDF dest) {
         HttpServletRequest request = action.request ;
         String base = ActionLib.wholeRequestURL(request) ;
-        ContentType ct = FusekiLib.getContentType(request) ;
+        ContentType ct = FusekiNetLib.getContentType(request) ;
         Lang lang = RDFLanguages.contentTypeToLang(ct.getContentType()) ;
         if ( lang == null ) {
             ServletOps.errorBadRequest("Unknown content type for triples: " + ct) ;

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiSystem.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiSystem.java b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiSystem.java
index a38cb69..e5c4c1f 100644
--- a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiSystem.java
+++ b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiSystem.java
@@ -340,7 +340,7 @@ public class FusekiSystem
             //  1 - clean model, remove "fu:serviceUpdate", "fu:serviceUpload", "fu:serviceReadGraphStore", "fu:serviceReadWriteGraphStore"
             //  2 - set a flag on DataAccessPoint
         }
-        DataAccessPoint dap = FusekiBuilder.buildDataAccessPoint(subject, registry) ;
+        DataAccessPoint dap = FusekiConfig.buildDataAccessPoint(subject, registry) ;
         return dap ;
     }
     

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/ServerCtl.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/ServerCtl.java b/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/ServerCtl.java
index 8fc4513..eddb6c7 100644
--- a/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/ServerCtl.java
+++ b/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/ServerCtl.java
@@ -32,7 +32,8 @@ import org.apache.jena.atlas.io.IO ;
 import org.apache.jena.atlas.lib.FileOps ;
 import org.apache.jena.fuseki.cmd.JettyFuseki;
 import org.apache.jena.fuseki.jetty.JettyServerConfig ;
-import org.apache.jena.fuseki.server.* ;
+import org.apache.jena.fuseki.server.FusekiInitialConfig;
+import org.apache.jena.fuseki.system.FusekiNetLib;
 import org.apache.jena.fuseki.webapp.FusekiEnv;
 import org.apache.jena.fuseki.webapp.FusekiServerListener;
 import org.apache.jena.fuseki.webapp.FusekiSystem;
@@ -114,7 +115,7 @@ public class ServerCtl {
     
     /*package : for import static */ enum ServerScope { SUITE, CLASS, TEST }
     private static ServerScope serverScope = ServerScope.CLASS ;
-    private static int currentPort = FusekiLib.choosePort() ;
+    private static int currentPort = FusekiNetLib.choosePort() ;
     
     public static int port() {
         return currentPort ;

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestAuth.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestAuth.java b/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestAuth.java
index 5e19f01..bfd8f1f 100644
--- a/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestAuth.java
+++ b/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestAuth.java
@@ -34,8 +34,7 @@ import org.apache.http.impl.client.BasicCredentialsProvider;
 import org.apache.http.impl.client.HttpClientBuilder;
 import org.apache.jena.atlas.logging.LogCtl ;
 import org.apache.jena.atlas.web.HttpException ;
-import org.apache.jena.fuseki.Fuseki;
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.fuseki.system.FusekiNetLib;
 import org.apache.jena.query.DatasetAccessor ;
 import org.apache.jena.query.DatasetAccessorFactory ;
 import org.apache.jena.query.QueryExecutionFactory ;
@@ -62,7 +61,7 @@ public class TestAuth {
     
     // Use different port etc because sometimes the previous testing servers
     // don't release ports fast enough (OS issue / Linux)
-    public static final int authPort             = FusekiLib.choosePort() ;
+    public static final int authPort             = FusekiNetLib.choosePort() ;
     public static final String authUrlRoot       = "http://localhost:"+authPort+"/" ;
     public static final String authDatasetPath   = "/dataset" ;
     public static final String authServiceUpdate = "http://localhost:"+authPort+authDatasetPath+"/update" ; 

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestBuilder.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestBuilder.java b/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestBuilder.java
index 7041498..a4b02fc 100644
--- a/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestBuilder.java
+++ b/jena-fuseki2/jena-fuseki-webapp/src/test/java/org/apache/jena/fuseki/TestBuilder.java
@@ -22,7 +22,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotEquals;
 
 import org.apache.jena.fuseki.build.DatasetDescriptionRegistry;
-import org.apache.jena.fuseki.build.FusekiBuilder;
+import org.apache.jena.fuseki.build.FusekiConfig;
 import org.apache.jena.query.Dataset;
 import org.apache.jena.rdf.model.Model;
 import org.apache.jena.rdf.model.ModelFactory;
@@ -41,16 +41,16 @@ public class TestBuilder {
 	@Test
 	public void testVerifySameDatasetObjectForSameDescription() {
 		
-		Dataset ds1 = FusekiBuilder.getDataset(dsDesc1, registry);
-		Dataset ds2 = FusekiBuilder.getDataset(dsDesc1, registry);
+		Dataset ds1 = FusekiConfig.getDataset(dsDesc1, registry);
+		Dataset ds2 = FusekiConfig.getDataset(dsDesc1, registry);
 		assertEquals(ds1, ds2);
 	}
 	
 	@Test
 	public void testVerifyDifferentDatasetObjectsForDifferentDescriptions() {
 		
-		Dataset ds1 = FusekiBuilder.getDataset(dsDesc1, registry);
-		Dataset ds2 = FusekiBuilder.getDataset(dsDesc2, registry);
+		Dataset ds1 = FusekiConfig.getDataset(dsDesc1, registry);
+		Dataset ds2 = FusekiConfig.getDataset(dsDesc2, registry);
 		assertNotEquals(ds1, ds2);		
 	}
 	

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFusekiBinary.java
----------------------------------------------------------------------
diff --git a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFusekiBinary.java b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFusekiBinary.java
index 8b7f4dc..5d07d4b 100644
--- a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFusekiBinary.java
+++ b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFusekiBinary.java
@@ -21,7 +21,8 @@ package org.apache.jena.test.rdfconnection;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
-import org.apache.jena.fuseki.FusekiLib;
+import org.apache.jena.atlas.web.WebLib;
+import org.apache.jena.fuseki.Fuseki;
 import org.apache.jena.fuseki.main.FusekiServer;
 import org.apache.jena.graph.Node;
 import org.apache.jena.graph.Triple;
@@ -50,16 +51,16 @@ public class TestRDFConnectionFusekiBinary {
         Model model = ModelFactory.createDefaultModel();
         model.getGraph().add(triple);
         
-        int PORT = FusekiLib.choosePort();
+        int PORT = WebLib.choosePort();
         FusekiServer server = createFusekiServer(PORT).build().start();
         try {
             String dsURL = "http://localhost:"+PORT+"/ds" ;
-            assertTrue(FusekiLib.isFuseki(dsURL)); 
+            assertTrue(Fuseki.isFuseki(dsURL)); 
 
             RDFConnectionRemoteBuilder builder = RDFConnectionFuseki.create().destination(dsURL);
 
             try (RDFConnectionFuseki conn = (RDFConnectionFuseki)builder.build()) {
-                assertTrue(FusekiLib.isFuseki(conn));
+                assertTrue(Fuseki.isFuseki(conn));
                 // GSP
                 conn.put(model);
                 checkModel(conn, "b3456");

http://git-wip-us.apache.org/repos/asf/jena/blob/0c218559/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java
----------------------------------------------------------------------
diff --git a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java
index 00eb5a0..e7e2ef2 100644
--- a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java
+++ b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java
@@ -19,8 +19,8 @@
 package org.apache.jena.test.rdfconnection;
 
 import org.apache.jena.atlas.logging.LogCtl ;
+import org.apache.jena.atlas.web.WebLib;
 import org.apache.jena.fuseki.Fuseki ;
-import org.apache.jena.fuseki.FusekiLib;
 import org.apache.jena.fuseki.main.FusekiServer ;
 import org.apache.jena.rdfconnection.AbstractTestRDFConnection;
 import org.apache.jena.rdfconnection.RDFConnection;
@@ -39,7 +39,7 @@ public class TestRDFConnectionRemote extends AbstractTestRDFConnection {
     
     @BeforeClass
     public static void beforeClass() {
-        PORT = FusekiLib.choosePort();
+        PORT = WebLib.choosePort();
         server = FusekiServer.create()
             .port(PORT)
             .add("/ds", serverdsg)