001
014
015 package com.liferay.portal.pop;
016
017 import aQute.bnd.annotation.ProviderType;
018
019 import com.liferay.portal.kernel.log.Log;
020 import com.liferay.portal.kernel.log.LogFactoryUtil;
021 import com.liferay.portal.kernel.pop.MessageListener;
022 import com.liferay.portal.kernel.pop.MessageListenerException;
023
024 import javax.mail.Message;
025
026
029 @ProviderType
030 public class MessageListenerWrapper implements MessageListener {
031
032 public MessageListenerWrapper(MessageListener listener) {
033 _listener = listener;
034 }
035
036 @Override
037 public boolean accept(String from, String recipient, Message message) {
038 if (_log.isDebugEnabled()) {
039 _log.debug("Listener " + _listener.getClass().getName());
040 _log.debug("From " + from);
041 _log.debug("Recipient " + recipient);
042 }
043
044 boolean value = _listener.accept(from, recipient, message);
045
046 if (_log.isDebugEnabled()) {
047 _log.debug("Accept " + value);
048 }
049
050 return value;
051 }
052
053 @Override
054 public void deliver(String from, String recipient, Message message)
055 throws MessageListenerException {
056
057 if (_log.isDebugEnabled()) {
058 _log.debug("Listener " + _listener.getClass().getName());
059 _log.debug("From " + from);
060 _log.debug("Recipient " + recipient);
061 _log.debug("Message " + message);
062 }
063
064 _listener.deliver(from, recipient, message);
065 }
066
067 @Override
068 public boolean equals(Object obj) {
069 if (this == obj) {
070 return true;
071 }
072
073 if (!(obj instanceof MessageListenerWrapper)) {
074 return false;
075 }
076
077 MessageListenerWrapper listener = (MessageListenerWrapper)obj;
078
079 String id = listener.getId();
080
081 return getId().equals(id);
082 }
083
084 @Override
085 public String getId() {
086 return _listener.getId();
087 }
088
089 public MessageListener getMessageListener() {
090 return _listener;
091 }
092
093 @Override
094 public int hashCode() {
095 return _listener.getId().hashCode();
096 }
097
098 private static final Log _log = LogFactoryUtil.getLog(
099 MessageListenerWrapper.class);
100
101 private final MessageListener _listener;
102
103 }