Jitsi: the OpenSource Java VoIP and Instant Messaging client.

net.java.sip.communicator.impl.protocol.mock
Class MockMultiUserChat

java.lang.Object
  extended by net.java.sip.communicator.service.protocol.AbstractOperationSetMultiUserChat
      extended by net.java.sip.communicator.impl.protocol.mock.MockMultiUserChat
All Implemented Interfaces:
OperationSet, OperationSetMultiUserChat

public class MockMultiUserChat
extends AbstractOperationSetMultiUserChat

Multiuser chat functionalities for the mock protocol.

Author:
Damian Minkov

Constructor Summary
MockMultiUserChat(MockProvider provider)
          Creates an instance of this operation set keeping a reference to the parent protocol provider and presence operation set.
 
Method Summary
 ChatRoom createChatRoom(String roomName, Map<String,Object> roomProperties)
          Creates a room with the named roomName and according to the specified roomProperties on the server that this protocol provider is currently connected to.
 ChatRoom findRoom(String roomName)
          Returns a reference to a chatRoom named roomName or null if no such room exists.
 List<ChatRoom> getCurrentlyJoinedChatRooms()
          Returns a list of the chat rooms that we have joined and are currently active in.
 List<String> getCurrentlyJoinedChatRooms(ChatRoomMember chatRoomMember)
          Returns a list of the chat rooms that chatRoomMember has joined and is currently active in.
 List<String> getExistingChatRooms()
          Returns the List of Strings indicating chat rooms currently available on the server that this protocol provider is connected to.
 boolean isMultiChatSupportedByContact(Contact contact)
          Returns true if contact supports multi user chat sessions.
 void rejectInvitation(ChatRoomInvitation invitation, String reason)
          Informs the sender of an invitation that we decline their invitation.
 
Methods inherited from class net.java.sip.communicator.service.protocol.AbstractOperationSetMultiUserChat
addInvitationListener, addInvitationRejectionListener, addPresenceListener, fireInvitationReceived, fireInvitationRejectedEvent, fireLocalUserPresenceEvent, removeInvitationListener, removeInvitationRejectionListener, removePresenceListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MockMultiUserChat

public MockMultiUserChat(MockProvider provider)
Creates an instance of this operation set keeping a reference to the parent protocol provider and presence operation set.

Parameters:
provider - The provider instance that creates us.
Method Detail

getExistingChatRooms

public List<String> getExistingChatRooms()
                                  throws OperationFailedException,
                                         OperationNotSupportedException
Returns the List of Strings indicating chat rooms currently available on the server that this protocol provider is connected to.

Returns:
a java.util.List of the name Strings for chat rooms that are currently available on the server that this protocol provider is connected to.
Throws:
OperationFailedException - if we failed retrieving this list from the server.
OperationNotSupportedException - if the server does not support multi user chat

getCurrentlyJoinedChatRooms

public List<ChatRoom> getCurrentlyJoinedChatRooms()
Returns a list of the chat rooms that we have joined and are currently active in.

Returns:
a List of the rooms where the user has joined using a given connection.

getCurrentlyJoinedChatRooms

public List<String> getCurrentlyJoinedChatRooms(ChatRoomMember chatRoomMember)
                                         throws OperationFailedException,
                                                OperationNotSupportedException
Returns a list of the chat rooms that chatRoomMember has joined and is currently active in.

Parameters:
chatRoomMember - the chatRoomMember whose current ChatRooms we will be querying.
Returns:
a list of the chat rooms that chatRoomMember has joined and is currently active in.
Throws:
OperationFailedException - if an error occurs while trying to discover the room on the server.
OperationNotSupportedException - if the server does not support multi user chat

createChatRoom

public ChatRoom createChatRoom(String roomName,
                               Map<String,Object> roomProperties)
                        throws OperationFailedException,
                               OperationNotSupportedException
Creates a room with the named roomName and according to the specified roomProperties on the server that this protocol provider is currently connected to. When the method returns the room the local user will not have joined it and thus will not receive messages on it until the ChatRoom.join() method is called.

Parameters:
roomName - the name of the ChatRoom to create.
roomProperties - properties specifying how the room should be created.
Returns:
the newly created ChatRoom named roomName.
Throws:
OperationFailedException - if the room couldn't be created for some reason (e.g. room already exists; user already joined to an existing room or user has no permissions to create a chat room).
OperationNotSupportedException - if chat room creation is not supported by this server

findRoom

public ChatRoom findRoom(String roomName)
                  throws OperationFailedException,
                         OperationNotSupportedException
Returns a reference to a chatRoom named roomName or null if no such room exists.

Parameters:
roomName - the name of the ChatRoom that we're looking for.
Returns:
the ChatRoom named roomName or null if no such room exists on the server that this provider is currently connected to.
Throws:
OperationFailedException - if an error occurs while trying to discover the room on the server.
OperationNotSupportedException - if the server does not support multi user chat

rejectInvitation

public void rejectInvitation(ChatRoomInvitation invitation,
                             String reason)
Informs the sender of an invitation that we decline their invitation.

Parameters:
invitation - the invitation we are rejecting.
reason - the reason for rejecting.

isMultiChatSupportedByContact

public boolean isMultiChatSupportedByContact(Contact contact)
Returns true if contact supports multi user chat sessions.

Parameters:
contact - reference to the contact whose support for chat rooms we are currently querying.
Returns:
a boolean indicating whether contact supports chatrooms.

Jitsi: the OpenSource Java VoIP and Instant Messaging client.

Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under LGPL license.