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 java.lang.Object implements Controller, Initializable
-
-
Constructor Summary
Constructors Constructor Description DefaultController()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAgent(Agent agent)Add new agent.voidaddUser(User user)Add user to waiting queue.RoomcreateRoomInstance(Queue queue, User user)Creates instance ofRoominstance.voiddoSomething(Queue queue)java.util.Collection<ISequenceAction>getAddAgentToRoomActions(Queue queue, User user, Agent agent, Room room)PresenceModulegetAgentPresenceModule()EventBusgetEventBus()JoinQueueModulegetJoinQueueModule()MucControllerModulegetMucController()OfferModulegetOfferModule()QueuegetQueue(BareJID jid)ReturnQueueby JabberID.intgetQueueUserPosition(User user)Returns position of user in his queue.intgetQueueUserWaitingTime(User user)Estimated waiting time to handle user.java.util.Collection<ISequenceAction>getRoomCreateActions(Queue queue, User user, Room room)Returns collection ofActionsto create room in MUC Component.SchedulergetScheduler()StoregetStore()QueueStatusModulegetUserQueueStatusModule()voidinitialize()Method will be called, when bean will be created, configured and ready to use.voidofferAccepted(Offer offer)Offer is accepted.voidofferRejected(Offer offer)Offer is rejected and it will return to waiting queue.voidremoveAgent(Agent agent)Remove agent (because agent is no longe available for Workgroup Queues Component).voidremoveUser(User user)Remove user/voidsendNotifications()Sends all notifications to all users and all agents.voidsetAgentPresenceModule(PresenceModule agentPresenceModule)voidsetEventBus(EventBus eventBus)voidsetJoinQueueModule(JoinQueueModule joinQueueModule)voidsetMucController(MucControllerModule mucController)voidsetOfferModule(OfferModule offerModule)voidsetScheduler(Scheduler scheduler)voidsetStore(Store store)voidsetUserQueueStatusModule(QueueStatusModule userQueueStatusModule)voidupdateAgent(Agent agent)Update status of agent.voidupdateUser(User user)Update status of user.
-
-
-
Method Detail
-
addAgent
public void addAgent(Agent agent)
Description copied from interface:ControllerAdd new agent.- Specified by:
addAgentin interfaceController- Parameters:
agent- agent to add.
-
addUser
public void addUser(User user)
Description copied from interface:ControllerAdd user to waiting queue.- Specified by:
addUserin interfaceController- Parameters:
user- user to add.
-
createRoomInstance
public Room createRoomInstance(Queue queue, User user) throws TigaseStringprepException
Description copied from interface:ControllerCreates instance ofRoominstance. Do not creates Room on MUC Component!- Specified by:
createRoomInstancein interfaceController- Parameters:
queue- queue.user- user.- Returns:
- instance of
Roomclass. - Throws:
TigaseStringprepException- when invalid JID is processed somewhere.
-
doSomething
public void doSomething(Queue queue)
-
getAddAgentToRoomActions
public java.util.Collection<ISequenceAction> getAddAgentToRoomActions(Queue queue, User user, Agent agent, Room room)
Description copied from interface:ControllerReturns collection ofActionsto addAgentto room in MUC Component. Actions must be exevuted inSequencer.- Specified by:
getAddAgentToRoomActionsin interfaceController- Parameters:
queue- queue.user- user.agent- agent.room- room.- Returns:
- collections of
Actions.
-
getAgentPresenceModule
public PresenceModule getAgentPresenceModule()
-
setAgentPresenceModule
public void setAgentPresenceModule(PresenceModule agentPresenceModule)
-
getEventBus
public EventBus getEventBus()
-
setEventBus
public void setEventBus(EventBus eventBus)
-
getJoinQueueModule
public JoinQueueModule getJoinQueueModule()
-
setJoinQueueModule
public void setJoinQueueModule(JoinQueueModule joinQueueModule)
-
getMucController
public MucControllerModule getMucController()
-
setMucController
public void setMucController(MucControllerModule mucController)
-
getOfferModule
public OfferModule getOfferModule()
-
setOfferModule
public void setOfferModule(OfferModule offerModule)
-
getQueue
public Queue getQueue(BareJID jid)
Description copied from interface:ControllerReturnQueueby JabberID.- Specified by:
getQueuein interfaceController- Parameters:
jid- JID of workgroup queue.- Returns:
- queue or
nullif queue doesn't exists.
-
getQueueUserPosition
public int getQueueUserPosition(User user)
Description copied from interface:ControllerReturns position of user in his queue.- Specified by:
getQueueUserPositionin interfaceController- Parameters:
user- user- Returns:
- position in queue.
-
getQueueUserWaitingTime
public int getQueueUserWaitingTime(User user)
Description copied from interface:ControllerEstimated waiting time to handle user.- Specified by:
getQueueUserWaitingTimein interfaceController- Parameters:
user- user.- Returns:
- time in seconds.
-
getRoomCreateActions
public java.util.Collection<ISequenceAction> getRoomCreateActions(Queue queue, User user, Room room)
Description copied from interface:ControllerReturns collection ofActionsto create room in MUC Component. Actions must be executed inSequencer.- Specified by:
getRoomCreateActionsin interfaceController- Parameters:
queue- queueuser- userroom- room- Returns:
- collections of
Actions.
-
getScheduler
public Scheduler getScheduler()
-
setScheduler
public void setScheduler(Scheduler scheduler)
-
getStore
public Store getStore()
-
setStore
public void setStore(Store store)
-
getUserQueueStatusModule
public QueueStatusModule getUserQueueStatusModule()
-
setUserQueueStatusModule
public void setUserQueueStatusModule(QueueStatusModule userQueueStatusModule)
-
initialize
public void initialize()
Description copied from interface:InitializableMethod will be called, when bean will be created, configured and ready to use.- Specified by:
initializein interfaceInitializable
-
offerAccepted
public void offerAccepted(Offer offer)
Description copied from interface:ControllerOffer is accepted. Agent should be invited, room created, etc.- Specified by:
offerAcceptedin interfaceController- Parameters:
offer- offer to be accepted.
-
offerRejected
public void offerRejected(Offer offer)
Description copied from interface:ControllerOffer is rejected and it will return to waiting queue.- Specified by:
offerRejectedin interfaceController- Parameters:
offer- offer to be rejected.
-
removeAgent
public void removeAgent(Agent agent)
Description copied from interface:ControllerRemove agent (because agent is no longe available for Workgroup Queues Component).- Specified by:
removeAgentin interfaceController- Parameters:
agent- agent to be removed.
-
removeUser
public void removeUser(User user)
Description copied from interface:ControllerRemove user/- Specified by:
removeUserin interfaceController- Parameters:
user- user to be removed.
-
sendNotifications
public void sendNotifications()
Description copied from interface:ControllerSends all notifications to all users and all agents.- Specified by:
sendNotificationsin interfaceController
-
updateAgent
public void updateAgent(Agent agent)
Description copied from interface:ControllerUpdate status of agent.- Specified by:
updateAgentin interfaceController- Parameters:
agent- agent.
-
updateUser
public void updateUser(User user)
Description copied from interface:ControllerUpdate status of user.- Specified by:
updateUserin interfaceController- Parameters:
user- user.
-
-