Package org.astrogrid.samp
Class Message
- java.lang.Object
-
- java.util.AbstractMap
-
- org.astrogrid.samp.SampMap
-
- org.astrogrid.samp.Message
-
- All Implemented Interfaces:
java.util.Map
public class Message extends SampMap
Represents an encoded SAMP Message.- Since:
- 14 Jul 2008
- Author:
- Mark Taylor
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringMTYPE_KEYKey for message MType.static java.lang.StringPARAMS_KEYKey for map of parameters used by this message.
-
Constructor Summary
Constructors Constructor Description Message()Constructs an empty message.Message(java.lang.String mtype)Constructs a message with a given MType.Message(java.lang.String mtype, java.util.Map params)Constructs a message with a given MType and params map.Message(java.util.Map map)Constructs a message based on an existing map.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description MessageaddParam(java.lang.String name, java.lang.Object value)Sets the value for a single entry in this message'ssamp.paramsmap.static MessageasMessage(java.util.Map map)Returns a given map as a Message object.voidcheck()Checks that this object is ready for use with the SAMP toolkit.java.lang.StringgetMType()Returns this message's MType.java.lang.ObjectgetParam(java.lang.String name)Returns the value of a single entry in this message'ssamp.paramsmap.java.util.MapgetParams()Returns this message's params map.java.lang.ObjectgetRequiredParam(java.lang.String name)Returns the value of a single entry in this message'ssamp.paramsmap, throwing an exception if it is not present.voidsetParams(java.util.Map params)Sets this message's params map.-
Methods inherited from class org.astrogrid.samp.SampMap
checkHasKeys, entrySet, getList, getMap, getString, getUrl, put
-
Methods inherited from class java.util.AbstractMap
clear, clone, containsKey, containsValue, equals, get, hashCode, isEmpty, keySet, putAll, remove, size, toString, values
-
-
-
-
Field Detail
-
MTYPE_KEY
public static final java.lang.String MTYPE_KEY
Key for message MType.- See Also:
- Constant Field Values
-
PARAMS_KEY
public static final java.lang.String PARAMS_KEY
Key for map of parameters used by this message.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Message
public Message()
Constructs an empty message.
-
Message
public Message(java.util.Map map)
Constructs a message based on an existing map.- Parameters:
map- map containing initial data for this object
-
Message
public Message(java.lang.String mtype, java.util.Map params)Constructs a message with a given MType and params map.- Parameters:
mtype- value forMTYPE_KEYkeyparams- value forPARAMS_KEYkey
-
Message
public Message(java.lang.String mtype)
Constructs a message with a given MType. The parameters map will be mutable.- Parameters:
mtype- value forMTYPE_KEYkey
-
-
Method Detail
-
getMType
public java.lang.String getMType()
Returns this message's MType.- Returns:
- value for
MTYPE_KEY
-
setParams
public void setParams(java.util.Map params)
Sets this message's params map.- Parameters:
params- value forPARAMS_KEY
-
getParams
public java.util.Map getParams()
Returns this message's params map.- Returns:
- value for
PARAMS_KEY
-
addParam
public Message addParam(java.lang.String name, java.lang.Object value)
Sets the value for a single entry in this message'ssamp.paramsmap.- Parameters:
name- param namevalue- param value
-
getParam
public java.lang.Object getParam(java.lang.String name)
Returns the value of a single entry in this message'ssamp.paramsmap. Null is returned if the parameter does not appear.- Parameters:
name- param name- Returns:
- param value, or null
-
getRequiredParam
public java.lang.Object getRequiredParam(java.lang.String name)
Returns the value of a single entry in this message'ssamp.paramsmap, throwing an exception if it is not present.- Parameters:
name- param name- Returns:
- param value
- Throws:
DataException- if no parameternameis present
-
check
public void check()
Description copied from class:SampMapChecks that this object is ready for use with the SAMP toolkit. As well as callingSampUtils.checkMap(java.util.Map)(ensuring that all keys are Strings, and all values Strings, Lists or Maps), subclass-specific invariants may be checked. In the case that there's something wrong, an informativeDataExceptionwill be thrown.
-
asMessage
public static Message asMessage(java.util.Map map)
Returns a given map as a Message object.- Parameters:
map- map- Returns:
- message
-
-