com.sun.star.uno

Class AnyConverter

public class AnyConverter extends Object

This class provides static methods which aim at exploring the contents of an Any and extracting its value. All public methods take an Object argument that either is the immediate object, such as Boolean, Type, interface implementation, or an Any that contains an object.
The methods which extract the value do a widening conversion. See the method comments for the respective conversions.
Method Summary
static TypegetType(Object object)
Determines the type of an any object.
static booleanisArray(Object object)
checks if the any contains UNO idl sequence value (meaning a java array containing elements which are values of UNO idl types).
static booleanisBoolean(Object object)
checks if the any contains a value of the idl type boolean.
static booleanisByte(Object object)
checks if the any contains a value of the idl type byte.
static booleanisChar(Object object)
checks if the any contains a value of the idl type char.
static booleanisDouble(Object object)
checks if the any contains a value of the idl type double.
static booleanisEnum(Object object)
checks if the any contains a value of the idl type enum.
static booleanisFloat(Object object)
checks if the any contains a value of the idl type float.
static booleanisInt(Object object)
checks if the any contains a value of the idl type long (which maps to a java-int).
static booleanisLong(Object object)
checks if the any contains a value of the idl type hyper (which maps to a java-long).
static booleanisObject(Object object)
checks if the any contains an interface, struct, exception, sequence or enum.
static booleanisShort(Object object)
checks if the any contains a value of the idl type short.
static booleanisString(Object object)
checks if the any contains a value of the idl type string.
static booleanisType(Object object)
checks if the any contains a value of the idl type type.
static booleanisVoid(Object object)
checks if the any contains the idl type void.
static ObjecttoArray(Object object)
converts an array or an any containing an array into an array.
static booleantoBoolean(Object object)
converts an Boolean object or an Any object containing a Boolean object into a simple boolean.
static bytetoByte(Object object)
converts an Byte object or an Any object containing a Byte object into a simple byte.
static chartoChar(Object object)
converts an Char object or an Any object containing a Char object into a simple char.
static doubletoDouble(Object object)
converts a number object into a simple double and allows widening conversions.
static floattoFloat(Object object)
converts a number object into a simple float and allows widening conversions.
static inttoInt(Object object)
converts a number object into a simple int and allows widening conversions.
static longtoLong(Object object)
converts a number object into a simple long and allows widening conversions.
static ObjecttoObject(Type type, Object object)
converts a UNO object (struct, exception, sequence, enum or interface) or an Any containing these types into an UNO object of a specified destination type.
static ObjecttoObject(Class clazz, Object object)
converts a UNO object (struct, exception, sequence, enum or interface) or an Any containing these types into an UNO object of a specified destination type.
static shorttoShort(Object object)
converts a number object into a simple short and allows widening conversions.
static StringtoString(Object object)
converts a string or an any containing a string into a string.
static TypetoType(Object object)
converts a Type or an any containing a Type into a Type.
static inttoUnsignedInt(Object object)
converts a number object into an idl unsigned long and allows widening conversions.
static longtoUnsignedLong(Object object)
converts a number object into an idl unsigned hyper and allows widening conversions.
static shorttoUnsignedShort(Object object)
converts a number object into an idl unsigned short and allows widening conversions.

Method Detail

getType

public static Type getType(Object object)
Determines the type of an any object.

Parameters: object any object

Returns: type object

isArray

public static boolean isArray(Object object)
checks if the any contains UNO idl sequence value (meaning a java array containing elements which are values of UNO idl types).

Parameters: object the object to check

Returns: true when the any contains an object which implements interfaces, false otherwise.

isBoolean

public static boolean isBoolean(Object object)
checks if the any contains a value of the idl type boolean.

Parameters: object the object to check

Returns: true when the any contains a boolean, false otherwise.

isByte

public static boolean isByte(Object object)
checks if the any contains a value of the idl type byte.

Parameters: object the object to check

Returns: true when the any contains a byte, false otherwise.

isChar

public static boolean isChar(Object object)
checks if the any contains a value of the idl type char.

Parameters: object the object to check

Returns: true when the any contains a char, false otherwise.

isDouble

public static boolean isDouble(Object object)
checks if the any contains a value of the idl type double.

Parameters: object the object to check

Returns: true when the any contains a double, false otherwise.

isEnum

public static boolean isEnum(Object object)
checks if the any contains a value of the idl type enum.

Parameters: object the object to check

Returns: true if the any contains an enum, false otherwise

isFloat

public static boolean isFloat(Object object)
checks if the any contains a value of the idl type float.

Parameters: object the object to check

Returns: true when the any contains a float, false otherwise.

isInt

public static boolean isInt(Object object)
checks if the any contains a value of the idl type long (which maps to a java-int).

Parameters: object the object to check

Returns: true when the any contains a int, false otherwise.

isLong

public static boolean isLong(Object object)
checks if the any contains a value of the idl type hyper (which maps to a java-long).

Parameters: object the object to check

Returns: true when the any contains a long, false otherwise.

isObject

public static boolean isObject(Object object)
checks if the any contains an interface, struct, exception, sequence or enum. If object is an any with an interface type, then true is also returned if the any contains a null reference. This is because interfaces are allowed to have a null value contrary to other UNO types.

Parameters: object the object to check

Returns: true if the any contains an object

isShort

public static boolean isShort(Object object)
checks if the any contains a value of the idl type short.

Parameters: object the object to check

Returns: true when the any contains a short, false otherwise.

isString

public static boolean isString(Object object)
checks if the any contains a value of the idl type string.

Parameters: object the object to check

Returns: true when the any contains a string, false otherwise.

isType

public static boolean isType(Object object)
checks if the any contains a value of the idl type type.

Parameters: object the object to check

Returns: true when the any contains a type, false otherwise.

isVoid

public static boolean isVoid(Object object)
checks if the any contains the idl type void.

Parameters: object the object to check

Returns: true when the any is void, false otherwise

toArray

public static Object toArray(Object object)
converts an array or an any containing an array into an array.

Parameters: object the object to convert

Returns: the array contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no array is contained within object.

toBoolean

public static boolean toBoolean(Object object)
converts an Boolean object or an Any object containing a Boolean object into a simple boolean.

Parameters: object the object to convert

Returns: the boolean contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no boolean is contained within object

See Also: AnyConverter

toByte

public static byte toByte(Object object)
converts an Byte object or an Any object containing a Byte object into a simple byte.

Parameters: object the object to convert

Returns: the boolean contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no byte is contained within object

See Also: AnyConverter

toChar

public static char toChar(Object object)
converts an Char object or an Any object containing a Char object into a simple char.

Parameters: object the object to convert

Returns: the char contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no char is contained within object

See Also: AnyConverter

toDouble

public static double toDouble(Object object)
converts a number object into a simple double and allows widening conversions. Allowed argument types are Byte, Short, Int, Float, Double or Any containing these types.

Parameters: object the object to convert

Returns: the double contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no byte, short, int, float or double is contained within object.

toFloat

public static float toFloat(Object object)
converts a number object into a simple float and allows widening conversions. Allowed argument types are Byte, Short, Float or Any containing these types.

Parameters: object the object to convert

Returns: the float contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no byte, short or float is contained within object.

toInt

public static int toInt(Object object)
converts a number object into a simple int and allows widening conversions. Allowed argument types are Byte, Short, Integer or Any containing these types.

Parameters: object the object to convert

Returns: the int contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no short, byte or int is contained within object.

toLong

public static long toLong(Object object)
converts a number object into a simple long and allows widening conversions. Allowed argument types are Byte, Short, Integer, Long or Any containing these types.

Parameters: object the object to convert

Returns: the long contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no short, byte, int or long is contained within object.

toObject

public static Object toObject(Type type, Object object)
converts a UNO object (struct, exception, sequence, enum or interface) or an Any containing these types into an UNO object of a specified destination type. For interfaces, the argument object is queried for the interface specified by the type argument. That query (UnoRuntime.queryInterface) might return null, if the interface is not implemented or a null-ref or a VOID any is given.

Parameters: type type of the returned value object the object that is to be converted

Returns: destination object

Throws: com.sun.star.lang.IllegalArgumentException in case conversion is not possible

toObject

public static Object toObject(Class clazz, Object object)
converts a UNO object (struct, exception, sequence, enum or interface) or an Any containing these types into an UNO object of a specified destination type. For interfaces, the argument object is queried for the interface specified by the type argument. That query (UnoRuntime.queryInterface) might return null, if the interface is not implemented or a null-ref or a VOID any is given.

Parameters: clazz class of the returned value object the object that is to be converted

Returns: destination object

Throws: com.sun.star.lang.IllegalArgumentException in case conversion is not possible

toShort

public static short toShort(Object object)
converts a number object into a simple short and allows widening conversions. Allowed argument types are Byte, Short or Any containing these types.

Parameters: object the object to convert

Returns: the short contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no short or byte is contained within object

toString

public static String toString(Object object)
converts a string or an any containing a string into a string.

Parameters: object the object to convert

Returns: the string contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no string is contained within object.

toType

public static Type toType(Object object)
converts a Type or an any containing a Type into a Type.

Parameters: object the object to convert

Returns: the type contained within the object

Throws: com.sun.star.lang.IllegalArgumentException in case no type is contained within object.

toUnsignedInt

public static int toUnsignedInt(Object object)
converts a number object into an idl unsigned long and allows widening conversions. Allowed argument types are Anies containing idl unsigned short or unsigned long values.

Parameters: object the object to convert

Returns: an (unsigned) int

Throws: com.sun.star.lang.IllegalArgumentException in case no idl unsigned short nor unsigned long is contained within Any

toUnsignedLong

public static long toUnsignedLong(Object object)
converts a number object into an idl unsigned hyper and allows widening conversions. Allowed argument types are Anies containing idl unsigned short, unsigned long or unsigned hyper values.

Parameters: object the object to convert

Returns: an (unsigned) long

Throws: com.sun.star.lang.IllegalArgumentException in case no idl unsigned short, nor unsigned long nor unsigned hyper is contained within object.

toUnsignedShort

public static short toUnsignedShort(Object object)
converts a number object into an idl unsigned short and allows widening conversions. Allowed argument types are Anies containing idl unsigned short values.

Parameters: object the object to convert

Returns: an (unsigned) short

Throws: com.sun.star.lang.IllegalArgumentException in case no idl unsigned short is contained within Any