You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2007/10/29 02:37:32 UTC
svn commit: r589464 - in
/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node:
impl/DomainManagerServiceImpl.java impl/SCANodeImpl.java
impl/SCANodeUtil.java launch/SCANodeLauncher.java
Author: jsdelfino
Date: Sun Oct 28 18:37:31 2007
New Revision: 589464
URL: http://svn.apache.org/viewvc?rev=589464&view=rev
Log:
Use a more reliable way to get a free IP port. Changed the node launcher to pick a free IP port for the launched node.
Modified:
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeUtil.java
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/launch/SCANodeLauncher.java
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java?rev=589464&r1=589463&r2=589464&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java Sun Oct 28 18:37:31 2007
@@ -58,7 +58,6 @@
returnValue = domainManager.registerNode(nodeURI, nodeURL);
break;
} catch(UndeclaredThrowableException ex) {
- ex.printStackTrace();
logger.log(Level.INFO, "Trying to register node " +
nodeURI +
" at endpoint " +
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java?rev=589464&r1=589463&r2=589464&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java Sun Oct 28 18:37:31 2007
@@ -19,6 +19,8 @@
package org.apache.tuscany.sca.node.impl;
+import java.net.InetAddress;
+import java.net.ServerSocket;
import java.net.URI;
import java.net.URL;
import java.util.ArrayList;
@@ -131,6 +133,15 @@
*/
private void init() throws NodeException {
try {
+
+ // Generate a unique node URI
+ if (nodeURI == null) {
+
+ String host = InetAddress.getLocalHost().getHostName();
+ ServerSocket socket = new ServerSocket(0);
+ nodeURI = "http://" + host + ":" + socket.getLocalPort();
+ socket.close();
+ }
// create a node runtime for the domain contributions to run on
nodeRuntime = new ReallySmallRuntime(nodeClassLoader);
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeUtil.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeUtil.java?rev=589464&r1=589463&r2=589464&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeUtil.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeUtil.java Sun Oct 28 18:37:31 2007
@@ -156,7 +156,7 @@
* @return node manager url
*/
public static void fixUpNodeServiceUrls(List<Component> nodeComponents, URL nodeUrlString)
- throws MalformedURLException, UnknownHostException {
+ throws MalformedURLException, UnknownHostException, IOException {
for(Component component : nodeComponents){
for (ComponentService service : component.getServices() ){
@@ -197,7 +197,7 @@
* @param nodeURL the URL provided as the identifier of the node
*/
public static void fixUpNodeServiceBindingUrl(Binding binding, URL manualUrl)
- throws MalformedURLException, UnknownHostException{
+ throws MalformedURLException, UnknownHostException, IOException {
String urlString = binding.getURI();
@@ -243,25 +243,12 @@
* @param startPort
* @return
*/
- public static int findFreePort(int startPort)
+ public static int findFreePort(int startPort) throws IOException
{
- boolean portIsBusy = true;
- int freePort = startPort;
-
- do {
- try {
- ServerSocket socket = new ServerSocket(freePort);
- portIsBusy = false;
- socket.close();
- break;
- }
- catch (IOException ex) {
- // the port is busy
- freePort = freePort + 1;
- }
- } while (portIsBusy && freePort < 9999);
-
- return freePort;
+ ServerSocket socket = new ServerSocket(0);
+ int port = socket.getLocalPort();
+ socket.close();
+ return port;
}
/**
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/launch/SCANodeLauncher.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/launch/SCANodeLauncher.java?rev=589464&r1=589463&r2=589464&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/launch/SCANodeLauncher.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/launch/SCANodeLauncher.java Sun Oct 28 18:37:31 2007
@@ -40,7 +40,7 @@
System.out.println("Composite: " + compositeFile);
SCANodeFactory nodeFactory = SCANodeFactory.newInstance();
- node = nodeFactory.createSCANode("node", "http://localhost:9999");
+ node = nodeFactory.createSCANode(null, "http://localhost:9999");
ClassLoader classLoader = SCANodeLauncher.class.getClassLoader();
URL contribution = SCAContributionUtil.findContributionFromResource(classLoader, compositeFile);
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org