From 912f62936934cfeb0112291745d092f30a5bbed0 Mon Sep 17 00:00:00 2001 From: Stefano Bagnara Date: Mon, 18 Jul 2011 16:42:09 +0000 Subject: [PATCH] Support "DecodeMonitor" attribute in the default messageservicefactory. git-svn-id: https://svn.apache.org/repos/asf/james/mime4j/trunk@1147963 13f79535-47bb-0310-9956-ffa450edef68 --- .../mime4j/message/MessageServiceFactoryImpl.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/dom/src/main/java/org/apache/james/mime4j/message/MessageServiceFactoryImpl.java b/dom/src/main/java/org/apache/james/mime4j/message/MessageServiceFactoryImpl.java index fa0fb411..335799a1 100644 --- a/dom/src/main/java/org/apache/james/mime4j/message/MessageServiceFactoryImpl.java +++ b/dom/src/main/java/org/apache/james/mime4j/message/MessageServiceFactoryImpl.java @@ -18,6 +18,7 @@ ****************************************************************/ package org.apache.james.mime4j.message; +import org.apache.james.mime4j.codec.DecodeMonitor; import org.apache.james.mime4j.dom.MessageBuilder; import org.apache.james.mime4j.dom.MessageServiceFactory; import org.apache.james.mime4j.dom.MessageWriter; @@ -35,6 +36,7 @@ public class MessageServiceFactoryImpl extends MessageServiceFactory { private BodyFactory bodyFactory = null; private MimeConfig mimeEntityConfig = null; private BodyDescriptorBuilder bodyDescriptorBuilder = null; + private DecodeMonitor decodeMonitor = null; private Boolean flatMode = null; private Boolean contentDecoding = null; @@ -46,6 +48,7 @@ public MessageBuilder newMessageBuilder() { if (bodyDescriptorBuilder != null) m.setBodyDescriptorBuilder(bodyDescriptorBuilder); if (flatMode != null) m.setFlatMode(flatMode.booleanValue()); if (contentDecoding != null) m.setContentDecoding(contentDecoding.booleanValue()); + if (decodeMonitor != null) m.setDecodeMonitor(decodeMonitor); return m; } @@ -66,12 +69,17 @@ public void setAttribute(String name, Object value) if (value instanceof MimeConfig) { this.mimeEntityConfig = (MimeConfig) value; return; - } else throw new IllegalArgumentException("Unsupported attribute value type for "+name+", expected a MimeEntityConfig"); + } else throw new IllegalArgumentException("Unsupported attribute value type for "+name+", expected a MimeConfig"); } else if ("MutableBodyDescriptorFactory".equals(name)) { if (value instanceof BodyDescriptorBuilder) { this.bodyDescriptorBuilder = (BodyDescriptorBuilder) value; return; } else throw new IllegalArgumentException("Unsupported attribute value type for "+name+", expected a MutableBodyDescriptorFactory"); + } else if ("DecodeMonitor".equals(name)) { + if (value instanceof DecodeMonitor) { + this.decodeMonitor = (DecodeMonitor) value; + return; + } else throw new IllegalArgumentException("Unsupported attribute value type for "+name+", expected a DecodeMonitor"); } else if ("FlatMode".equals(name)) { if (value instanceof Boolean) { this.flatMode = (Boolean) value;