Package org.astrogrid.samp.gui
Class UniformCallActionManager
- java.lang.Object
-
- org.astrogrid.samp.gui.SendActionManager
-
- org.astrogrid.samp.gui.AbstractCallActionManager
-
- org.astrogrid.samp.gui.UniformCallActionManager
-
public abstract class UniformCallActionManager extends AbstractCallActionManager
SendActionManager subclass which works with messages of a single MType, using the Aysnchronous Call/Response delivery pattern. Concrete subclasses need only implementcreateMessage().- Since:
- 11 Nov 2008
- Author:
- Mark Taylor
-
-
Field Summary
-
Fields inherited from class org.astrogrid.samp.gui.SendActionManager
BROADCAST_TARGET
-
-
Constructor Summary
Constructors Constructor Description UniformCallActionManager(java.awt.Component parent, GuiHubConnector connector, java.lang.String mtype, java.lang.String sendType)Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected javax.swing.ActioncreateBroadcastAction()Must be implemented by concrete subclasses.protected abstract java.util.MapcreateMessage()Generates the message which is sent to one or all clients by this object's actions.protected java.util.MapcreateMessage(Client client)Implemented simply by callingcreateMessage().javax.swing.JMenucreateSendMenu()Returns a new targetted send menu with a title suitable for this object.javax.swing.ActiongetSendAction(Client client)Returns an action which can perform a single-client send associated with this object.-
Methods inherited from class org.astrogrid.samp.gui.AbstractCallActionManager
createResultHandler, createTag, dispose, registerHandler
-
Methods inherited from class org.astrogrid.samp.gui.SendActionManager
createSendMenu, createTargetAction, createTargetSelector, disposeSendMenu, getBroadcastAction, getBroadcastIcon, getClientListModel, getConnector, getSendIcon, setEnabled, updateState
-
-
-
-
Constructor Detail
-
UniformCallActionManager
public UniformCallActionManager(java.awt.Component parent, GuiHubConnector connector, java.lang.String mtype, java.lang.String sendType)Constructor.- Parameters:
parent- parent componentconnector- hub connectormtype- MType for messages transmitted by this object's actionssendType- short string identifying the kind of thing being sent (used for action descriptions etc)
-
-
Method Detail
-
createMessage
protected abstract java.util.Map createMessage() throws java.lang.ExceptionGenerates the message which is sent to one or all clients by this object's actions.- Returns:
Message-like Map representing message to transmit- Throws:
java.lang.Exception
-
createMessage
protected java.util.Map createMessage(Client client) throws java.lang.Exception
Implemented simply by callingcreateMessage().- Specified by:
createMessagein classAbstractCallActionManager- Parameters:
client- target- Returns:
- message
- Throws:
java.lang.Exception
-
createBroadcastAction
protected javax.swing.Action createBroadcastAction()
Description copied from class:AbstractCallActionManagerMust be implemented by concrete subclasses.- Specified by:
createBroadcastActionin classAbstractCallActionManager- Returns:
- broadcast action; may be null if broadcast is not required
-
createSendMenu
public javax.swing.JMenu createSendMenu()
Returns a new targetted send menu with a title suitable for this object.- Returns:
- new send menu
-
getSendAction
public javax.swing.Action getSendAction(Client client)
Description copied from class:SendActionManagerReturns an action which can perform a single-client send associated with this object. If it implementsequals(andhashCode) intelligently there will be efficiency advantages. The enabled status of such actions will be managed by this object.- Overrides:
getSendActionin classAbstractCallActionManager- Parameters:
client- recipient client- Returns:
- action which sends to the given client
-
-