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 2016/10/24 17:05:05 UTC
[3/3] jena git commit: Move choosePort() into FusekiEnv.
Move choosePort() into FusekiEnv.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/2e820783
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/2e820783
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/2e820783
Branch: refs/heads/master
Commit: 2e820783a3b0183e3c340804d2726763e088cac1
Parents: 2aedf71
Author: Andy Seaborne <an...@apache.org>
Authored: Mon Oct 24 17:57:18 2016 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Mon Oct 24 17:57:18 2016 +0100
----------------------------------------------------------------------
.../apache/jena/fuseki/server/FusekiEnv.java | 13 ++++++++++-
.../java/org/apache/jena/fuseki/ServerCtl.java | 13 +----------
.../fuseki/embedded/FusekiEmbeddedServer.java | 13 +++++++++--
.../jena/fuseki/embedded/FusekiTestServer.java | 15 ++----------
.../fuseki/embedded/TestEmbeddedFuseki.java | 24 ++++++++++++--------
.../fuseki/embedded/TestMultipleEmbedded.java | 15 ++++++------
6 files changed, 48 insertions(+), 45 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/2e820783/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 744b8b1..cd1b705 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,6 +21,7 @@ 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 ;
@@ -29,6 +30,7 @@ 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 ;
@@ -175,7 +177,16 @@ public class FusekiEnv {
x = System.getProperty(name) ;
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/2e820783/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 9353753..7df203b 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
@@ -22,8 +22,6 @@ import static org.apache.jena.fuseki.ServerCtl.ServerScope.CLASS ;
import static org.apache.jena.fuseki.ServerCtl.ServerScope.SUITE ;
import static org.apache.jena.fuseki.ServerCtl.ServerScope.TEST ;
-import java.io.IOException ;
-import java.net.ServerSocket ;
import java.nio.file.Paths ;
import java.util.concurrent.atomic.AtomicInteger ;
@@ -102,7 +100,7 @@ public class ServerCtl {
/*package : for import static */ enum ServerScope { SUITE, CLASS, TEST }
private static ServerScope serverScope = ServerScope.CLASS ;
- private static int currentPort = choosePort() ;
+ private static int currentPort = FusekiEnv.choosePort() ;
public static int port() {
return currentPort ;
@@ -271,13 +269,4 @@ public class ServerCtl {
catch (Throwable e) {e.printStackTrace(); throw e;}
}
}
-
- /** 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 for tests!");
- }
- }
}
http://git-wip-us.apache.org/repos/asf/jena/blob/2e820783/jena-fuseki2/jena-fuseki-embedded/src/main/java/org/apache/jena/fuseki/embedded/FusekiEmbeddedServer.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-embedded/src/main/java/org/apache/jena/fuseki/embedded/FusekiEmbeddedServer.java b/jena-fuseki2/jena-fuseki-embedded/src/main/java/org/apache/jena/fuseki/embedded/FusekiEmbeddedServer.java
index 9765919..fe1b7af 100644
--- a/jena-fuseki2/jena-fuseki-embedded/src/main/java/org/apache/jena/fuseki/embedded/FusekiEmbeddedServer.java
+++ b/jena-fuseki2/jena-fuseki-embedded/src/main/java/org/apache/jena/fuseki/embedded/FusekiEmbeddedServer.java
@@ -101,6 +101,15 @@ public class FusekiEmbeddedServer {
this.port = port ;
}
+ /**
+ * Return the port begin used.
+ * This will be the give port, which defauls to 3330, or
+ * the one actually allocated if the port was 0 ("choose a free port").
+ */
+ public int getPort() {
+ return port ;
+ }
+
/** Get the underlying Jetty server which has also been set up. */
public Server getJettyServer() {
return server ;
@@ -156,8 +165,8 @@ public class FusekiEmbeddedServer {
/** Set the port to run on. */
public Builder setPort(int port) {
- if ( port <= 0 )
- throw new IllegalArgumentException("port="+port+" : Port must be greater than zero.") ;
+ if ( port < 0 )
+ throw new IllegalArgumentException("Illegal port="+port+" : Port must be greater than or equal to zero.") ;
this.port = port ;
return this ;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/2e820783/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 599fb78..48dd278 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
@@ -22,14 +22,12 @@ 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 java.io.IOException ;
-import java.net.ServerSocket ;
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.FusekiException ;
+import org.apache.jena.fuseki.server.FusekiEnv;
import org.apache.jena.riot.web.HttpOp ;
import org.apache.jena.sparql.core.DatasetGraph ;
import org.apache.jena.sparql.core.DatasetGraphFactory ;
@@ -96,7 +94,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 = FusekiEnv.choosePort() ;
public static int port() {
return currentPort ;
@@ -229,13 +227,4 @@ public class FusekiTestServer {
catch (Throwable e) {e.printStackTrace(); throw e;}
}
}
-
- /** 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 for tests!");
- }
- }
}
http://git-wip-us.apache.org/repos/asf/jena/blob/2e820783/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 ca4d25c..141faab 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
@@ -35,9 +35,13 @@ import org.apache.jena.atlas.web.HttpException ;
import org.apache.jena.atlas.web.TypedInputStream ;
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.* ;
+import org.apache.jena.query.QueryExecution;
+import org.apache.jena.query.QueryExecutionFactory;
+import org.apache.jena.query.ResultSet;
+import org.apache.jena.query.ResultSetFormatter;
import org.apache.jena.riot.RDFDataMgr ;
import org.apache.jena.riot.RDFFormat ;
import org.apache.jena.riot.RDFLanguages ;
@@ -75,7 +79,7 @@ public class TestEmbeddedFuseki {
// Different dataset name.
@Test public void embedded_02() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = 0 ;//FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.make(port, "/ds2", dsg) ;
DataAccessPointRegistry registry = server.getDataAccessPointRegistry() ;
// But no /ds
@@ -90,7 +94,7 @@ public class TestEmbeddedFuseki {
// Different dataset name.
@Test public void embedded_03() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
.add("/ds1", dsg)
@@ -124,7 +128,7 @@ public class TestEmbeddedFuseki {
dataService.addEndpoint(OperationName.Quads_RW, "");
dataService.addEndpoint(OperationName.Query, "");
dataService.addEndpoint(OperationName.Update, "");
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -164,7 +168,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_05() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
.add("/ds0", dsg)
@@ -179,7 +183,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_06() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
.add("/ds0", dsg)
@@ -195,7 +199,7 @@ public class TestEmbeddedFuseki {
// Context path.
@Test public void embedded_07() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -213,7 +217,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_08() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -227,7 +231,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_09() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server = FusekiEmbeddedServer.create()
.setPort(port)
@@ -248,7 +252,7 @@ public class TestEmbeddedFuseki {
@Test public void embedded_20() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
DataService dSrv = new DataService(dsg) ;
dSrv.addEndpoint(OperationName.Query, "q") ;
http://git-wip-us.apache.org/repos/asf/jena/blob/2e820783/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 5ceab3e..3ed297d 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,6 +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.graph.Graph ;
import org.apache.jena.query.ResultSet ;
import org.apache.jena.query.ResultSetFormatter ;
@@ -51,7 +52,7 @@ public class TestMultipleEmbedded {
public void multiple_01() {
DatasetGraph dsg = dataset() ;
- int port = FusekiTestServer.choosePort() ;
+ int port = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port).add("/ds1", dsg).build() ;
// Same port - Bbad.
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(port).add("/ds2", dsg).build() ;
@@ -73,11 +74,11 @@ public class TestMultipleEmbedded {
@Test
public void multiple_02() {
DatasetGraph dsg = dataset() ;
- int port1 = FusekiTestServer.choosePort() ;
+ int port1 = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port1).add("/ds1", dsg).build() ;
// Different port - good
- int port2 = FusekiTestServer.choosePort() ;
+ int port2 = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(port2).add("/ds2", dsg).build() ;
try {
@@ -95,11 +96,11 @@ public class TestMultipleEmbedded {
DatasetGraph dsg1 = dataset() ;
DatasetGraph dsg2 = dataset() ;
// Same name.
- int port1 = FusekiTestServer.choosePort() ;
+ int port1 = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port1).add("/ds", dsg1).build().start() ;
Txn.executeWrite(dsg1, ()->dsg1.add(q1));
- int port2 = FusekiTestServer.choosePort() ;
+ int port2 = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(port2).add("/ds", dsg2).build().start() ;
Txn.executeWrite(dsg2, ()->dsg2.add(q2));
@@ -128,11 +129,11 @@ public class TestMultipleEmbedded {
public void multiple_04() {
DatasetGraph dsg = dataset() ;
- int port1 = FusekiTestServer.choosePort() ;
+ int port1 = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server1 = FusekiEmbeddedServer.create().setPort(port1).add("/ds1", dsg).build().start() ;
Txn.executeWrite(dsg, ()->dsg.add(q1));
- int port2 = FusekiTestServer.choosePort() ;
+ int port2 = FusekiEnv.choosePort() ;
FusekiEmbeddedServer server2 = FusekiEmbeddedServer.create().setPort(port2).add("/ds2", dsg).build().start() ;
Txn.executeWrite(dsg, ()->dsg.add(q2));