Search in sources :

Example 36 with Event

use of org.xwiki.eventstream.Event in project xwiki-platform by xwiki.

the class DefaultMessageStream method getRecentMessagesForGroup.

@Override
public List<Event> getRecentMessagesForGroup(DocumentReference group, int limit, int offset) {
    List<Event> result = new ArrayList<Event>();
    try {
        Query q = this.qm.createQuery("where event.application = 'MessageStream' and event.type = 'groupMessage'" + " and event.stream = :group order by event.date desc", Query.XWQL);
        q.bindValue("group", this.serializer.serialize(group));
        q.setLimit(limit > 0 ? limit : 30).setOffset(offset >= 0 ? offset : 0);
        result = this.stream.searchEvents(q);
    } catch (QueryException ex) {
        LOG.warn("Failed to search group messages: {}", ex.getMessage());
    }
    return result;
}
Also used : QueryException(org.xwiki.query.QueryException) Query(org.xwiki.query.Query) ArrayList(java.util.ArrayList) Event(org.xwiki.eventstream.Event)

Example 37 with Event

use of org.xwiki.eventstream.Event in project xwiki-platform by xwiki.

the class MessageStreamTest method testPostDirectMessageWithNullMessage.

@Test
public void testPostDirectMessageWithNullMessage() throws Exception {
    Event postedMessage = setupForDirectMessage();
    this.stream.postDirectMessageToUser(null, this.targetUser);
    Assert.assertEquals(null, postedMessage.getBody());
}
Also used : Event(org.xwiki.eventstream.Event) DefaultEvent(org.xwiki.eventstream.internal.DefaultEvent) Test(org.junit.Test)

Example 38 with Event

use of org.xwiki.eventstream.Event in project xwiki-platform by xwiki.

the class MessageStreamTest method setupForPublicMessage.

private Event setupForPublicMessage() throws Exception {
    final Event e = setupForNewMessage();
    final DocumentAccessBridge mockBridge = getComponentManager().getInstance(DocumentAccessBridge.class);
    final EntityReferenceSerializer<String> mockSerializer = getComponentManager().getInstance(EntityReferenceSerializer.TYPE_STRING);
    getMockery().checking(new Expectations() {

        {
            exactly(1).of(mockBridge).getCurrentUserReference();
            will(returnValue(MessageStreamTest.this.currentUser));
            exactly(1).of(mockSerializer).serialize(MessageStreamTest.this.currentUser);
            will(returnValue("wiki:XWiki.JohnDoe"));
        }
    });
    return e;
}
Also used : Expectations(org.jmock.Expectations) DocumentAccessBridge(org.xwiki.bridge.DocumentAccessBridge) Event(org.xwiki.eventstream.Event) DefaultEvent(org.xwiki.eventstream.internal.DefaultEvent)

Example 39 with Event

use of org.xwiki.eventstream.Event in project xwiki-platform by xwiki.

the class MessageStreamTest method setupForPersonalMessage.

private Event setupForPersonalMessage() throws Exception {
    final Event e = setupForNewMessage();
    final DocumentAccessBridge mockBridge = getComponentManager().getInstance(DocumentAccessBridge.class);
    final EntityReferenceSerializer<String> mockSerializer = getComponentManager().getInstance(EntityReferenceSerializer.TYPE_STRING);
    getMockery().checking(new Expectations() {

        {
            exactly(1).of(mockBridge).getCurrentUserReference();
            will(returnValue(MessageStreamTest.this.currentUser));
            exactly(1).of(mockSerializer).serialize(MessageStreamTest.this.currentUser);
            will(returnValue("wiki:XWiki.JohnDoe"));
        }
    });
    return e;
}
Also used : Expectations(org.jmock.Expectations) DocumentAccessBridge(org.xwiki.bridge.DocumentAccessBridge) Event(org.xwiki.eventstream.Event) DefaultEvent(org.xwiki.eventstream.internal.DefaultEvent)

Example 40 with Event

use of org.xwiki.eventstream.Event in project xwiki-platform by xwiki.

the class MessageStreamTest method testPostPublicMessageWithEmptyMessage.

@Test
public void testPostPublicMessageWithEmptyMessage() throws Exception {
    Event postedMessage = setupForPublicMessage();
    this.stream.postPublicMessage("");
    Assert.assertEquals("", postedMessage.getBody());
}
Also used : Event(org.xwiki.eventstream.Event) DefaultEvent(org.xwiki.eventstream.internal.DefaultEvent) Test(org.junit.Test)

Aggregations

Event (org.xwiki.eventstream.Event)60 Test (org.junit.Test)31 DocumentReference (org.xwiki.model.reference.DocumentReference)21 DefaultEvent (org.xwiki.eventstream.internal.DefaultEvent)20 CompositeEvent (org.xwiki.notifications.CompositeEvent)17 ArrayList (java.util.ArrayList)7 Query (org.xwiki.query.Query)7 Date (java.util.Date)6 Expectations (org.jmock.Expectations)6 DocumentAccessBridge (org.xwiki.bridge.DocumentAccessBridge)5 QueryException (org.xwiki.query.QueryException)5 ObjectReference (org.xwiki.model.reference.ObjectReference)4 HashMap (java.util.HashMap)3 WikiReference (org.xwiki.model.reference.WikiReference)3 XWikiContext (com.xpn.xwiki.XWikiContext)2 ActivityEvent (com.xpn.xwiki.plugin.activitystream.api.ActivityEvent)2 EventStatus (org.xwiki.eventstream.EventStatus)2 EventStream (org.xwiki.eventstream.EventStream)2 EventStreamAddedEvent (org.xwiki.eventstream.events.EventStreamAddedEvent)2 SpaceReference (org.xwiki.model.reference.SpaceReference)2