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 08:12:46 UTC

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

Author: meerajk
Date: Fri Jan 26 23:12:45 2007
New Revision: 500496

URL: http://svn.apache.org/viewvc?view=rev&rev=500496
Log:
added stax helper

Added:
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java
      - copied, changed from r500434, incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/PeerListener.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java
      - copied, changed from r500434, incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/TuscanyQueryHandler.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java   (with props)
Removed:
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/AdvertismentHelper.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/PeerListener.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/TuscanyQueryHandler.java
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/resources/pipe.adv
Modified:
    incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/JxtaDiscoveryService.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=500496&r1=500495&r2=500496
==============================================================================
--- 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 Fri Jan 26 23:12:45 2007
@@ -42,6 +42,9 @@
 import net.jxta.resolver.QueryHandler;
 import net.jxta.resolver.ResolverService;
 
+import org.apache.tuscany.service.discovery.jxta.pdp.PeerListener;
+import org.apache.tuscany.service.discovery.jxta.prp.TuscanyQueryHandler;
+import org.apache.tuscany.service.discovery.jxta.stax.StaxHelper;
 import org.apache.tuscany.spi.annotation.Autowire;
 import org.apache.tuscany.spi.services.discovery.AbstractDiscoveryService;
 import org.apache.tuscany.spi.services.work.WorkScheduler;
@@ -166,8 +169,7 @@
             throw new JxtaException("Unrecognized runtime " + runtimeId);
         }
         
-        // TODO get message from XML stream reader
-        final String message = null;
+        final String message = StaxHelper.serialize(content);
         int messageId = messageIdGenerator.incrementAndGet();
         
         ResolverQuery query = new ResolverQuery();

Copied: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java (from r500434, incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/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=500496&p1=incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/PeerListener.java&r1=500434&p2=incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java&r2=500496
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/PeerListener.java (original)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/pdp/PeerListener.java Fri Jan 26 23:12:45 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.service.discovery.jxta;
+package org.apache.tuscany.service.discovery.jxta.pdp;
 
 import java.util.Enumeration;
 import java.util.HashMap;

Copied: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java (from r500434, incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/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=500496&p1=incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/TuscanyQueryHandler.java&r1=500434&p2=incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java&r2=500496
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/TuscanyQueryHandler.java (original)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/prp/TuscanyQueryHandler.java Fri Jan 26 23:12:45 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.    
  */
-package org.apache.tuscany.service.discovery.jxta;
+package org.apache.tuscany.service.discovery.jxta.prp;
 
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamReader;
@@ -27,6 +27,8 @@
 import net.jxta.resolver.QueryHandler;
 import net.jxta.resolver.ResolverService;
 
+import org.apache.tuscany.service.discovery.jxta.JxtaDiscoveryService;
+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;
 
@@ -66,15 +68,13 @@
         final String source = queryMessage.getSrc();
         final String handler = queryMessage.getHandlerName();
         
-        XMLStreamReader requestReader = null;
-        
-        // TODO extract QName from the message
-        final QName messageType = null;
+        final QName messageType = StaxHelper.getDocumentElementQName(message);
         RequestListener messageListener = discoveryService.getRequestListener(messageType);
         if(messageListener != null) {
             
+            XMLStreamReader requestReader = StaxHelper.createReader(message);
             XMLStreamReader responseReader = messageListener.onRequest(requestReader);
-            String response = null;
+            String response = StaxHelper.serialize(responseReader);
             
             ResolverResponse responseMessage = new ResolverResponse();
             responseMessage.setResponse(response);
@@ -96,14 +96,11 @@
         final String message = responseMessage.getResponse();
         final int queryId = responseMessage.getQueryId();
         
-        XMLStreamReader responseReader = null;
-        
-        // TODO extract QName from the message
-        final QName messageType = null;
+        final QName messageType = StaxHelper.getDocumentElementQName(message);
         ResponseListener messageListener = discoveryService.getResponseListener(messageType);
-        if(messageListener != null) {            
+        if(messageListener != null) {     
+            XMLStreamReader responseReader = StaxHelper.createReader(message);       
             messageListener.onResponse(responseReader, queryId);
-
         }
         
     }

Added: 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=auto&rev=500496
==============================================================================
--- incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java (added)
+++ incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java Fri Jan 26 23:12:45 2007
@@ -0,0 +1,93 @@
+/*
+ * 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.tuscany.service.discovery.jxta.stax;
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import org.apache.tuscany.service.discovery.jxta.JxtaException;
+
+/**
+ * Utility for stax operations.
+ * 
+ * @version $Revision$ $Date$
+ *
+ */
+public abstract class StaxHelper {
+    
+    /** XML input factory. */
+    private static final XMLInputFactory xmlFactory = XMLInputFactory.newInstance("javax.xml.stream.XMLInputFactory", StaxHelper.class.getClassLoader());;
+    
+    /**
+     * Utility constructor.
+     */
+    private StaxHelper() {
+    }
+    
+    /**
+     * Serializes the infoset in the stream reader.
+     * 
+     * @param reader Stream reader.
+     * @return Serialized XML.
+     */
+    public static final String serialize(XMLStreamReader reader) {
+        return null;
+    }
+    
+    /**
+     * Creates a stream reader to the serialized XML.
+     * 
+     * @param xml Serialized XML to which reader is to be created.
+     * @return XML stream reader instance.
+     */
+    public static final XMLStreamReader createReader(String xml) {
+        
+        try {
+            InputStream in = new ByteArrayInputStream(xml.getBytes());
+            return xmlFactory.createXMLStreamReader(in);
+        } catch (XMLStreamException ex) {
+            throw new JxtaException(ex);
+        }
+        
+    }
+    
+    /**
+     * Returns the qualified name of the document element.
+     * 
+     * @param xml Serialized xml that needs to be checked.
+     * @return Qualified name of the document element.
+     */
+    public static final QName getDocumentElementQName(String xml) {
+        
+        try {
+            XMLStreamReader reader = createReader(xml);
+            reader.next();
+            return reader.getName();
+        } catch (XMLStreamException ex) {
+            throw new JxtaException(ex);
+        }
+        
+    }
+
+}

Propchange: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/services/discovery/jxta/src/main/java/org/apache/tuscany/service/discovery/jxta/stax/StaxHelper.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date



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