You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by me...@apache.org on 2007/01/27 14:04:20 UTC

svn commit: r500524 - in /incubator/tuscany/java/sca/services/discovery/jxta/src: main/java/org/apache/tuscany/service/discovery/jxta/ main/java/org/apache/tuscany/service/discovery/jxta/pdp/ main/java/org/apache/tuscany/service/discovery/jxta/prp/ mai...

Author: meerajk
Date: Sat Jan 27 05:04:19 2007
New Revision: 500524

URL: http://svn.apache.org/viewvc?view=rev&rev=500524
Log:
First working version

Modified:
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryService.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/test/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryServiceTestCase.java

Modified: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryService.java?view=diff&rev=500524&r1=500523&r2=500524
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryService.java (original)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryService.java Sat Jan 27 05:04:19 2007
@@ -151,22 +151,23 @@
     /**
      * Sends a message to the specified runtime.
      * 
-     * @param runtimeId Runtime id of recipient.
+     * @param runtimeId Runtime id of recipient. If null, the message is 
+     * broadcasted to all runtimes in the domain.
      * @param content Message content.
      * @return The message id. 
      */
     public int sendMessage(final String runtimeId, final XMLStreamReader content) {
         
-        if(runtimeId == null) {
-            throw new IllegalArgumentException("Runtime id is null");
-        }
         if(content == null) {
             throw new IllegalArgumentException("Content id is null");
         }
         
-        PeerID peerID = peerListener.getPeerId(runtimeId);
-        if(peerID == null) {
-            throw new JxtaException("Unrecognized runtime " + runtimeId);
+        PeerID peerID = null;
+        if(runtimeId != null) {
+            peerID = peerListener.getPeerId(runtimeId);
+            if(peerID == null) {
+                throw new JxtaException("Unrecognized runtime " + runtimeId);
+            }
         }
         
         final String message = StaxHelper.serialize(content);
@@ -176,7 +177,12 @@
         query.setHandlerName(TuscanyQueryHandler.class.getSimpleName());
         query.setQuery(message);
         query.setSrc(domainGroup.getPeerID().toString());
-        resolverService.sendQuery(peerID.toString(), query);
+        
+        if(peerID == null) {
+            resolverService.sendQuery(null, query);
+        } else {
+            resolverService.sendQuery(peerID.toString(), query);
+        }
         
         return messageId;
         

Modified: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java?view=diff&rev=500524&r1=500523&r2=500524
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java (original)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java Sat Jan 27 05:04:19 2007
@@ -105,9 +105,6 @@
                 String peerName = adv.getName();
                 if(!runtimeId.equals(peerName)) {
                     availablePeers.put(adv.getName(), adv.getPeerID());
-                    System.out.println (" Peer name = " + peerName);
-                    System.out.println (" Peer id = " + adv.getPeerID());
-                    System.out.println (" Peer Group = " + adv.getPeerGroupID());
                 }
             }
         }

Modified: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java?view=diff&rev=500524&r1=500523&r2=500524
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java (original)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java Sat Jan 27 05:04:19 2007
@@ -82,7 +82,7 @@
             responseMessage.setQueryId(queryId);
 
             resolverService.sendResponse(source, responseMessage);
-
+            
         }
         return ResolverService.OK;
         

Modified: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java?view=diff&rev=500524&r1=500523&r2=500524
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java (original)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java Sat Jan 27 05:04:19 2007
@@ -60,7 +60,7 @@
             StringBuffer xml = new StringBuffer();
 
             int event = reader.getEventType();
-            while (reader.hasNext()) {
+            while (true) {
 
                 switch (event) {
                     case XMLStreamConstants.START_ELEMENT:
@@ -79,11 +79,13 @@
                         onEndElement(reader, xml);
                         break;
                 }
-
+                
+                if (!reader.hasNext()) {
+                      break;
+                }
                 event = reader.next();
 
             }
-
             return xml.toString();
 
         } catch (XMLStreamException ex) {
@@ -161,9 +163,9 @@
      */
     private static void onEndElement(XMLStreamReader reader, StringBuffer xml) {
         String name = getName(reader);
-        xml.append("<");
+        xml.append("</");
         xml.append(name);
-        xml.append("/>");
+        xml.append(">");
     }
 
     /*

Modified: incubator/tuscany/java/sca/services/discovery/jxta/src/test/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryServiceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/discovery/jxta/src/test/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryServiceTestCase.java?view=diff&rev=500524&r1=500523&r2=500524
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/test/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryServiceTestCase.java (original)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/test/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryServiceTestCase.java Sat Jan 27 05:04:19 2007
@@ -23,9 +23,15 @@
 import java.net.URISyntaxException;
 import java.net.URL;
 
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamReader;
+
 import net.jxta.platform.NetworkConfigurator;
 
 import org.apache.tuscany.host.RuntimeInfo;
+import org.apache.tuscany.service.discovery.jxta.stax.StaxHelper;
+import org.apache.tuscany.spi.services.discovery.RequestListener;
+import org.apache.tuscany.spi.services.discovery.ResponseListener;
 import org.apache.tuscany.spi.services.work.NotificationListener;
 import org.apache.tuscany.spi.services.work.WorkScheduler;
 
@@ -49,11 +55,32 @@
 
     public void testStartAndStop() throws Exception {
         
-        JxtaDiscoveryService discoveryService = getDiscoveryService("runtime-2", "domain");
+        JxtaDiscoveryService discoveryService = getDiscoveryService("runtime-1", "domain");
         
         discoveryService.start();
         while(!discoveryService.isStarted()) {
         }
+        
+        RequestListener requestListener = new RequestListener() {
+            public XMLStreamReader onRequest(XMLStreamReader content) {
+                System.err.println("Request received:" + StaxHelper.serialize(content));
+                return StaxHelper.createReader("<response/>");
+            }            
+        };
+        
+        ResponseListener responseListener = new ResponseListener() {
+            public void onResponse(XMLStreamReader content, int messageId) {
+                System.err.println("Response received:" + StaxHelper.serialize(content));
+            }
+            
+        };
+        
+        discoveryService.registerRequestListener(new QName("request"), requestListener);
+        discoveryService.registerResponseListener(new QName("response"), responseListener);
+        
+        XMLStreamReader reader = StaxHelper.createReader("<request/>");
+        discoveryService.sendMessage(null, reader);
+        reader.close();
         
     }
     



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org