|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.astrogrid.samp.SampUtils
public class SampUtils
Contains static utility methods for use with the SAMP toolkit.
| Field Summary | |
|---|---|
static String |
LOCALHOST_PROP
Property which can be used to set name used for localhost in server endpoints. |
| Method Summary | |
|---|---|
static void |
checkList(List list)
Checks that a given List is legal for use in a SAMP context. |
static void |
checkMap(Map map)
Checks that a given Map is legal for use in a SAMP context. |
static void |
checkObject(Object obj)
Checks that a given object is legal for use in a SAMP context. |
static void |
checkString(String string)
Checks that a given String is legal for use in a SAMP context. |
static void |
checkUrl(String url)
Checks that a string is a legal URL. |
static boolean |
decodeBoolean(String s)
Returns the boolean value for a SAMP boolean string. |
static double |
decodeFloat(String s)
Returns the double value for a SAMP float string. |
static int |
decodeInt(String s)
Returns the integer value for a SAMP int string. |
static long |
decodeLong(String s)
Returns the integer value as a long for a SAMP int
string. |
static String |
encodeBoolean(boolean b)
Returns a SAMP boolean string representation of a boolean value. |
static String |
encodeFloat(double d)
Returns a SAMP float string representation of a floating point value. |
static String |
encodeInt(int i)
Returns a SAMP int string representation of an integer. |
static String |
encodeLong(long i)
Returns a SAMP int string representation of a long integer. |
static URL |
fileToUrl(File file)
Turns a File into a URL. |
static String |
formatObject(Object obj,
int indent)
Pretty-prints a SAMP object. |
static Object |
fromJson(String str)
Parses JSON text to give a SAMP object. |
static String |
getLocalhost()
Returns a string denoting the local host to be used for communicating local server endpoints and so on. |
static String |
getSampVersion()
Returns a string giving the version of the SAMP standard which this software implements. |
static String |
getSoftwareVersion()
Returns a string giving the version of this software package. |
static int |
getUnusedPort(int startPort)
Returns an unused port number on the local host. |
static boolean |
isStringChar(char c)
Indicates whether a given character is legal to include in a SAMP string. |
static Object |
parseValue(String str)
Parses a command-line string as a SAMP object. |
static String |
toJson(Object item,
boolean multiline)
Serializes a SAMP object to a JSON string. |
static String |
toString(Client client)
Returns a string representation of a client object. |
static String |
uriDecode(String text)
Reverses URI-style character escaping (%xy) on a string. |
static String |
uriEncode(String text)
Performs URI-style character escaping (%xy) on a string. |
static File |
urlToFile(URL url)
Attempts to interpret a URL as a file. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String LOCALHOST_PROP
getLocalhost(),
Constant Field Values| Method Detail |
|---|
public static String encodeInt(int i)
i - integer value
public static int decodeInt(String s)
s - SAMP int string
NumberFormatException - if conversion failspublic static String encodeLong(long i)
i - integer value
public static long decodeLong(String s)
long for a SAMP int
string.
s - SAMP int string
NumberFormatException - if conversion failspublic static String encodeFloat(double d)
d - double value
IllegalArgumentException - if d is NaN or infinitepublic static double decodeFloat(String s)
s - SAMP float string
NumberFormatException - if conversion failspublic static String encodeBoolean(boolean b)
b - boolean value
public static boolean decodeBoolean(String s)
s - SAMP boolean string
s is equal to zeropublic static void checkObject(Object obj)
obj - object to check
DataException - in case of an errorpublic static void checkMap(Map map)
map - map to check
DataException - in case of an errorcheckObject(java.lang.Object)public static void checkList(List list)
list - list to check
DataException - in case of errorcheckObject(java.lang.Object)public static void checkString(String string)
string - string to check
DataException - in case of errorpublic static boolean isStringChar(char c)
public static void checkUrl(String url)
url - string to check
DataException - if url is not a legal URLpublic static String toString(Client client)
client - client object
public static String formatObject(Object obj,
int indent)
obj - SAMP-friendly objectindent - base indent for text block
public static Object parseValue(String str)
str - command-line argument
public static String getLocalhost()
The value returned by default is the loopback address, "127.0.0.1".
However this behaviour can be overridden by setting the
LOCALHOST_PROP system property to the string which should
be returned instead.
This may be necessary if the loopback address is not appropriate,
for instance in the case of multiple configured loopback interfaces(?)
or where SAMP communication is required across different machines.
There are two special values which may be used for this property:
[hostname]:
uses the fully qualified domain name of the host[hostnumber]:
uses the IP number of the hostIn JSAMP version 0.3-1 and prior versions, the [hostname] behaviour was the default. Although this might be seen as more correct, in practice it could cause a lot of problems with DNS configurations which are incorrect or unstable (common in laptops outside their usual networks). See, for instance, AstroGrid bugzilla tickets 1799, 2151.
In JSAMP version 0.3-1 and prior versions, the property was
named samp.localhost rather than
jsamp.localhost. This name is still accepted for
backwards compatibility.
public static int getUnusedPort(int startPort)
throws IOException
startPort - suggested port number; may or may not be used
IOExceptionpublic static URL fileToUrl(File file)
file://localhost/abs-path" rather than
"file:abs-or-rel-path".
file - file
public static String uriDecode(String text)
URLDecoder,
this does not turn "+" characters into spaces.
text - escaped text
public static String uriEncode(String text)
URLEncoder,
this encodes spaces as "%20" and not "+".
text - unescaped text
public static File urlToFile(URL url)
url - URL, may or may not be file: protocol
public static Object fromJson(String str)
str - string to parse
public static String toJson(Object item,
boolean multiline)
item - to serializemultiline - true for formatted multiline output, false for a
single linepublic static String getSampVersion()
public static String getSoftwareVersion()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||