You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2010/04/23 19:41:43 UTC
svn commit: r937447 - in /james/imap/trunk:
mailbox/src/main/java/org/apache/james/imap/mailbox/
mailbox/src/main/java/org/apache/james/imap/mailbox/util/
processor/src/test/java/org/apache/james/imap/processor/base/
Author: norman
Date: Fri Apr 23 17:41:42 2010
New Revision: 937447
URL: http://svn.apache.org/viewvc?rev=937447&view=rev
Log:
Change interfaces to abstract classes to share some code
Modified:
james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxListener.java
james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MailboxEventDispatcher.java
james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java
james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java
james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
Modified: james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxListener.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxListener.java?rev=937447&r1=937446&r2=937447&view=diff
==============================================================================
--- james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxListener.java (original)
+++ james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxListener.java Fri Apr 23 17:41:42 2010
@@ -45,54 +45,82 @@ public interface MailboxListener {
* false when open
*/
boolean isClosed();
-
+
/**
* A mailbox event.
*/
- public interface Event {
+ public abstract class Event {
+ private final long sessionId;
+
+ public Event(final long sessionId) {
+ this.sessionId = sessionId;
+ }
+
/**
* Gets the id of the session which the event.
*
* @return session id
*/
- public long getSessionId();
+ public long getSessionId() {
+ return sessionId;
+ }
}
/**
* Indicates that mailbox has been deleted.
*/
- public interface MailboxDeletionEvent extends Event {
+ public abstract class MailboxDeletionEvent extends Event {
+
+ public MailboxDeletionEvent(long sessionId) {
+ super(sessionId);
+ }
}
/**
* Indicates that a mailbox has been renamed.
*/
- public interface MailboxRenamed extends Event {
+ public abstract class MailboxRenamed extends Event {
+ public MailboxRenamed(long sessionId) {
+ super(sessionId);
+ }
+
/**
* Gets the new name for this mailbox.
* @return name, not null
*/
- public String getNewName();
+ public abstract String getNewName();
}
/**
* A mailbox event related to a message.
*/
- public interface MessageEvent extends Event {
+ public abstract class MessageEvent extends Event {
+
+ public MessageEvent(long sessionId) {
+ super(sessionId);
+ }
/**
* Gets the message UID for the subject of this event.
*
* @return message uid
*/
- public long getSubjectUid();
+ public abstract long getSubjectUid();
}
- public abstract class Expunged implements MessageEvent {
+ public abstract class Expunged extends MessageEvent {
+
+ public Expunged(long sessionId) {
+ super(sessionId);
+ }
}
- public abstract class FlagsUpdated implements MessageEvent {
+ public abstract class FlagsUpdated extends MessageEvent {
+
+ public FlagsUpdated(long sessionId) {
+ super(sessionId);
+ }
/**
* Gets new flags for this message.
@@ -107,7 +135,11 @@ public interface MailboxListener {
public abstract Iterator<Flags.Flag> flagsIterator();
}
- public abstract class Added implements MessageEvent {
+ public abstract class Added extends MessageEvent {
+
+ public Added(long sessionId) {
+ super(sessionId);
+ }
}
}
Modified: james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MailboxEventDispatcher.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MailboxEventDispatcher.java?rev=937447&r1=937446&r2=937447&view=diff
==============================================================================
--- james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MailboxEventDispatcher.java (original)
+++ james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/util/MailboxEventDispatcher.java Fri Apr 23 17:41:42 2010
@@ -91,44 +91,30 @@ public class MailboxEventDispatcher impl
private final static class AddedImpl extends MailboxListener.Added {
- private final long sessionId;
-
private final long subjectUid;
public AddedImpl(final long sessionId, final long subjectUid) {
- super();
- this.sessionId = sessionId;
+ super(sessionId);
this.subjectUid = subjectUid;
}
public long getSubjectUid() {
return subjectUid;
}
-
- public long getSessionId() {
- return sessionId;
- }
}
private final static class ExpungedImpl extends MailboxListener.Expunged {
- private final long sessionId;
-
private final long subjectUid;
public ExpungedImpl(final long sessionId, final long subjectUid) {
- super();
- this.sessionId = sessionId;
+ super(sessionId);
this.subjectUid = subjectUid;
}
public long getSubjectUid() {
return subjectUid;
}
-
- public long getSessionId() {
- return sessionId;
- }
}
private final static class FlagsUpdatedImpl extends
@@ -146,8 +132,6 @@ public class MailboxEventDispatcher impl
private static final int NUMBER_OF_SYSTEM_FLAGS = 6;
- private final long sessionId;
-
private final long subjectUid;
private final boolean[] modifiedFlags;
@@ -170,8 +154,7 @@ public class MailboxEventDispatcher impl
boolean deletedUpdated, boolean draftUpdated,
boolean flaggedUpdated, boolean recentUpdated,
boolean seenUpdated) {
- super();
- this.sessionId = sessionId;
+ super(sessionId);
this.subjectUid = subjectUid;
this.modifiedFlags = new boolean[NUMBER_OF_SYSTEM_FLAGS];
this.modifiedFlags[0] = answeredUpdated;
@@ -193,14 +176,6 @@ public class MailboxEventDispatcher impl
/*
* (non-Javadoc)
- * @see org.apache.james.imap.mailbox.MailboxListener.Event#getSessionId()
- */
- public long getSessionId() {
- return sessionId;
- }
-
- /*
- * (non-Javadoc)
* @see org.apache.james.imap.mailbox.MailboxListener.FlagsUpdated#flagsIterator()
*/
public Iterator<Flag> flagsIterator() {
@@ -269,32 +244,19 @@ public class MailboxEventDispatcher impl
event(event);
}
- private static final class MailboxDeletionEventImpl implements
+ private static final class MailboxDeletionEventImpl extends
MailboxListener.MailboxDeletionEvent {
- private final long sessionId;
-
public MailboxDeletionEventImpl(final long sessionId) {
- super();
- this.sessionId = sessionId;
- }
-
- /*
- * (non-Javadoc)
- * @see org.apache.james.imap.mailbox.MailboxListener.Event#getSessionId()
- */
- public long getSessionId() {
- return sessionId;
+ super(sessionId);
}
}
- private static final class MailboxRenamedEventImpl implements MailboxListener.MailboxRenamed {
+ private static final class MailboxRenamedEventImpl extends MailboxListener.MailboxRenamed {
private final String newName;
- private final long sessionId;
public MailboxRenamedEventImpl(final String newName, final long sessionId) {
- super();
+ super(sessionId);
this.newName = newName;
- this.sessionId = sessionId;
}
/*
@@ -304,14 +266,6 @@ public class MailboxEventDispatcher impl
public String getNewName() {
return newName;
}
-
- /*
- * (non-Javadoc)
- * @see org.apache.james.imap.mailbox.MailboxListener.Event#getSessionId()
- */
- public long getSessionId() {
- return sessionId;
- }
}
/*
Modified: james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java?rev=937447&r1=937446&r2=937447&view=diff
==============================================================================
--- james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java (original)
+++ james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerAdded.java Fri Apr 23 17:41:42 2010
@@ -28,17 +28,13 @@ public class FakeMailboxListenerAdded ex
public long sessionId;
public FakeMailboxListenerAdded(long subjectUid, long sessionId) {
- super();
+ super(sessionId);
this.subjectUid = subjectUid;
- this.sessionId = sessionId;
}
public long getSubjectUid() {
return subjectUid;
}
- public long getSessionId() {
- return sessionId;
- }
}
Modified: james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java?rev=937447&r1=937446&r2=937447&view=diff
==============================================================================
--- james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java (original)
+++ james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/FakeMailboxListenerFlagsUpdate.java Fri Apr 23 17:41:42 2010
@@ -34,15 +34,12 @@ public class FakeMailboxListenerFlagsUpd
public long subjectUid;
- public long sessionId;
-
public Flags newFlags;
public FakeMailboxListenerFlagsUpdate(long subjectUid, Flags newFlags,
long sessionId) {
- super();
+ super(sessionId);
this.subjectUid = subjectUid;
- this.sessionId = sessionId;
this.newFlags = newFlags;
}
@@ -50,10 +47,6 @@ public class FakeMailboxListenerFlagsUpd
return subjectUid;
}
- public long getSessionId() {
- return sessionId;
- }
-
public Iterator<Flag> flagsIterator() {
return flags.iterator();
}
Modified: james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java?rev=937447&r1=937446&r2=937447&view=diff
==============================================================================
--- james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java (original)
+++ james/imap/trunk/processor/src/test/java/org/apache/james/imap/processor/base/MailboxEventAnalyserTest.java Fri Apr 23 17:41:42 2010
@@ -19,29 +19,24 @@
package org.apache.james.imap.processor.base;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
import java.util.Iterator;
import javax.mail.Flags;
import org.apache.james.imap.mailbox.MailboxListener;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
import org.junit.Before;
import org.junit.Test;
-import org.junit.runner.RunWith;
-@RunWith(JMock.class)
public class MailboxEventAnalyserTest {
private static final long BASE_SESSION_ID = 99;
- MailboxEventAnalyser analyser;
-
- private Mockery mockery = new JUnit4Mockery();
+ private MailboxEventAnalyser analyser;
@Before
public void setUp() throws Exception {
@@ -50,10 +45,8 @@ public class MailboxEventAnalyserTest {
@Test
public void testShouldBeNoSizeChangeOnOtherEvent() throws Exception {
- final MailboxListener.Event event = mockery.mock(MailboxListener.Event.class);
- mockery.checking(new Expectations() {{
- oneOf(event).getSessionId();will(returnValue(11L));
- }});
+ final MailboxListener.Event event = new MailboxListener.Event(0) {};
+
analyser.event(event);
assertFalse(analyser.isSizeChanged());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org