Package tigase.workgroupqueues.scheduler
Class DefaultController
java.lang.Object
tigase.workgroupqueues.scheduler.DefaultController
- All Implemented Interfaces:
Initializable
,Controller
@Bean(name="Controller",
active=true)
public class DefaultController
extends Object
implements Controller, Initializable
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Add new agent.void
Add user to waiting queue.createRoomInstance
(Queue queue, User user) Creates instance ofRoom
instance.void
doSomething
(Queue queue) getAddAgentToRoomActions
(Queue queue, User user, Agent agent, Room room) ReturnQueue
by JabberID.int
getQueueUserPosition
(User user) Returns position of user in his queue.int
getQueueUserWaitingTime
(User user) Estimated waiting time to handle user.getRoomCreateActions
(Queue queue, User user, Room room) Returns collection ofActions
to create room in MUC Component.getStore()
void
Method will be called, when bean will be created, configured and ready to use.void
offerAccepted
(Offer offer) Offer is accepted.void
offerRejected
(Offer offer) Offer is rejected and it will return to waiting queue.void
removeAgent
(Agent agent) Remove agent (because agent is no longe available for Workgroup Queues Component).void
removeUser
(User user) Remove user/void
Sends all notifications to all users and all agents.void
setAgentPresenceModule
(PresenceModule agentPresenceModule) void
setEventBus
(EventBus eventBus) void
setJoinQueueModule
(JoinQueueModule joinQueueModule) void
setMucController
(MucControllerModule mucController) void
setOfferModule
(OfferModule offerModule) void
setScheduler
(Scheduler scheduler) void
void
setUserQueueStatusModule
(QueueStatusModule userQueueStatusModule) void
updateAgent
(Agent agent) Update status of agent.void
updateUser
(User user) Update status of user.
-
Constructor Details
-
DefaultController
public DefaultController()
-
-
Method Details
-
addAgent
Description copied from interface:Controller
Add new agent.- Specified by:
addAgent
in interfaceController
- Parameters:
agent
- agent to add.
-
addUser
Description copied from interface:Controller
Add user to waiting queue.- Specified by:
addUser
in interfaceController
- Parameters:
user
- user to add.
-
createRoomInstance
Description copied from interface:Controller
Creates instance ofRoom
instance. Do not creates Room on MUC Component!- Specified by:
createRoomInstance
in interfaceController
- Parameters:
queue
- queue.user
- user.- Returns:
- instance of
Room
class. - Throws:
TigaseStringprepException
- when invalid JID is processed somewhere.
-
doSomething
-
getAddAgentToRoomActions
public Collection<ISequenceAction> getAddAgentToRoomActions(Queue queue, User user, Agent agent, Room room) Description copied from interface:Controller
Returns collection ofActions
to addAgent
to room in MUC Component. Actions must be exevuted inSequencer
.- Specified by:
getAddAgentToRoomActions
in interfaceController
- Parameters:
queue
- queue.user
- user.agent
- agent.room
- room.- Returns:
- collections of
Actions
.
-
getAgentPresenceModule
-
setAgentPresenceModule
-
getEventBus
-
setEventBus
-
getJoinQueueModule
-
setJoinQueueModule
-
getMucController
-
setMucController
-
getOfferModule
-
setOfferModule
-
getQueue
Description copied from interface:Controller
ReturnQueue
by JabberID.- Specified by:
getQueue
in interfaceController
- Parameters:
jid
- JID of workgroup queue.- Returns:
- queue or
null
if queue doesn't exists.
-
getQueueUserPosition
Description copied from interface:Controller
Returns position of user in his queue.- Specified by:
getQueueUserPosition
in interfaceController
- Parameters:
user
- user- Returns:
- position in queue.
-
getQueueUserWaitingTime
Description copied from interface:Controller
Estimated waiting time to handle user.- Specified by:
getQueueUserWaitingTime
in interfaceController
- Parameters:
user
- user.- Returns:
- time in seconds.
-
getRoomCreateActions
Description copied from interface:Controller
Returns collection ofActions
to create room in MUC Component. Actions must be executed inSequencer
.- Specified by:
getRoomCreateActions
in interfaceController
- Parameters:
queue
- queueuser
- userroom
- room- Returns:
- collections of
Actions
.
-
getScheduler
-
setScheduler
-
getStore
-
setStore
-
getUserQueueStatusModule
-
setUserQueueStatusModule
-
initialize
public void initialize()Description copied from interface:Initializable
Method will be called, when bean will be created, configured and ready to use.- Specified by:
initialize
in interfaceInitializable
-
offerAccepted
Description copied from interface:Controller
Offer is accepted. Agent should be invited, room created, etc.- Specified by:
offerAccepted
in interfaceController
- Parameters:
offer
- offer to be accepted.
-
offerRejected
Description copied from interface:Controller
Offer is rejected and it will return to waiting queue.- Specified by:
offerRejected
in interfaceController
- Parameters:
offer
- offer to be rejected.
-
removeAgent
Description copied from interface:Controller
Remove agent (because agent is no longe available for Workgroup Queues Component).- Specified by:
removeAgent
in interfaceController
- Parameters:
agent
- agent to be removed.
-
removeUser
Description copied from interface:Controller
Remove user/- Specified by:
removeUser
in interfaceController
- Parameters:
user
- user to be removed.
-
sendNotifications
public void sendNotifications()Description copied from interface:Controller
Sends all notifications to all users and all agents.- Specified by:
sendNotifications
in interfaceController
-
updateAgent
Description copied from interface:Controller
Update status of agent.- Specified by:
updateAgent
in interfaceController
- Parameters:
agent
- agent.
-
updateUser
Description copied from interface:Controller
Update status of user.- Specified by:
updateUser
in interfaceController
- Parameters:
user
- user.
-