use of org.olat.instantMessaging.model.Buddy in project openolat by klemens.
the class InstantMessageServiceTest method testGetBuddiesListenTo.
@Test
public void testGetBuddiesListenTo() {
DummyListener dummyListener = new DummyListener();
Identity chatter1 = JunitTestHelper.createAndPersistIdentityAsUser("Chat-1-" + UUID.randomUUID().toString());
Identity chatter2 = JunitTestHelper.createAndPersistIdentityAsUser("Chat-2-" + UUID.randomUUID().toString());
OLATResourceable chatResource = OresHelper.createOLATResourceableInstance(UUID.randomUUID().toString(), chatter1.getKey());
imService.listenChat(chatter1, chatResource, null, false, false, dummyListener);
imService.listenChat(chatter2, chatResource, "Chatter-2", true, true, dummyListener);
dbInstance.commitAndCloseSession();
// check if the buddies listen to the chat
List<Buddy> buddies = imService.getBuddiesListenTo(chatResource);
Assert.assertNotNull(buddies);
Assert.assertEquals(2, buddies.size());
// check the properties of buddy 1
Buddy buddy1 = buddies.get(0).getIdentityKey().equals(chatter1.getKey()) ? buddies.get(0) : buddies.get(1);
Assert.assertTrue(buddy1.getUsername().equals(chatter1.getName()));
Assert.assertFalse(buddy1.isAnonym());
Assert.assertFalse(buddy1.isVip());
// check the properties of buddy 2
Buddy buddy2 = buddies.get(0).getIdentityKey().equals(chatter2.getKey()) ? buddies.get(0) : buddies.get(1);
Assert.assertTrue(buddy2.getUsername().equals(chatter2.getName()));
Assert.assertTrue(buddy2.isAnonym());
Assert.assertTrue(buddy2.isVip());
}
use of org.olat.instantMessaging.model.Buddy in project openolat by klemens.
the class GroupController method doIm.
private void doIm(UserRequest ureq, Identity identity) {
Buddy buddy = imService.getBuddyById(identity.getKey());
OpenInstantMessageEvent e = new OpenInstantMessageEvent(ureq, buddy);
ureq.getUserSession().getSingleUserEventCenter().fireEventToListenersOf(e, InstantMessagingService.TOWER_EVENT_ORES);
}
use of org.olat.instantMessaging.model.Buddy in project openolat by klemens.
the class MembersAvatarDisplayRunController method doOpenChat.
private void doOpenChat(Member member, UserRequest ureq) {
Buddy buddy = imService.getBuddyById(member.getKey());
OpenInstantMessageEvent e = new OpenInstantMessageEvent(ureq, buddy);
ureq.getUserSession().getSingleUserEventCenter().fireEventToListenersOf(e, InstantMessagingService.TOWER_EVENT_ORES);
}
use of org.olat.instantMessaging.model.Buddy in project openolat by klemens.
the class MembersTableController method doOpenChat.
private void doOpenChat(MemberView member, UserRequest ureq) {
Buddy buddy = imService.getBuddyById(member.getIdentityKey());
OpenInstantMessageEvent e = new OpenInstantMessageEvent(ureq, buddy);
ureq.getUserSession().getSingleUserEventCenter().fireEventToListenersOf(e, InstantMessagingService.TOWER_EVENT_ORES);
}
use of org.olat.instantMessaging.model.Buddy in project openolat by klemens.
the class UserSessionController method event.
/**
* @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest,
* org.olat.core.gui.control.Controller, org.olat.core.gui.control.Event)
*/
public void event(UserRequest ureq, Controller source, Event event) {
if (source == tableCtr) {
if (event.getCommand().equals(Table.COMMANDLINK_ROWACTION_CLICKED)) {
TableEvent te = (TableEvent) event;
int selRow = te.getRowId();
// session info (we only have authenticated sessions here
UserSessionView usessw = (UserSessionView) tableCtr.getTableDataModel().getObject(selRow);
if ("sess.chat".equals(te.getActionId())) {
Buddy buddy = imService.getBuddyById(usessw.getIdentityKey());
OpenInstantMessageEvent e = new OpenInstantMessageEvent(ureq, buddy);
ureq.getUserSession().getSingleUserEventCenter().fireEventToListenersOf(e, InstantMessagingService.TOWER_EVENT_ORES);
} else if ("sess.details".equals(te.getActionId())) {
UserSession usess = usessw.getUserSession();
UserSessionDetailsController detailsCtrl = new UserSessionDetailsController(ureq, getWindowControl(), usess);
listenTo(detailsCtrl);
String username = usess.getIdentity() == null ? "-" : UserManager.getInstance().getUserDisplayName(usess.getIdentity());
stackController.pushController(username, detailsCtrl);
}
}
}
}
Aggregations