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 2017/05/29 18:21:23 UTC
[07/10] jena git commit: Move choosePort() to FusekiLib.
Move choosePort() to FusekiLib.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/026d503d
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/026d503d
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/026d503d
Branch: refs/heads/master
Commit: 026d503d1e236c81ec5065335d9817e200f7fb19
Parents: 806fd19
Author: Andy Seaborne <an...@apache.org>
Authored: Sun May 28 21:18:37 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sun May 28 21:18:37 2017 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/fuseki/FusekiLib.java | 13 ++++++++++--
.../apache/jena/fuseki/server/FusekiEnv.java | 11 ----------
.../java/org/apache/jena/fuseki/ServerCtl.java | 2 +-
.../jena/fuseki/embedded/FusekiTestAuth.java | 21 ++++++++++++++------
.../jena/fuseki/embedded/FusekiTestServer.java | 4 ++--
.../fuseki/embedded/TestEmbeddedFuseki.java | 20 +++++++++----------
.../fuseki/embedded/TestMultipleEmbedded.java | 16 +++++++--------
7 files changed, 47 insertions(+), 40 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/026d503d/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/FusekiLib.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/FusekiLib.java b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/FusekiLib.java
index 1138260..3f68563 100644
--- a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/FusekiLib.java
+++ b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/FusekiLib.java
@@ -18,6 +18,8 @@
package org.apache.jena.fuseki;
+import java.io.IOException;
+import java.net.ServerSocket;
import java.util.Iterator ;
import javax.servlet.http.HttpServletRequest ;
@@ -221,12 +223,10 @@ public class FusekiLib {
return lit.getLexicalForm() ;
}
- // XXX Lib
public static String strForResource(Resource r) {
return strForResource(r, r.getModel()) ;
}
- // XXX Lib
public static String strForResource(Resource r, PrefixMapping pm) {
if ( r == null )
return "NULL " ;
@@ -254,4 +254,13 @@ public class FusekiLib {
}
return "<" + uri + ">" ;
}
+
+ /** Choose an unused port for a server to listen on */
+ public static int choosePort() {
+ try (ServerSocket s = new ServerSocket(0)) {
+ return s.getLocalPort();
+ } catch (IOException ex) {
+ throw new FusekiException("Failed to find a port");
+ }
+ }
}
http://git-wip-us.apache.org/repos/asf/jena/blob/026d503d/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/server/FusekiEnv.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/server/FusekiEnv.java b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/server/FusekiEnv.java
index f18f61b..3799c9a 100644
--- a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/server/FusekiEnv.java
+++ b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/server/FusekiEnv.java
@@ -21,7 +21,6 @@ package org.apache.jena.fuseki.server;
import static java.lang.String.format ;
import java.io.IOException ;
-import java.net.ServerSocket;
import java.nio.file.DirectoryStream ;
import java.nio.file.Files ;
import java.nio.file.Path ;
@@ -30,7 +29,6 @@ import java.util.ArrayList ;
import java.util.List ;
import org.apache.jena.atlas.lib.InternalErrorException ;
-import org.apache.jena.fuseki.FusekiException;
import org.apache.jena.fuseki.servlets.HttpAction ;
import org.apache.jena.fuseki.servlets.ServletOps ;
@@ -178,15 +176,6 @@ public class FusekiEnv {
return x ;
}
- /** Choose an unused port for a server to listen on */
- public static int choosePort() {
- try (ServerSocket s = new ServerSocket(0)) {
- return s.getLocalPort();
- } catch (IOException ex) {
- throw new FusekiException("Failed to find a port");
- }
- }
-
/** Dataset set name to configuration file name. */
public static String datasetNameToConfigurationFile(HttpAction action, String dsName) {
List<String> existing = existingConfigurationFile(dsName) ;
http://git-wip-us.apache.org/repos/asf/jena/blob/026d503d/jena-fuseki2/jena-fuseki-core/src/test/java/org/apache/jena/fuseki/ServerCtl.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-core/src/test/java/org/apache/jena/fuseki/ServerCtl.java b/jena-fuseki2/jena-fuseki-core/src/test/java/org/apache/jena/fuseki/ServerCtl.java
index d99bb5b..cc8870d 100644
--- a/jena-fuseki2/jena-fuseki-core/src/test/java/org/apache/jena/fuseki/ServerCtl.java
+++ b/jena-fuseki2/jena-fuseki-core/src/test/java/org/apache/jena/fuseki/ServerCtl.java
@@ -109,7 +109,7 @@ public class ServerCtl {
/*package : for import static */ enum ServerScope { SUITE, CLASS, TEST }
private static ServerScope serverScope = ServerScope.CLASS ;
- private static int currentPort = FusekiEnv.choosePort() ;
+ private static int currentPort = FusekiLib.choosePort() ;
public static int port() {
return currentPort ;
http://git-wip-us.apache.org/repos/asf/jena/blob/026d503d/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestAuth.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestAuth.java b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestAuth.java
index 992b9d2..8b10f50 100644
--- a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestAuth.java
+++ b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestAuth.java
@@ -18,12 +18,11 @@
package org.apache.jena.fuseki.embedded;
-import static org.apache.jena.fuseki.server.FusekiEnv.choosePort;
-
import java.util.Objects;
import org.apache.jena.atlas.web.HttpException;
import org.apache.jena.fuseki.FusekiException;
+import org.apache.jena.fuseki.FusekiLib;
import org.apache.jena.sparql.core.DatasetGraph ;
import org.apache.jena.sparql.core.DatasetGraphFactory;
import org.apache.jena.web.HttpSC;
@@ -80,7 +79,7 @@ import org.junit.Assert;
* large test suite may end up quite slow.
*/
public class FusekiTestAuth {
- private static int currentPort = choosePort() ;
+ private static int currentPort = FusekiLib.choosePort() ;
public static int port() {
return currentPort ;
@@ -100,10 +99,18 @@ public class FusekiTestAuth {
public static final String serviceGSP() { return "http://localhost:"+port()+datasetPath()+"/data" ; }
private static FusekiEmbeddedServer server ;
-
+
+ /** Setup a testing server, using the given Jetty {@link SecurityHandler} for authentication.
+ * The server will have an empty, in-emory transactional dataset.
+ */
public static void setupServer(boolean updateable, SecurityHandler sh) {
- // Clean datasets.
- dsgTesting = DatasetGraphFactory.createTxnMem();
+ setupServer(updateable, sh, DatasetGraphFactory.createTxnMem());
+ }
+
+ /** Setup a testing server, using the given Jetty {@link SecurityHandler} for authentication.
+ */
+ public static void setupServer(boolean updateable, SecurityHandler sh, DatasetGraph dsg) {
+ dsgTesting = dsg;
server = FusekiEmbeddedServer.create()
.add(datasetPath(), dsgTesting)
.setPort(port())
@@ -112,10 +119,12 @@ public class FusekiTestAuth {
.start();
}
+ /** Shutdown the server.*/
public static void teardownServer() {
if ( server != null ) {
server.stop() ;
server = null ;
+ dsgTesting = null;
}
}
http://git-wip-us.apache.org/repos/asf/jena/blob/026d503d/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestServer.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestServer.java b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestServer.java
index e1a4488..72deb5d 100644
--- a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestServer.java
+++ b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/FusekiTestServer.java
@@ -21,13 +21,13 @@ package org.apache.jena.fuseki.embedded;
import static org.apache.jena.fuseki.embedded.FusekiTestServer.ServerScope.CLASS;
import static org.apache.jena.fuseki.embedded.FusekiTestServer.ServerScope.SUITE;
import static org.apache.jena.fuseki.embedded.FusekiTestServer.ServerScope.TEST;
-import static org.apache.jena.fuseki.server.FusekiEnv.choosePort;
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.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 = choosePort() ;
+ private static int currentPort = FusekiLib.choosePort() ;
public static int port() {
return currentPort ;
http://git-wip-us.apache.org/repos/asf/jena/blob/026d503d/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestEmbeddedFuseki.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestEmbeddedFuseki.java b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestEmbeddedFuseki.java
index 7a1826b..2743bcb 100644
--- a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestEmbeddedFuseki.java
+++ b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestEmbeddedFuseki.java
@@ -33,9 +33,9 @@ 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.fuseki.server.DataAccessPointRegistry ;
import org.apache.jena.fuseki.server.DataService ;
-import org.apache.jena.fuseki.server.FusekiEnv;
import org.apache.jena.fuseki.server.OperationName ;
import org.apache.jena.graph.Graph ;
import org.apache.jena.query.QueryExecution;
@@ -94,7 +94,7 @@ public class TestEmbeddedFuseki {
// Different dataset name.
@Test public void embedded_03() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
.add("/ds1", dsg)
@@ -128,7 +128,7 @@ public class TestEmbeddedFuseki {
dataService.addEndpoint(OperationName.Quads_RW, "");
dataService.addEndpoint(OperationName.Query, "");
dataService.addEndpoint(OperationName.Update, "");
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -168,7 +168,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_05() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
.add("/ds0", dsg)
@@ -183,7 +183,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_06() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
.add("/ds0", dsg)
@@ -199,7 +199,7 @@ public class TestEmbeddedFuseki {
// Context path.
@Test public void embedded_07() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -217,7 +217,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_08() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -231,7 +231,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_09() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -252,7 +252,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_20() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
DataService dSrv = new DataService(dsg) ;
dSrv.addEndpoint(OperationName.Query, "q") ;
@@ -271,7 +271,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_21() {
DatasetGraph dsg = dataset() ;
- int port = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
DataService dSrv = new DataService(dsg) ;
dSrv.addEndpoint(OperationName.Query, "q") ;
http://git-wip-us.apache.org/repos/asf/jena/blob/026d503d/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestMultipleEmbedded.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestMultipleEmbedded.java b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestMultipleEmbedded.java
index 3ed297d..bb45b8f 100644
--- a/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestMultipleEmbedded.java
+++ b/jena-fuseki2/jena-fuseki-embedded/src/test/java/org/apache/jena/fuseki/embedded/TestMultipleEmbedded.java
@@ -30,7 +30,7 @@ import org.apache.http.entity.ContentProducer ;
import org.apache.http.entity.EntityTemplate ;
import org.apache.jena.atlas.web.ContentType ;
import org.apache.jena.fuseki.FusekiException ;
-import org.apache.jena.fuseki.server.FusekiEnv;
+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 = FusekiEnv.choosePort() ;
+ int port = FusekiLib.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port).add("/ds1", dsg).build() ;
// Same port - Bbad.
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(port).add("/ds2", dsg).build() ;
@@ -74,11 +74,11 @@ public class TestMultipleEmbedded {
@Test
public void multiple_02() {
DatasetGraph dsg = dataset() ;
- int port1 = FusekiEnv.choosePort() ;
+ int port1 = FusekiLib.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port1).add("/ds1", dsg).build() ;
// Different port - good
- int port2 = FusekiEnv.choosePort() ;
+ int port2 = FusekiLib.choosePort() ;
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(port2).add("/ds2", dsg).build() ;
try {
@@ -96,11 +96,11 @@ public class TestMultipleEmbedded {
DatasetGraph dsg1 = dataset() ;
DatasetGraph dsg2 = dataset() ;
// Same name.
- int port1 = FusekiEnv.choosePort() ;
+ int port1 = FusekiLib.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port1).add("/ds", dsg1).build().start() ;
Txn.executeWrite(dsg1, ()->dsg1.add(q1));
- int port2 = FusekiEnv.choosePort() ;
+ int port2 = FusekiLib.choosePort() ;
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(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 = FusekiEnv.choosePort() ;
+ int port1 = FusekiLib.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port1).add("/ds1", dsg).build().start() ;
Txn.executeWrite(dsg, ()->dsg.add(q1));
- int port2 = FusekiEnv.choosePort() ;
+ int port2 = FusekiLib.choosePort() ;
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(port2).add("/ds2", dsg).build().start() ;
Txn.executeWrite(dsg, ()->dsg.add(q2));