1
2
3
4
5
6
7
8
9
10
11 package org.mule.providers.email.filters;
12
13 import org.mule.umo.UMOFilter;
14 import org.mule.umo.UMOMessage;
15 import org.mule.util.ClassUtils;
16
17 import javax.mail.Message;
18
19 import org.apache.commons.logging.Log;
20 import org.apache.commons.logging.LogFactory;
21
22
23
24
25
26 public abstract class AbstractMailFilter implements UMOFilter
27 {
28
29
30
31 protected transient Log logger = LogFactory.getLog(getClass());
32
33 public final boolean accept(UMOMessage message)
34 {
35 if (message == null)
36 {
37 return false;
38 }
39
40 Object object = message.getPayload();
41 if (object instanceof Message)
42 {
43 return accept((Message)object);
44 }
45 else
46 {
47 throw new IllegalArgumentException("The Mail filter does not understand: "
48 + ClassUtils.getSimpleName(object.getClass()));
49 }
50 }
51
52 public abstract boolean accept(Message message);
53 }