Diff
Copied: tags/mule-transport-jersey-1.0-M2 (from rev 15, trunk)
( => )
Deleted: tags/mule-transport-jersey-1.0-M2/pom.xml
===================================================================
--- trunk/pom.xml 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/pom.xml 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,119 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.mule.transports</groupId>
- <artifactId>mule-transport-jersey</artifactId>
- <packaging>jar</packaging>
- <name>Mule Jersey Transport</name>
- <version>1.0-M1</version>
- <description>Jersey</description>
- <properties>
- <mule.version>2.0.0-RC2</mule.version>
- </properties>
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-webdav</artifactId>
- <version>1.0-beta-2</version>
- </extension>
- </extensions>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <finalName>${artifactId}-${version}</finalName>
- <descriptors>
- <descriptor>assembly.xml</descriptor>
- </descriptors>
- <appendAssemblyId>false</appendAssemblyId>
- </configuration>
- <executions>
- <execution>
- <id>make-assembly</id><!-- this is used for inheritance merges -->
- <phase>package</phase><!-- append to the packaging phase. -->
- <goals>
- <goal>attached</goal><!-- goals == mojos -->
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- <!-- Common Dependencies -->
- <dependencies>
- <dependency>
- <groupId>org.mule</groupId>
- <artifactId>mule-core</artifactId>
- <version>${mule.version}</version>
- </dependency>
- <dependency>
- <groupId>org.mule.transports</groupId>
- <artifactId>mule-transport-http</artifactId>
- <version>${mule.version}</version>
- </dependency>
- <dependency>
- <groupId>org.mule.modules</groupId>
- <artifactId>mule-module-spring-config</artifactId>
- <version>${mule.version}</version>
- </dependency>
- <dependency>
- <groupId>org.mule.modules</groupId>
- <artifactId>mule-module-client</artifactId>
- <version>${mule.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.mule.tests</groupId>
- <artifactId>mule-tests-functional</artifactId>
- <version>${mule.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>jersey</groupId>
- <artifactId>jersey</artifactId>
- <version>0.5-ea</version>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <repositories>
- <repository>
- <id>java.net</id>
- <name>java.net Repository</name>
- <url>http://download.java.net/maven/1/</url>
- <layout>legacy</layout>
- </repository>
- </repositories>
- <distributionManagement>
- <repository>
- <id>muleforge.webdav.releases</id>
- <url>dav:https://dav.muleforge.org/repository/${artifactId}/</url>
- </repository>
- <snapshotRepository>
- <id>muleforge.webdav.snapshots</id>
- <url>dav:https://dav.muleforge.org/snapshots.repository/${artifactId}/</url>
- </snapshotRepository>
- <site>
- <id>muleforge.webdav.sites</id>
- <url>dav:https://dav.muleforge.org/${artifactId}/</url>
- </site>
- </distributionManagement>
-
- <scm>
- <connection>scm:svn:https://svn.muleforge.org/mule-transport-jersey/tags/mule-transport-jersey-1.0-M1</connection>
- <developerConnection>scm:svn:https://svn.muleforge.org/mule-transport-jersey/tags/mule-transport-jersey-1.0-M1</developerConnection>
- <url>http://svn.mule-transport-jersey.muleforge.org/tags/mule-transport-jersey-1.0-M1</url>
- </scm>
-</project>
Copied: tags/mule-transport-jersey-1.0-M2/pom.xml (from rev 21,
trunk/pom.xml) (0 => 22)
--- tags/mule-transport-jersey-1.0-M2/pom.xml (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/pom.xml 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,120 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.mule.transports</groupId>
+ <artifactId>mule-transport-jersey</artifactId>
+ <packaging>jar</packaging>
+ <name>Mule Jersey Transport</name>
+ <version>1.0-M2</version>
+ <description>Jersey</description>
+ <properties>
+ <mule.version>2.0.0-RC3</mule.version>
+ </properties>
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-webdav</artifactId>
+ <version>1.0-beta-2</version>
+ </extension>
+ </extensions>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.2-beta-1</version>
+ <configuration>
+ <finalName>${artifactId}-${version}</finalName>
+ <descriptors>
+ <descriptor>assembly.xml</descriptor>
+ </descriptors>
+ <appendAssemblyId>false</appendAssemblyId>
+ </configuration>
+ <executions>
+ <execution>
+ <id>make-assembly</id><!-- this is used for inheritance merges -->
+ <phase>package</phase><!-- append to the packaging phase. -->
+ <goals>
+ <goal>attached</goal><!-- goals == mojos -->
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <!-- Common Dependencies -->
+ <dependencies>
+ <dependency>
+ <groupId>org.mule</groupId>
+ <artifactId>mule-core</artifactId>
+ <version>${mule.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mule.transports</groupId>
+ <artifactId>mule-transport-http</artifactId>
+ <version>${mule.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mule.modules</groupId>
+ <artifactId>mule-module-spring-config</artifactId>
+ <version>${mule.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mule.modules</groupId>
+ <artifactId>mule-module-client</artifactId>
+ <version>${mule.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mule.tests</groupId>
+ <artifactId>mule-tests-functional</artifactId>
+ <version>${mule.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>jersey</groupId>
+ <artifactId>jersey</artifactId>
+ <version>0.6-ea</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <repositories>
+ <repository>
+ <id>java.net</id>
+ <name>java.net Repository</name>
+ <url>http://download.java.net/maven/1/</url>
+ <layout>legacy</layout>
+ </repository>
+ </repositories>
+ <distributionManagement>
+ <repository>
+ <id>muleforge.webdav.releases</id>
+ <url>dav:https://dav.muleforge.org/repository/${artifactId}/</url>
+ </repository>
+ <snapshotRepository>
+ <id>muleforge.webdav.snapshots</id>
+ <url>dav:https://dav.muleforge.org/snapshots.repository/${artifactId}/</url>
+ </snapshotRepository>
+ <site>
+ <id>muleforge.webdav.sites</id>
+ <url>dav:https://dav.muleforge.org/${artifactId}/</url>
+ </site>
+ </distributionManagement>
+
+ <scm>
+ <connection>scm:svn:https://svn.muleforge.org/mule-transport-jersey/tags/mule-transport-jersey-1.0-M2</connection>
+ <developerConnection>scm:svn:https://svn.muleforge.org/mule-transport-jersey/tags/mule-transport-jersey-1.0-M2</developerConnection>
+ <url>http://svn.mule-transport-jersey.muleforge.org/tags/mule-transport-jersey-1.0-M2</url>
+ </scm>
+</project>
Deleted:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyConnector.java
(15 => 22)
--- trunk/src/main/java/org/mule/transport/jersey/JerseyConnector.java 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyConnector.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,165 +0,0 @@
-/*
- * $Id$
- * --------------------------------------------------------------------------------------
- * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com
- *
- * The software in this package is published under the terms of the MuleSource MPL
- * license, a copy of which has been included with this distribution in the
- * LICENSE.txt file.
- */
-
-package org.mule.transport.jersey;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.mule.api.MuleException;
-import org.mule.api.context.notification.ManagerNotificationListener;
-import org.mule.api.context.notification.ServerNotification;
-import org.mule.api.endpoint.EndpointBuilder;
-import org.mule.api.endpoint.EndpointURI;
-import org.mule.api.endpoint.ImmutableEndpoint;
-import org.mule.api.lifecycle.InitialisationException;
-import org.mule.api.service.Service;
-import org.mule.api.transport.MessageReceiver;
-import org.mule.context.notification.ManagerNotification;
-import org.mule.endpoint.EndpointURIEndpointBuilder;
-import org.mule.endpoint.InboundEndpoint;
-import org.mule.model.seda.SedaService;
-import org.mule.routing.inbound.DefaultInboundRouterCollection;
-import org.mule.transformer.TransformerUtils;
-import org.mule.transport.AbstractConnector;
-import org.mule.util.object.SingletonObjectFactory;
-
-/**
- *
- */
-public class JerseyConnector extends AbstractConnector implements ManagerNotificationListener {
- private List<SedaService> services = new ArrayList<SedaService>();
-
- public JerseyConnector() {
- super();
- registerSupportedProtocol("http");
- registerSupportedProtocol("https");
- registerSupportedProtocol("jms");
- registerSupportedProtocol("vm");
- registerSupportedProtocol("servlet");
- }
-
- @SuppressWarnings("unchecked")
- protected void registerReceiverWithMuleService(MessageReceiver receiver, EndpointURI ep)
- throws MuleException {
- JerseyMessageReceiver jReceiver = (JerseyMessageReceiver)receiver;
- String name = "foo";
-
- // TODO MULE-2228 Simplify this API
- SedaService c = new SedaService();
- c.setName("_jerseyConnector" + name + jReceiver.hashCode());
- c.setModel(muleContext.getRegistry().lookupSystemModel());
-
- SingletonObjectFactory of = new SingletonObjectFactory(jReceiver);
- of.setService(c);
- of.initialise();
- c.setServiceFactory(of);
-
- // No determine if the endpointUri requires a new connector to be
- // registed in the case of http we only need to register the new
- // endpointUri if the port is different
- String endpoint = receiver.getEndpointURI().getAddress();
-
- boolean sync = receiver.getEndpoint().isSynchronous();
-
- EndpointBuilder serviceEndpointbuilder = new EndpointURIEndpointBuilder(endpoint, muleContext);
- serviceEndpointbuilder.setSynchronous(sync);
- serviceEndpointbuilder.setName(ep.getScheme() + ":" + name);
- // Set the transformers on the endpoint too
- serviceEndpointbuilder.setTransformers(receiver.getEndpoint().getTransformers());
- serviceEndpointbuilder.setResponseTransformers(receiver.getEndpoint().getResponseTransformers());
- // set the filter on the axis endpoint on the real receiver endpoint
- serviceEndpointbuilder.setFilter(receiver.getEndpoint().getFilter());
- // set the Security filter on the axis endpoint on the real receiver
- // endpoint
- serviceEndpointbuilder.setSecurityFilter(receiver.getEndpoint().getSecurityFilter());
-
- // TODO Do we really need to modify the existing receiver endpoint? What
- // happnes if we don't security,
- // filters and transformers will get invoked twice?
- EndpointBuilder receiverEndpointBuilder = new EndpointURIEndpointBuilder(receiver.getEndpoint(),
- muleContext);
- receiverEndpointBuilder.setTransformers(TransformerUtils.UNDEFINED);
- receiverEndpointBuilder.setResponseTransformers(TransformerUtils.UNDEFINED);
- // Remove the Axis filter now
- receiverEndpointBuilder.setFilter(null);
- // Remove the Axis Receiver Security filter now
- receiverEndpointBuilder.setSecurityFilter(null);
-
- ImmutableEndpoint serviceEndpoint = muleContext.getRegistry().lookupEndpointFactory()
- .getInboundEndpoint(serviceEndpointbuilder);
-
- ImmutableEndpoint receiverEndpoint = muleContext.getRegistry().lookupEndpointFactory()
- .getInboundEndpoint(receiverEndpointBuilder);
-
- receiver.setEndpoint(receiverEndpoint);
-
- c.setInboundRouter(new DefaultInboundRouterCollection());
- c.getInboundRouter().addEndpoint(serviceEndpoint);
-
- services.add(c);
- }
-
- public void onNotification(ServerNotification event) {
- // We need to register the CXF service service once the model
- // starts because
- // when the model starts listeners on components are started, thus
- // all listener
- // need to be registered for this connector before the CXF service
- // service is registered. The implication of this is that to add a
- // new service and a
- // different http port the model needs to be restarted before the
- // listener is available
- if (event.getAction() == ManagerNotification.MANAGER_STARTED) {
- for (Service c : services) {
- try {
- muleContext.getRegistry().registerService(c);
- } catch (MuleException e) {
- handleException(e);
- }
- }
- }
- }
-
- @Override
- protected void doConnect() throws Exception {
- }
-
- @Override
- protected void doDisconnect() throws Exception {
- }
-
- @Override
- protected void doDispose() {
- }
-
- @Override
- protected void doInitialise() throws InitialisationException {
- // Registers the listener
- try {
- muleContext.registerListener(this);
- } catch (Exception e) {
- throw new InitialisationException(e, this);
- }
- }
-
- @Override
- protected void doStart() throws MuleException {
- }
-
- @Override
- protected void doStop() throws MuleException {
- }
-
- public String getProtocol() {
- return "jersey";
- }
-
-}
Copied:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyConnector.java
(from rev 20,
trunk/src/main/java/org/mule/transport/jersey/JerseyConnector.java)
(0 => 22)
--- tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyConnector.java (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyConnector.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,168 @@
+/*
+ * $Id$
+ * --------------------------------------------------------------------------------------
+ * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com
+ *
+ * The software in this package is published under the terms of the MuleSource MPL
+ * license, a copy of which has been included with this distribution in the
+ * LICENSE.txt file.
+ */
+
+package org.mule.transport.jersey;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.mule.api.MuleException;
+import org.mule.api.context.notification.MuleContextNotificationListener;
+import org.mule.api.context.notification.ServerNotification;
+import org.mule.api.endpoint.EndpointBuilder;
+import org.mule.api.endpoint.EndpointURI;
+import org.mule.api.endpoint.ImmutableEndpoint;
+import org.mule.api.endpoint.InboundEndpoint;
+import org.mule.api.lifecycle.InitialisationException;
+import org.mule.api.service.Service;
+import org.mule.api.transport.MessageReceiver;
+import org.mule.component.DefaultJavaComponent;
+import org.mule.context.notification.MuleContextNotification;
+import org.mule.endpoint.EndpointURIEndpointBuilder;
+import org.mule.model.seda.SedaService;
+import org.mule.object.SingletonObjectFactory;
+import org.mule.routing.inbound.DefaultInboundRouterCollection;
+import org.mule.transformer.TransformerUtils;
+import org.mule.transport.AbstractConnector;
+
+/**
+ *
+ */
+public class JerseyConnector extends AbstractConnector implements MuleContextNotificationListener {
+ private List<SedaService> services = new ArrayList<SedaService>();
+
+ public JerseyConnector() {
+ super();
+ }
+
+ public boolean supportsProtocol(String protocol)
+ {
+ // we can listen on any protocol provided that the necessary
+ // http headers are there.
+ return protocol.startsWith("jersey:");
+ }
+
+ @SuppressWarnings("unchecked")
+ protected void registerReceiverWithMuleService(MessageReceiver receiver, EndpointURI ep)
+ throws MuleException {
+ JerseyMessageReceiver jReceiver = (JerseyMessageReceiver)receiver;
+ // best I can come up with for now
+ String name = new Integer(jReceiver.hashCode()).toString();
+
+ // TODO MULE-2228 Simplify this API
+ SedaService c = new SedaService();
+ c.setName("_jerseyConnector" + name + jReceiver.hashCode());
+ c.setModel(muleContext.getRegistry().lookupSystemModel());
+
+ c.setComponent(new DefaultJavaComponent(new SingletonObjectFactory(jReceiver)));
+
+ // No determine if the endpointUri requires a new connector to be
+ // registed in the case of http we only need to register the new
+ // endpointUri if the port is different
+ String endpoint = receiver.getEndpointURI().getAddress();
+
+ boolean sync = receiver.getEndpoint().isSynchronous();
+
+ EndpointBuilder serviceEndpointbuilder = new EndpointURIEndpointBuilder(endpoint,
+ muleContext);
+ serviceEndpointbuilder.setSynchronous(sync);
+ serviceEndpointbuilder.setName(ep.getScheme() + ":" + name);
+ // Set the transformers on the endpoint too
+ serviceEndpointbuilder.setTransformers(receiver.getEndpoint().getTransformers().isEmpty() ? null
+ : receiver.getEndpoint().getTransformers());
+ serviceEndpointbuilder.setResponseTransformers(receiver.getEndpoint().getResponseTransformers().isEmpty() ? null
+ : receiver.getEndpoint().getResponseTransformers());
+ // set the filter on the axis endpoint on the real receiver endpoint
+ serviceEndpointbuilder.setFilter(receiver.getEndpoint().getFilter());
+ // set the Security filter on the axis endpoint on the real receiver
+ // endpoint
+ serviceEndpointbuilder.setSecurityFilter(receiver.getEndpoint().getSecurityFilter());
+
+ // TODO Do we really need to modify the existing receiver endpoint? What happnes if we don't security,
+ // filters and transformers will get invoked twice?
+ EndpointBuilder receiverEndpointBuilder = new EndpointURIEndpointBuilder(receiver.getEndpoint(),
+ muleContext);
+ // Remove the Axis filter now
+ receiverEndpointBuilder.setFilter(null);
+ // Remove the Axis Receiver Security filter now
+ receiverEndpointBuilder.setSecurityFilter(null);
+
+ InboundEndpoint serviceEndpoint = muleContext.getRegistry()
+ .lookupEndpointFactory()
+ .getInboundEndpoint(serviceEndpointbuilder);
+
+ InboundEndpoint receiverEndpoint = muleContext.getRegistry()
+ .lookupEndpointFactory()
+ .getInboundEndpoint(receiverEndpointBuilder);
+
+ receiver.setEndpoint(receiverEndpoint);
+
+ c.setInboundRouter(new DefaultInboundRouterCollection());
+ c.getInboundRouter().addEndpoint(serviceEndpoint);
+
+ services.add(c);
+ }
+
+ public void onNotification(ServerNotification event) {
+ // We need to register the CXF service service once the model
+ // starts because
+ // when the model starts listeners on components are started, thus
+ // all listener
+ // need to be registered for this connector before the CXF service
+ // service is registered. The implication of this is that to add a
+ // new service and a
+ // different http port the model needs to be restarted before the
+ // listener is available
+ if (event.getAction() == MuleContextNotification.CONTEXT_STARTED) {
+ for (Service c : services) {
+ try {
+ muleContext.getRegistry().registerService(c);
+ } catch (MuleException e) {
+ handleException(e);
+ }
+ }
+ }
+ }
+
+ @Override
+ protected void doConnect() throws Exception {
+ }
+
+ @Override
+ protected void doDisconnect() throws Exception {
+ }
+
+ @Override
+ protected void doDispose() {
+ }
+
+ @Override
+ protected void doInitialise() throws InitialisationException {
+ // Registers the listener
+ try {
+ muleContext.registerListener(this);
+ } catch (Exception e) {
+ throw new InitialisationException(e, this);
+ }
+ }
+
+ @Override
+ protected void doStart() throws MuleException {
+ }
+
+ @Override
+ protected void doStop() throws MuleException {
+ }
+
+ public String getProtocol() {
+ return "jersey";
+ }
+
+}
Deleted:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyMessageReceiver.java
(15 => 22)
--- trunk/src/main/java/org/mule/transport/jersey/JerseyMessageReceiver.java 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyMessageReceiver.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,96 +0,0 @@
-/*
- * $Id$
- * --------------------------------------------------------------------------------------
- * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com
- *
- * The software in this package is published under the terms of the MuleSource MPL
- * license, a copy of which has been included with this distribution in the
- * LICENSE.txt file.
- */
-
-package org.mule.transport.jersey;
-
-import com.sun.ws.rest.api.core.DefaultResourceConfig;
-import com.sun.ws.rest.api.core.ResourceConfig;
-import com.sun.ws.rest.spi.container.WebApplication;
-import com.sun.ws.rest.spi.container.WebApplicationFactory;
-
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.mule.api.MuleEventContext;
-import org.mule.api.MuleMessage;
-import org.mule.api.endpoint.Endpoint;
-import org.mule.api.lifecycle.Callable;
-import org.mule.api.lifecycle.CreateException;
-import org.mule.api.service.Service;
-import org.mule.api.transport.Connector;
-import org.mule.transport.AbstractMessageReceiver;
-import org.mule.transport.ConnectException;
-import org.mule.transport.jersey.server.MuleRequestAdaptor;
-import org.mule.transport.jersey.server.MuleResponseAdapter;
-
-/**
- * <code>JerseyMessageReceiver</code> TODO document
- */
-public class JerseyMessageReceiver extends AbstractMessageReceiver implements Callable {
-
- private WebApplication application;
-
- public JerseyMessageReceiver(Connector connector,
- Service service,
- Endpoint endpoint)
- throws CreateException {
- super(connector, service, endpoint);
- }
-
- public Object onCall(MuleEventContext event) throws Exception {
- MuleMessage message = event.getMessage();
-
- MuleRequestAdaptor req = new MuleRequestAdaptor(message, endpoint.getEndpointURI());
-
- MuleResponseAdapter res = new MuleResponseAdapter(req);
-
- application.handleRequest(req, res);
-
- res.commitStatusAndHeaders();
-
- return res.getMessage();
- }
-
- public void doConnect() throws Exception {
- final Set<Class> resources = new HashSet<Class>();
-
- try {
- Class c = service.getServiceFactory().getObjectClass();
- resources.add(c);
- } catch (Exception e) {
- throw new ConnectException(e, this);
- }
-
- DefaultResourceConfig resourceConfig = new DefaultResourceConfig(resources);
-
- application = WebApplicationFactory.createWebApplication();
- application.initiate(this, resourceConfig);
-
- ((JerseyConnector) connector).registerReceiverWithMuleService(this, getEndpointURI());
- }
-
- public void doDisconnect() throws ConnectException {
-
- }
-
- public void doStart() {
-
- }
-
- public void doStop() {
-
- }
-
- public void doDispose() {
-
- }
-
-}
Copied:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyMessageReceiver.java
(from rev 20,
trunk/src/main/java/org/mule/transport/jersey/JerseyMessageReceiver.java)
(0 => 22)
--- tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyMessageReceiver.java (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/JerseyMessageReceiver.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,97 @@
+/*
+ * $Id$
+ * --------------------------------------------------------------------------------------
+ * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com
+ *
+ * The software in this package is published under the terms of the MuleSource MPL
+ * license, a copy of which has been included with this distribution in the
+ * LICENSE.txt file.
+ */
+
+package org.mule.transport.jersey;
+
+import com.sun.ws.rest.api.core.DefaultResourceConfig;
+import com.sun.ws.rest.spi.container.WebApplication;
+import com.sun.ws.rest.spi.container.WebApplicationFactory;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.mule.api.MuleEventContext;
+import org.mule.api.MuleMessage;
+import org.mule.api.component.JavaComponent;
+import org.mule.api.endpoint.InboundEndpoint;
+import org.mule.api.lifecycle.Callable;
+import org.mule.api.lifecycle.CreateException;
+import org.mule.api.service.Service;
+import org.mule.api.transport.Connector;
+import org.mule.transport.AbstractMessageReceiver;
+import org.mule.transport.ConnectException;
+import org.mule.transport.jersey.server.MuleRequestAdaptor;
+import org.mule.transport.jersey.server.MuleResponseAdapter;
+
+/**
+ * <code>JerseyMessageReceiver</code> TODO document
+ */
+public class JerseyMessageReceiver extends AbstractMessageReceiver implements Callable {
+
+ private WebApplication application;
+
+ public JerseyMessageReceiver(Connector connector,
+ Service service,
+ InboundEndpoint endpoint)
+ throws CreateException {
+ super(connector, service, endpoint);
+ }
+
+ public Object onCall(MuleEventContext event) throws Exception {
+ MuleMessage message = event.getMessage();
+
+ MuleRequestAdaptor req = new MuleRequestAdaptor(application.getMessageBodyContext(),
+ message,
+ endpoint.getEndpointURI());
+
+ MuleResponseAdapter res = new MuleResponseAdapter(application.getMessageBodyContext(), req);
+
+ application.handleRequest(req, res);
+
+ res.commitStatusAndHeaders();
+
+ return res.getMessage();
+ }
+
+ public void doConnect() throws Exception {
+ final Set<Class> resources = new HashSet<Class>();
+
+ try {
+ Class c = ((JavaComponent) service.getComponent()).getObjectType();
+ resources.add(c);
+ } catch (Exception e) {
+ throw new ConnectException(e, this);
+ }
+
+ DefaultResourceConfig resourceConfig = new DefaultResourceConfig(resources);
+
+ application = WebApplicationFactory.createWebApplication();
+ application.initiate(resourceConfig);
+
+ ((JerseyConnector) connector).registerReceiverWithMuleService(this, getEndpointURI());
+ }
+
+ public void doDisconnect() throws ConnectException {
+
+ }
+
+ public void doStart() {
+
+ }
+
+ public void doStop() {
+
+ }
+
+ public void doDispose() {
+
+ }
+
+}
Deleted:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleRequestAdaptor.java
(15 => 22)
--- trunk/src/main/java/org/mule/transport/jersey/server/MuleRequestAdaptor.java 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleRequestAdaptor.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,95 +0,0 @@
-/*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
- *
- * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
- *
- * The contents of this file are subject to the terms of the Common Development
- * and Distribution License("CDDL") (the "License"). You may not use this file
- * except in compliance with the License.
- *
- * You can obtain a copy of the License at:
- * https://jersey.dev.java.net/license.txt
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * When distributing the Covered Code, include this CDDL Header Notice in each
- * file and include the License file at:
- * https://jersey.dev.java.net/license.txt
- * If applicable, add the following below this CDDL Header, with the fields
- * enclosed by brackets [] replaced by your own identifying information:
- * "Portions Copyrighted [year] [name of copyright owner]"
- */
-
-package org.mule.transport.jersey.server;
-
-import com.sun.ws.rest.impl.container.servlet.HttpRequestAdaptor;
-import com.sun.ws.rest.spi.container.AbstractContainerRequest;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.Collections;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.ws.rs.core.EntityTag;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.Variant;
-
-import org.mule.api.MuleMessage;
-import org.mule.api.endpoint.EndpointURI;
-import org.mule.api.transformer.TransformerException;
-import org.mule.transport.http.HttpConnector;
-
-/**
- * Adapts a HttpServletRequest to provide the methods of HttpRequest
- */
-public class MuleRequestAdaptor extends AbstractContainerRequest {
-
- private MuleMessage message;
-
- /** Creates a new instance of HttpRequestAdaptor
- * @throws TransformerException */
- public MuleRequestAdaptor(MuleMessage message,
- EndpointURI endpointUri) throws IOException, TransformerException {
- super((String)message.getProperty(HttpConnector.HTTP_METHOD_PROPERTY),
- getInputStream(message));
- this.message = message;
-
- String path = (String) message.getProperty(HttpConnector.HTTP_REQUEST_PROPERTY);
- String query = null;
- int queryIdx = path.indexOf('?');
- if (queryIdx != -1) {
- query = path.substring(queryIdx+1);
- path = path.substring(0, queryIdx);
- }
-
- try {
- this.baseUri = new URI(endpointUri.getScheme(), null, endpointUri.getHost(), endpointUri.getPort(), endpointUri.getPath(), null, null);
- this.completeUri = new URI(endpointUri.getScheme(), null, endpointUri.getHost(), endpointUri.getPort(), path, query, null);
- } catch (URISyntaxException e) {
- throw new RuntimeException("Could not create URI for " + endpointUri.toString());
- }
-
- copyHttpHeaders();
- }
-
- private static InputStream getInputStream(MuleMessage message) throws TransformerException {
- return (InputStream) message.getPayload(InputStream.class);
- }
-
- @SuppressWarnings("unchecked")
- protected void copyHttpHeaders() {
- MultivaluedMap<String, String> headers = getRequestHeaders();
- for (Iterator names = message.getPropertyNames().iterator(); names.hasNext();) {
- String name = (String) names.next();
- List<String> valueList = Collections.singletonList((String)message.getProperty(name));
-
- headers.put(name, valueList);
- }
- }
-
-}
Copied:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleRequestAdaptor.java
(from rev 20,
trunk/src/main/java/org/mule/transport/jersey/server/MuleRequestAdaptor.java)
(0 => 22)
--- tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleRequestAdaptor.java (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleRequestAdaptor.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,93 @@
+/*
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+ *
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+ *
+ * The contents of this file are subject to the terms of the Common Development
+ * and Distribution License("CDDL") (the "License"). You may not use this file
+ * except in compliance with the License.
+ *
+ * You can obtain a copy of the License at:
+ * https://jersey.dev.java.net/license.txt
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * When distributing the Covered Code, include this CDDL Header Notice in each
+ * file and include the License file at:
+ * https://jersey.dev.java.net/license.txt
+ * If applicable, add the following below this CDDL Header, with the fields
+ * enclosed by brackets [] replaced by your own identifying information:
+ * "Portions Copyrighted [year] [name of copyright owner]"
+ */
+
+package org.mule.transport.jersey.server;
+
+import com.sun.ws.rest.spi.container.AbstractContainerRequest;
+import com.sun.ws.rest.spi.container.MessageBodyContext;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.ws.rs.core.MultivaluedMap;
+
+import org.mule.api.MuleMessage;
+import org.mule.api.endpoint.EndpointURI;
+import org.mule.api.transformer.TransformerException;
+import org.mule.transport.http.HttpConnector;
+
+/**
+ * Adapts a HttpServletRequest to provide the methods of HttpRequest
+ */
+public class MuleRequestAdaptor extends AbstractContainerRequest {
+
+ private MuleMessage message;
+
+ /** Creates a new instance of HttpRequestAdaptor
+ * @throws TransformerException */
+ public MuleRequestAdaptor(MessageBodyContext context,
+ MuleMessage message,
+ EndpointURI endpointUri) throws IOException, TransformerException {
+ super(context,
+ (String)message.getProperty(HttpConnector.HTTP_METHOD_PROPERTY),
+ getInputStream(message));
+ this.message = message;
+
+ String path = (String) message.getProperty(HttpConnector.HTTP_REQUEST_PROPERTY);
+ String query = null;
+ int queryIdx = path.indexOf('?');
+ if (queryIdx != -1) {
+ query = path.substring(queryIdx+1);
+ path = path.substring(0, queryIdx);
+ }
+
+ try {
+ this.baseUri = new URI(endpointUri.getScheme(), null, endpointUri.getHost(), endpointUri.getPort(), endpointUri.getPath(), null, null);
+ this.completeUri = new URI(endpointUri.getScheme(), null, endpointUri.getHost(), endpointUri.getPort(), path, query, null);
+ } catch (URISyntaxException e) {
+ throw new RuntimeException("Could not create URI for " + endpointUri.toString());
+ }
+
+ copyHttpHeaders();
+ }
+
+ private static InputStream getInputStream(MuleMessage message) throws TransformerException {
+ return (InputStream) message.getPayload(InputStream.class);
+ }
+
+ @SuppressWarnings("unchecked")
+ protected void copyHttpHeaders() {
+ MultivaluedMap<String, String> headers = getRequestHeaders();
+ for (Iterator names = message.getPropertyNames().iterator(); names.hasNext();) {
+ String name = (String) names.next();
+ List<String> valueList = Collections.singletonList((String)message.getProperty(name));
+
+ headers.put(name, valueList);
+ }
+ }
+
+}
Deleted:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleResponseAdapter.java
(15 => 22)
--- trunk/src/main/java/org/mule/transport/jersey/server/MuleResponseAdapter.java 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleResponseAdapter.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,87 +0,0 @@
-/*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
- *
- * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
- *
- * The contents of this file are subject to the terms of the Common Development
- * and Distribution License("CDDL") (the "License"). You may not use this file
- * except in compliance with the License.
- *
- * You can obtain a copy of the License at:
- * https://jersey.dev.java.net/license.txt
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * When distributing the Covered Code, include this CDDL Header Notice in each
- * file and include the License file at:
- * https://jersey.dev.java.net/license.txt
- * If applicable, add the following below this CDDL Header, with the fields
- * enclosed by brackets [] replaced by your own identifying information:
- * "Portions Copyrighted [year] [name of copyright owner]"
- */
-
-package org.mule.transport.jersey.server;
-
-import com.sun.ws.rest.spi.container.AbstractContainerResponse;
-
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import org.mule.DefaultMuleMessage;
-import org.mule.api.MuleMessage;
-import org.mule.transport.DefaultMessageAdapter;
-import org.mule.transport.http.HttpConnector;
-
-/**
- * Adapts a HttpServletResponse to provide the methods of HttpResponse
- *
- */
-public final class MuleResponseAdapter extends AbstractContainerResponse {
-
- private OutputStream out;
- private MuleMessage message;
-
- public MuleResponseAdapter(MuleRequestAdaptor requestContext) {
- super(requestContext);
-
- this.message = new DefaultMuleMessage(new DefaultMessageAdapter(this));
- }
-
- @Override
- public void commitStatusAndHeaders() throws IOException {
- for (Map.Entry<String, List<Object>> e : this.getHttpHeaders().entrySet()) {
- List<String> values = new ArrayList<String>();
- for (Object v : e.getValue())
- values.add(getHeaderValue(v));
- message.setProperty(e.getKey(), values);
- }
-
- message.setProperty(HttpConnector.HTTP_STATUS_PROPERTY, this.getStatus());
- }
-
- @Override
- public OutputStream getUnderlyingOutputStream() throws IOException {
- if (out != null)
- return out;
-
- return out = new ByteArrayOutputStream();
- }
-
- public void setUnderlyingOutputStream(OutputStream out) {
- this.out = out;
- }
-
- public void commitAll() throws IOException {
- if (isCommitted()) return;
-
- writeEntity(getUnderlyingOutputStream());
- }
-
- public MuleMessage getMessage() {
- return message;
- }
-}
\ No newline at end of file
Copied:
tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleResponseAdapter.java
(from rev 20,
trunk/src/main/java/org/mule/transport/jersey/server/MuleResponseAdapter.java)
(0 => 22)
--- tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleResponseAdapter.java (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/main/java/org/mule/transport/jersey/server/MuleResponseAdapter.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,88 @@
+/*
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+ *
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+ *
+ * The contents of this file are subject to the terms of the Common Development
+ * and Distribution License("CDDL") (the "License"). You may not use this file
+ * except in compliance with the License.
+ *
+ * You can obtain a copy of the License at:
+ * https://jersey.dev.java.net/license.txt
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * When distributing the Covered Code, include this CDDL Header Notice in each
+ * file and include the License file at:
+ * https://jersey.dev.java.net/license.txt
+ * If applicable, add the following below this CDDL Header, with the fields
+ * enclosed by brackets [] replaced by your own identifying information:
+ * "Portions Copyrighted [year] [name of copyright owner]"
+ */
+
+package org.mule.transport.jersey.server;
+
+import com.sun.ws.rest.spi.container.AbstractContainerResponse;
+import com.sun.ws.rest.spi.container.MessageBodyContext;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+import org.mule.DefaultMuleMessage;
+import org.mule.api.MuleMessage;
+import org.mule.transport.DefaultMessageAdapter;
+import org.mule.transport.http.HttpConnector;
+
+/**
+ * Adapts a HttpServletResponse to provide the methods of HttpResponse
+ *
+ */
+public final class MuleResponseAdapter extends AbstractContainerResponse {
+
+ private OutputStream out;
+ private MuleMessage message;
+
+ public MuleResponseAdapter(MessageBodyContext bodyContext, MuleRequestAdaptor requestContext) {
+ super(bodyContext, requestContext);
+
+ this.message = new DefaultMuleMessage(new DefaultMessageAdapter(this));
+ }
+
+ @Override
+ public void commitStatusAndHeaders() throws IOException {
+ for (Map.Entry<String, List<Object>> e : this.getHttpHeaders().entrySet()) {
+ List<String> values = new ArrayList<String>();
+ for (Object v : e.getValue())
+ values.add(getHeaderValue(v));
+ message.setProperty(e.getKey(), values);
+ }
+
+ message.setProperty(HttpConnector.HTTP_STATUS_PROPERTY, this.getStatus());
+ }
+
+ @Override
+ public OutputStream getUnderlyingOutputStream() throws IOException {
+ if (out != null)
+ return out;
+
+ return out = new ByteArrayOutputStream();
+ }
+
+ public void setUnderlyingOutputStream(OutputStream out) {
+ this.out = out;
+ }
+
+ public void commitAll() throws IOException {
+ if (isCommitted()) return;
+
+ writeEntity(getUnderlyingOutputStream());
+ }
+
+ public MuleMessage getMessage() {
+ return message;
+ }
+}
\ No newline at end of file
Deleted:
tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/BasicJerseyTest.java
(15 => 22)
--- trunk/src/test/java/org/mule/transport/jersey/BasicJerseyTest.java 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/BasicJerseyTest.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,59 +0,0 @@
-package org.mule.transport.jersey;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.mule.api.MuleMessage;
-import org.mule.extras.client.MuleClient;
-import org.mule.tck.FunctionalTestCase;
-import org.mule.transport.http.HttpConnector;
-import org.mule.transport.http.HttpConstants;
-import org.mule.transport.jersey.server.MuleRequestAdaptor;
-import org.mule.transport.jersey.server.MuleResponseAdapter;
-
-public class BasicJerseyTest extends FunctionalTestCase {
-
- public void testBasic() throws Exception
- {
- MuleClient client = new MuleClient();
-
- MuleMessage result = client.send("http://localhost:63081/helloworld", "", null);
- assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
- assertEquals("Hello World", result.getPayloadAsString());
-
- // try invalid url
- result = client.send("http://localhost:63081/hello", "", null);
- assertEquals(404, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
-
- Map<String, String> props = new HashMap<String, String>();
- props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_GET);
- result = client.send("http://localhost:63081/helloworld", "", props);
- assertEquals(405, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
-
- props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_DELETE);
- result = client.send("http://localhost:63081/helloworld", "", props);
- assertEquals("Hello World Delete", result.getPayloadAsString());
- assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
- }
-
- public void testParams() throws Exception
- {
- MuleClient client = new MuleClient();
-
- Map<String, String> props = new HashMap<String, String>();
- props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_GET);
- MuleMessage result = client.send("http://localhost:63081/helloworld/sayHelloWithUri/Dan", "", props);
- assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
- assertEquals("Hello Dan", result.getPayloadAsString());
-
- result = client.send("http://localhost:63081/helloworld/sayHelloWithQuery?name=Dan", "", props);
- assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
- assertEquals("Hello Dan", result.getPayloadAsString());
- }
-
- @Override
- protected String getConfigResources() {
- return "basic-conf.xml";
- }
-
-}
Copied:
tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/BasicJerseyTest.java
(from rev 20,
trunk/src/test/java/org/mule/transport/jersey/BasicJerseyTest.java)
(0 => 22)
--- tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/BasicJerseyTest.java (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/BasicJerseyTest.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,57 @@
+package org.mule.transport.jersey;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.mule.api.MuleMessage;
+import org.mule.module.client.MuleClient;
+import org.mule.tck.FunctionalTestCase;
+import org.mule.transport.http.HttpConnector;
+import org.mule.transport.http.HttpConstants;
+
+public class BasicJerseyTest extends FunctionalTestCase {
+
+ public void testBasic() throws Exception
+ {
+ MuleClient client = new MuleClient();
+
+ MuleMessage result = client.send("http://localhost:63081/helloworld", "", null);
+ assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+ assertEquals("Hello World", result.getPayloadAsString());
+
+ // try invalid url
+ result = client.send("http://localhost:63081/hello", "", null);
+ assertEquals(404, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+
+ Map<String, String> props = new HashMap<String, String>();
+ props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_GET);
+ result = client.send("http://localhost:63081/helloworld", "", props);
+ assertEquals(405, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+
+ props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_DELETE);
+ result = client.send("http://localhost:63081/helloworld", "", props);
+ assertEquals("Hello World Delete", result.getPayloadAsString());
+ assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+ }
+
+ public void testParams() throws Exception
+ {
+ MuleClient client = new MuleClient();
+
+ Map<String, String> props = new HashMap<String, String>();
+ props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_GET);
+ MuleMessage result = client.send("http://localhost:63081/helloworld/sayHelloWithUri/Dan", "", props);
+ assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+ assertEquals("Hello Dan", result.getPayloadAsString());
+
+ result = client.send("http://localhost:63081/helloworld/sayHelloWithQuery?name=Dan", "", props);
+ assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+ assertEquals("Hello Dan", result.getPayloadAsString());
+ }
+
+ @Override
+ protected String getConfigResources() {
+ return "basic-conf.xml";
+ }
+
+}
Deleted:
tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/HelloWorldResource.java
(15 => 22)
--- trunk/src/test/java/org/mule/transport/jersey/HelloWorldResource.java 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/HelloWorldResource.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,39 +0,0 @@
-package org.mule.transport.jersey;
-
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.ProduceMime;
-import javax.ws.rs.QueryParam;
-import javax.ws.rs.UriParam;
-
-@Path("/helloworld")
-public class HelloWorldResource {
-
- @POST
- @ProduceMime("text/plain")
- public String sayHelloWorld() {
- return "Hello World";
- }
-
- @DELETE
- @ProduceMime("text/plain")
- public String deleteHelloWorld() {
- return "Hello World Delete";
- }
-
- @GET
- @ProduceMime("text/plain")
- @Path("/sayHelloWithUri/{name}")
- public String sayHelloWithUri(@UriParam("name") String name) {
- return "Hello " + name;
- }
-
- @GET
- @ProduceMime("text/plain")
- @Path("/sayHelloWithQuery")
- public String sayHelloWithQuery(@QueryParam("name") String name) {
- return "Hello " + name;
- }
-}
\ No newline at end of file
Copied:
tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/HelloWorldResource.java
(from rev 20,
trunk/src/test/java/org/mule/transport/jersey/HelloWorldResource.java)
(0 => 22)
--- tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/HelloWorldResource.java (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/HelloWorldResource.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,39 @@
+package org.mule.transport.jersey;
+
+import javax.ws.rs.DELETE;
+import javax.ws.rs.GET;
+import javax.ws.rs.POST;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.ProduceMime;
+import javax.ws.rs.QueryParam;
+
+@Path("/helloworld")
+public class HelloWorldResource {
+
+ @POST
+ @ProduceMime("text/plain")
+ public String sayHelloWorld() {
+ return "Hello World";
+ }
+
+ @DELETE
+ @ProduceMime("text/plain")
+ public String deleteHelloWorld() {
+ return "Hello World Delete";
+ }
+
+ @GET
+ @ProduceMime("text/plain")
+ @Path("/sayHelloWithUri/{name}")
+ public String sayHelloWithUri(@PathParam("name") String name) {
+ return "Hello " + name;
+ }
+
+ @GET
+ @ProduceMime("text/plain")
+ @Path("/sayHelloWithQuery")
+ public String sayHelloWithQuery(@QueryParam("name") String name) {
+ return "Hello " + name;
+ }
+}
\ No newline at end of file
Deleted:
tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/ServletJerseyTest.java
(15 => 22)
--- trunk/src/test/java/org/mule/transport/jersey/ServletJerseyTest.java 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/ServletJerseyTest.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,78 +0,0 @@
-package org.mule.transport.jersey;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.mortbay.http.HttpContext;
-import org.mortbay.http.SocketListener;
-import org.mortbay.jetty.Server;
-import org.mortbay.jetty.servlet.ServletHandler;
-import org.mortbay.util.InetAddrPort;
-import org.mule.api.MuleMessage;
-import org.mule.extras.client.MuleClient;
-import org.mule.tck.FunctionalTestCase;
-import org.mule.transport.http.HttpConnector;
-import org.mule.transport.http.HttpConstants;
-import org.mule.transport.http.servlet.MuleReceiverServlet;
-
-public class ServletJerseyTest extends FunctionalTestCase {
- public static final int HTTP_PORT = 63088;
-
- private Server httpServer;
-
- @Override
- protected void doSetUp() throws Exception {
- super.doSetUp();
- httpServer = new Server();
- SocketListener socketListener = new SocketListener(new InetAddrPort(HTTP_PORT));
- httpServer.addListener(socketListener);
-
- HttpContext context = httpServer.getContext("/");
- context.setRequestLog(null);
-
- ServletHandler handler = new ServletHandler();
- handler.addServlet("MuleReceiverServlet", "/*", MuleReceiverServlet.class
- .getName());
-
- context.addHandler(handler);
- httpServer.start();
- }
-
- @Override
- protected void doTearDown() throws Exception
- {
- super.doTearDown();
- if (httpServer != null && httpServer.isStarted())
- {
- httpServer.stop();
- }
- }
-
- public void testBasic() throws Exception
- {
- MuleClient client = new MuleClient();
-
- MuleMessage result = client.send("http://localhost:63088/base/helloworld", "", null);
- assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
- assertEquals("Hello World", result.getPayloadAsString());
-
- result = client.send("http://localhost:63088/base/hello", "", null);
- assertEquals(404, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
-
- Map<String, String> props = new HashMap<String, String>();
- props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_GET);
- result = client.send("http://localhost:63088/base/helloworld", "", props);
- assertEquals(405, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
-
- props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_DELETE);
- result = client.send("http://localhost:63088/base/helloworld", "", props);
- assertEquals("Hello World Delete", result.getPayloadAsString());
- assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
- }
-
- @Override
- protected String getConfigResources() {
- return "servlet-conf.xml";
- }
-
-}
Copied:
tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/ServletJerseyTest.java
(from rev 20,
trunk/src/test/java/org/mule/transport/jersey/ServletJerseyTest.java)
(0 => 22)
--- tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/ServletJerseyTest.java (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/test/java/org/mule/transport/jersey/ServletJerseyTest.java 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,78 @@
+package org.mule.transport.jersey;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.mortbay.http.HttpContext;
+import org.mortbay.http.SocketListener;
+import org.mortbay.jetty.Server;
+import org.mortbay.jetty.servlet.ServletHandler;
+import org.mortbay.util.InetAddrPort;
+import org.mule.api.MuleMessage;
+import org.mule.module.client.MuleClient;
+import org.mule.tck.FunctionalTestCase;
+import org.mule.transport.http.HttpConnector;
+import org.mule.transport.http.HttpConstants;
+import org.mule.transport.http.servlet.MuleReceiverServlet;
+
+public class ServletJerseyTest extends FunctionalTestCase {
+ public static final int HTTP_PORT = 63088;
+
+ private Server httpServer;
+
+ @Override
+ protected void doSetUp() throws Exception {
+ super.doSetUp();
+ httpServer = new Server();
+ SocketListener socketListener = new SocketListener(new InetAddrPort(HTTP_PORT));
+ httpServer.addListener(socketListener);
+
+ HttpContext context = httpServer.getContext("/");
+ context.setRequestLog(null);
+
+ ServletHandler handler = new ServletHandler();
+ handler.addServlet("MuleReceiverServlet", "/*", MuleReceiverServlet.class
+ .getName());
+
+ context.addHandler(handler);
+ httpServer.start();
+ }
+
+ @Override
+ protected void doTearDown() throws Exception
+ {
+ super.doTearDown();
+ if (httpServer != null && httpServer.isStarted())
+ {
+ httpServer.stop();
+ }
+ }
+
+ public void testBasic() throws Exception
+ {
+ MuleClient client = new MuleClient();
+
+ MuleMessage result = client.send("http://localhost:63088/base/helloworld", "", null);
+ assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+ assertEquals("Hello World", result.getPayloadAsString());
+
+ result = client.send("http://localhost:63088/base/hello", "", null);
+ assertEquals(404, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+
+ Map<String, String> props = new HashMap<String, String>();
+ props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_GET);
+ result = client.send("http://localhost:63088/base/helloworld", "", props);
+ assertEquals(405, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+
+ props.put(HttpConnector.HTTP_METHOD_PROPERTY, HttpConstants.METHOD_DELETE);
+ result = client.send("http://localhost:63088/base/helloworld", "", props);
+ assertEquals("Hello World Delete", result.getPayloadAsString());
+ assertEquals(200, result.getIntProperty(HttpConnector.HTTP_STATUS_PROPERTY, 0));
+ }
+
+ @Override
+ protected String getConfigResources() {
+ return "servlet-conf.xml";
+ }
+
+}
Deleted:
tags/mule-transport-jersey-1.0-M2/src/test/resources/mule-test-exclusions.txt
(15 => 22)
--- trunk/src/test/resources/mule-test-exclusions.txt 2008-03-03 22:47:41 UTC (rev 15)
+++ tags/mule-transport-jersey-1.0-M2/src/test/resources/mule-test-exclusions.txt 2008-03-21 18:51:03 UTC (rev 22)
@@ -1,5 +0,0 @@
-#
-# Test cases listed in this file are not run.
-#
-
-org.mule.transport.jersey.ServletJerseyTest
Copied:
tags/mule-transport-jersey-1.0-M2/src/test/resources/mule-test-exclusions.txt
(from rev 19, trunk/src/test/resources/mule-test-exclusions.txt) (0
=> 22)
--- tags/mule-transport-jersey-1.0-M2/src/test/resources/mule-test-exclusions.txt (rev 0)
+++ tags/mule-transport-jersey-1.0-M2/src/test/resources/mule-test-exclusions.txt 2008-03-21 18:51:03 UTC (rev 22)
@@ -0,0 +1,5 @@
+#
+# Test cases listed in this file are not run.
+#
+
+org.mule.transport.jersey.ServletJerseyTest
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://admin.muleforge.org/manage_email