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