You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by ve...@apache.org on 2009/06/04 21:15:45 UTC

svn commit: r781833 - in /webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src: main/java/org/apache/ws/commons/tcpmon/core/engine/ main/java/org/apache/ws/commons/tcpmon/core/filter/http/ main/java/org/apache/ws/commons/tcpmon/core/filter/...

Author: veithen
Date: Thu Jun  4 19:15:44 2009
New Revision: 781833

URL: http://svn.apache.org/viewvc?rev=781833&view=rev
Log:
Simplified handling of content types and multipart messages.

Added:
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartContentFilterFactory.java   (contents, props changed)
      - copied, changed from r781795, webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartAwareContentFilterFactory.java
Removed:
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartAwareContentFilterFactory.java
Modified:
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/Connection.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/UriReplaceContentFilterFactory.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/http/HttpFilter.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ChainedContentFilterFactory.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ContentFilterFactory.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MimePartFilter.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilter.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/AbstractRequestResponse.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/DefaultContentFilterFactory.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/engine/InterceptorTest.java
    webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilterTest.java

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/Connection.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/Connection.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/Connection.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/Connection.java Thu Jun  4 19:15:44 2009
@@ -25,6 +25,7 @@
 import org.apache.ws.commons.tcpmon.core.filter.http.HttpRequestFilter;
 import org.apache.ws.commons.tcpmon.core.filter.http.HttpResponseFilter;
 import org.apache.ws.commons.tcpmon.core.filter.mime.ChainedContentFilterFactory;
+import org.apache.ws.commons.tcpmon.core.filter.mime.MultipartContentFilterFactory;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -148,7 +149,8 @@
                 requestContentFilterFactory.add(config.getRequestContentFilterFactory());
             }
             if (config.isReplaceURIsInContent()) {
-                requestContentFilterFactory.add(new UriReplaceContentFilterFactory(hostRewriter, UriReplaceContentFilterFactory.REQUEST));
+                requestContentFilterFactory.add(new MultipartContentFilterFactory(
+                        new UriReplaceContentFilterFactory(hostRewriter, UriReplaceContentFilterFactory.REQUEST)));
             }
             requestFilter.setContentFilterFactory(requestContentFilterFactory);
             config.applyRequestFilters(requestPipeline);
@@ -171,7 +173,8 @@
                 responseContentFilterFactory.add(config.getResponseContentFilterFactory());
             }
             if (config.isReplaceURIsInContent()) {
-                responseContentFilterFactory.add(new UriReplaceContentFilterFactory(hostRewriter, UriReplaceContentFilterFactory.RESPONSE));
+                responseContentFilterFactory.add(new MultipartContentFilterFactory(
+                        new UriReplaceContentFilterFactory(hostRewriter, UriReplaceContentFilterFactory.RESPONSE)));
             }
             responseFilter.setContentFilterFactory(responseContentFilterFactory);
             if (hostRewriter != null) {

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/UriReplaceContentFilterFactory.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/UriReplaceContentFilterFactory.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/UriReplaceContentFilterFactory.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/engine/UriReplaceContentFilterFactory.java Thu Jun  4 19:15:44 2009
@@ -23,9 +23,9 @@
 import org.apache.ws.commons.tcpmon.core.filter.ReplaceFilter;
 import org.apache.ws.commons.tcpmon.core.filter.StreamFilter;
 import org.apache.ws.commons.tcpmon.core.filter.http.HostRewriter;
-import org.apache.ws.commons.tcpmon.core.filter.mime.MultipartAwareContentFilterFactory;
+import org.apache.ws.commons.tcpmon.core.filter.mime.ContentFilterFactory;
 
-public class UriReplaceContentFilterFactory extends MultipartAwareContentFilterFactory {
+public class UriReplaceContentFilterFactory implements ContentFilterFactory {
     public static final int REQUEST = 0;
     public static final int RESPONSE = 1;
     
@@ -37,7 +37,7 @@
         this.direction = direction;
     }
 
-    protected StreamFilter[] getContentFilterChainForMimePart(MimeType contentType) {
+    public StreamFilter[] getContentFilterChain(MimeType contentType) {
         if (contentType.getPrimaryType().equalsIgnoreCase("text")
                 || contentType.getSubType().toLowerCase().indexOf("xml") != -1) {
             String orgBaseUri = hostRewriter.getOrgBaseUri();

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/http/HttpFilter.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/http/HttpFilter.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/http/HttpFilter.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/http/HttpFilter.java Thu Jun  4 19:15:44 2009
@@ -18,6 +18,9 @@
 
 import java.util.Iterator;
 
+import javax.activation.MimeType;
+import javax.activation.MimeTypeParseException;
+
 import org.apache.ws.commons.tcpmon.core.filter.HeaderParser;
 import org.apache.ws.commons.tcpmon.core.filter.ReadOnlyFilterWrapper;
 import org.apache.ws.commons.tcpmon.core.filter.Stream;
@@ -128,7 +131,11 @@
             } else if (name.equalsIgnoreCase("Content-Type")) {
                 hasEntity = true;
                 if (contentFilterFactory != null) {
-                    contentFilterChain = contentFilterFactory.getContentFilterChain(value);
+                    try {
+                        contentFilterChain = contentFilterFactory.getContentFilterChain(new MimeType(value));
+                    } catch (MimeTypeParseException ex) {
+                        // If the content type is unparseable, just continue
+                    }
                 }
             }
         }

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ChainedContentFilterFactory.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ChainedContentFilterFactory.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ChainedContentFilterFactory.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ChainedContentFilterFactory.java Thu Jun  4 19:15:44 2009
@@ -21,6 +21,8 @@
 import java.util.Iterator;
 import java.util.List;
 
+import javax.activation.MimeType;
+
 import org.apache.ws.commons.tcpmon.core.filter.StreamFilter;
 
 public class ChainedContentFilterFactory implements ContentFilterFactory {
@@ -30,7 +32,7 @@
         factories.add(factory);
     }
 
-    public StreamFilter[] getContentFilterChain(String contentType) {
+    public StreamFilter[] getContentFilterChain(MimeType contentType) {
         if (factories.isEmpty()) {
             return null;
         } else if (factories.size() == 1) {

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ContentFilterFactory.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ContentFilterFactory.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ContentFilterFactory.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/ContentFilterFactory.java Thu Jun  4 19:15:44 2009
@@ -16,6 +16,8 @@
 
 package org.apache.ws.commons.tcpmon.core.filter.mime;
 
+import javax.activation.MimeType;
+
 import org.apache.ws.commons.tcpmon.core.filter.StreamFilter;
 
 /**
@@ -30,5 +32,5 @@
      *         <code>null</code> (or an empty array) if no
      *         filter should be applied
      */
-    StreamFilter[] getContentFilterChain(String contentType);
+    StreamFilter[] getContentFilterChain(MimeType contentType);
 }

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MimePartFilter.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MimePartFilter.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MimePartFilter.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MimePartFilter.java Thu Jun  4 19:15:44 2009
@@ -16,6 +16,9 @@
 
 package org.apache.ws.commons.tcpmon.core.filter.mime;
 
+import javax.activation.MimeType;
+import javax.activation.MimeTypeParseException;
+
 import org.apache.ws.commons.tcpmon.core.filter.HeaderParser;
 import org.apache.ws.commons.tcpmon.core.filter.Stream;
 import org.apache.ws.commons.tcpmon.core.filter.StreamFilter;
@@ -41,7 +44,11 @@
                 HeaderParser headers = new HeaderParser(stream);
                 while (headers.available()) {
                     if (headers.getHeaderName().equalsIgnoreCase("Content-Type")) {
-                        contentFilterChain = contentFilterFactory.getContentFilterChain(headers.getHeaderValue());
+                        try {
+                            contentFilterChain = contentFilterFactory.getContentFilterChain(new MimeType(headers.getHeaderValue()));
+                        } catch (MimeTypeParseException ex) {
+                            // If the content type is unparseable, just continue
+                        }
                     }
                     headers.skip();
                 }

Copied: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartContentFilterFactory.java (from r781795, webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartAwareContentFilterFactory.java)
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartContentFilterFactory.java?p2=webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartContentFilterFactory.java&p1=webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartAwareContentFilterFactory.java&r1=781795&r2=781833&rev=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartAwareContentFilterFactory.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartContentFilterFactory.java Thu Jun  4 19:15:44 2009
@@ -17,27 +17,25 @@
 package org.apache.ws.commons.tcpmon.core.filter.mime;
 
 import javax.activation.MimeType;
-import javax.activation.MimeTypeParseException;
 
 import org.apache.ws.commons.tcpmon.core.filter.StreamFilter;
 
 /**
- * Partial {@link ContentFilterFactory} implementation that handles <tt>multipart/related</tt>.
+ * {@link ContentFilterFactory} implementation that handles <tt>multipart/related</tt>.
+ * It delegates to a different content filter factory for individual MIME parts.
  */
-public abstract class MultipartAwareContentFilterFactory implements ContentFilterFactory {
-    public StreamFilter[] getContentFilterChain(String contentType) {
-        MimeType ctype;
-        try {
-            ctype = new MimeType(contentType);
-        } catch (MimeTypeParseException ex) {
-            return null;
-        }
-        if (ctype.getBaseType().equalsIgnoreCase("multipart/related")) {
+public class MultipartContentFilterFactory implements ContentFilterFactory {
+    private final ContentFilterFactory parent;
+    
+    public MultipartContentFilterFactory(ContentFilterFactory parent) {
+        this.parent = parent;
+    }
+
+    public StreamFilter[] getContentFilterChain(MimeType contentType) {
+        if (contentType.getBaseType().equalsIgnoreCase("multipart/related")) {
             return new StreamFilter[] { new MultipartFilter(this, contentType) };
         } else {
-            return getContentFilterChainForMimePart(ctype);
+            return parent.getContentFilterChain(contentType);
         }
     }
-    
-    protected abstract StreamFilter[] getContentFilterChainForMimePart(MimeType contentType);
 }

Propchange: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartContentFilterFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartContentFilterFactory.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilter.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilter.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilter.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilter.java Thu Jun  4 19:15:44 2009
@@ -19,7 +19,6 @@
 import java.io.UnsupportedEncodingException;
 
 import javax.activation.MimeType;
-import javax.activation.MimeTypeParseException;
 
 import org.apache.ws.commons.tcpmon.core.filter.Stream;
 import org.apache.ws.commons.tcpmon.core.filter.StreamException;
@@ -41,15 +40,9 @@
     private final byte[] endBoundaryDelimiter;
     private int state = STATE_START;
 
-    public MultipartFilter(ContentFilterFactory contentFilterFactory, String contentType) {
+    public MultipartFilter(ContentFilterFactory contentFilterFactory, MimeType contentType) {
         this.contentFilterFactory = contentFilterFactory;
-        MimeType mimeType;
-        try {
-            mimeType = new MimeType(contentType);
-        } catch (MimeTypeParseException ex) {
-            throw new StreamException(ex);
-        }
-        String boundary = mimeType.getParameter("boundary");
+        String boundary = contentType.getParameter("boundary");
         try {
             startBoundaryDelimiter = ("--" + boundary + "\r\n").getBytes("ascii");
             boundaryDelimiter = ("\r\n--" + boundary + "\r\n").getBytes("ascii");

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/AbstractRequestResponse.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/AbstractRequestResponse.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/AbstractRequestResponse.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/AbstractRequestResponse.java Thu Jun  4 19:15:44 2009
@@ -33,6 +33,8 @@
 import org.apache.ws.commons.tcpmon.core.filter.RequestLineExtractor;
 import org.apache.ws.commons.tcpmon.core.filter.http.HttpRequestFilter;
 import org.apache.ws.commons.tcpmon.core.filter.http.HttpResponseFilter;
+import org.apache.ws.commons.tcpmon.core.filter.mime.ContentFilterFactory;
+import org.apache.ws.commons.tcpmon.core.filter.mime.MultipartContentFilterFactory;
 
 public abstract class AbstractRequestResponse implements RequestResponseListener {
     private static final String[] states = new String[] {
@@ -45,6 +47,9 @@
     
     private static final Charset UTF8 = Charset.forName("utf-8");
     
+    private static final ContentFilterFactory contentFilterFactory =
+            new MultipartContentFilterFactory(new DefaultContentFilterFactory());
+    
     private final Configuration config;
     private String targetHost;
     private int targetPort;
@@ -86,7 +91,7 @@
         });
         if (config.isXmlFormat()) {
             HttpRequestFilter filter = new HttpRequestFilter(true);
-            filter.setContentFilterFactory(new DefaultContentFilterFactory());
+            filter.setContentFilterFactory(contentFilterFactory);
             pipeline.addFilter(filter);
         }
         pipeline.addFilter(new CharsetDecoderFilter(getRequestWriter(), UTF8));
@@ -97,7 +102,7 @@
         Pipeline pipeline = new Pipeline();
         if (config.isXmlFormat()) {
             HttpResponseFilter filter = new HttpResponseFilter(true);
-            filter.setContentFilterFactory(new DefaultContentFilterFactory());
+            filter.setContentFilterFactory(contentFilterFactory);
             pipeline.addFilter(filter);
         }
         pipeline.addFilter(new CharsetDecoderFilter(getResponseWriter(), UTF8));

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/DefaultContentFilterFactory.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/DefaultContentFilterFactory.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/DefaultContentFilterFactory.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/main/java/org/apache/ws/commons/tcpmon/core/ui/DefaultContentFilterFactory.java Thu Jun  4 19:15:44 2009
@@ -29,17 +29,16 @@
 import org.apache.ws.commons.tcpmon.core.filter.StreamFilter;
 import org.apache.ws.commons.tcpmon.core.filter.XmlFormatFilter;
 import org.apache.ws.commons.tcpmon.core.filter.mime.ContentFilterFactory;
-import org.apache.ws.commons.tcpmon.core.filter.mime.MultipartAwareContentFilterFactory;
 
 /**
  * Default {@link ContentFilterFactory} implementation.
  */
-public class DefaultContentFilterFactory extends MultipartAwareContentFilterFactory {
+public class DefaultContentFilterFactory implements ContentFilterFactory {
     private static final Set xmlContentTypes = new HashSet(Arrays.asList(new String[] {
             "text/xml", "application/xml", "application/soap+xml", "application/xop+xml" }));
     private static final Charset UTF8 = Charset.forName("utf-8");
     
-    protected StreamFilter[] getContentFilterChainForMimePart(MimeType contentType) {
+    public StreamFilter[] getContentFilterChain(MimeType contentType) {
         String baseType = contentType.getBaseType().toLowerCase();
         boolean isXml = xmlContentTypes.contains(baseType);
         List filters = new ArrayList(2);

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/engine/InterceptorTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/engine/InterceptorTest.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/engine/InterceptorTest.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/engine/InterceptorTest.java Thu Jun  4 19:15:44 2009
@@ -18,6 +18,8 @@
 
 import java.io.UnsupportedEncodingException;
 
+import javax.activation.MimeType;
+
 import junit.framework.TestCase;
 
 import org.apache.http.HttpResponse;
@@ -39,7 +41,7 @@
         configBuilder.setTargetPort(5555);
         configBuilder.setListenPort(8000);
         configBuilder.setRequestContentFilterFactory(new ContentFilterFactory() {
-            public StreamFilter[] getContentFilterChain(String contentType) {
+            public StreamFilter[] getContentFilterChain(MimeType contentType) {
                 try {
                     return new StreamFilter[] { new ReplaceFilter("pattern", "replacement", "ascii") };
                 } catch (UnsupportedEncodingException ex) {

Modified: webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilterTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilterTest.java?rev=781833&r1=781832&r2=781833&view=diff
==============================================================================
--- webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilterTest.java (original)
+++ webservices/commons/trunk/modules/tcpmon/modules/tcpmon-core/src/test/java/org/apache/ws/commons/tcpmon/core/filter/mime/MultipartFilterTest.java Thu Jun  4 19:15:44 2009
@@ -20,6 +20,7 @@
 import java.io.UnsupportedEncodingException;
 import java.util.Properties;
 
+import javax.activation.MimeType;
 import javax.mail.Session;
 import javax.mail.internet.MimeBodyPart;
 import javax.mail.internet.MimeMessage;
@@ -49,7 +50,7 @@
         mp.writeTo(baos);
         
         ContentFilterFactory cff = new ContentFilterFactory() {
-            public StreamFilter[] getContentFilterChain(String contentType) {
+            public StreamFilter[] getContentFilterChain(MimeType contentType) {
                 try {
                     return new StreamFilter[] { new ReplaceFilter("test", "TEST", "ascii") };
                 } catch (UnsupportedEncodingException ex) {
@@ -58,7 +59,7 @@
             }
         };
         
-        byte[] filtered = TestUtil.filter(new MultipartFilter(cff, contentType), baos.toByteArray());
+        byte[] filtered = TestUtil.filter(new MultipartFilter(cff, new MimeType(contentType)), baos.toByteArray());
         MimeMultipart mp2 = new MimeMultipart(new ByteArrayDataSource(filtered, contentType));
         assertEquals(2, mp2.getCount());
         assertEquals("TEST", mp2.getBodyPart(0).getContent());