com.sun.star.uno

Class AnyConverter


public class AnyConverter
extends java.lang.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 Type
getType(Object object)
Determines the type of an any object.
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).
static boolean
isBoolean(Object object)
checks if the any contains a value of the idl type boolean.
static boolean
isByte(Object object)
checks if the any contains a value of the idl type byte.
static boolean
isChar(Object object)
checks if the any contains a value of the idl type char.
static boolean
isDouble(Object object)
checks if the any contains a value of the idl type double.
static boolean
isEnum(Object object)
checks if the any contains a value of the idl type enum.
static boolean
isFloat(Object object)
checks if the any contains a value of the idl type float.
static boolean
isInt(Object object)
checks if the any contains a value of the idl type long (which maps to a java-int).
static boolean
isLong(Object object)
checks if the any contains a value of the idl type hyper (which maps to a java-long).
static boolean
isObject(Object object)
checks if the any contains an interface, struct, exception, sequence or enum.
static boolean
isShort(Object object)
checks if the any contains a value of the idl type short.
static boolean
isString(Object object)
checks if the any contains a value of the idl type string.
static boolean
isType(Object object)
checks if the any contains a value of the idl type type.
static boolean
isVoid(Object object)
checks if the any contains the idl type void.
static Object
toArray(Object object)
converts an array or an any containing an array into an array.
static boolean
toBoolean(Object object)
converts an Boolean object or an Any object containing a Boolean object into a simple boolean.
static byte
toByte(Object object)
converts an Byte object or an Any object containing a Byte object into a simple byte.
static char
toChar(Object object)
converts an Char object or an Any object containing a Char object into a simple char.
static double
toDouble(Object object)
converts a number object into a simple double and allows widening conversions.
static float
toFloat(Object object)
converts a number object into a simple float and allows widening conversions.
static int
toInt(Object object)
converts a number object into a simple int and allows widening conversions.
static long
toLong(Object object)
converts a number object into a simple long and allows widening conversions.
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.
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.
static short
toShort(Object object)
converts a number object into a simple short and allows widening conversions.
static String
toString(Object object)
converts a string or an any containing a string into a string.
static Type
toType(Object object)
converts a Type or an any containing a Type into a Type.
static int
toUnsignedInt(Object object)
converts a number object into an idl unsigned long and allows widening conversions.
static long
toUnsignedLong(Object object)
converts a number object into an idl unsigned hyper and allows widening conversions.
static short
toUnsignedShort(Object object)
converts a number object into an idl unsigned short and allows widening conversions.

Method Details

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)
            throws com.sun.star.lang.IllegalArgumentException
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


toBoolean

public static boolean toBoolean(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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

See Also:
isBoolean(Object)


toByte

public static byte toByte(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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

See Also:
isBoolean(Object)


toChar

public static char toChar(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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

See Also:
isChar(Object)


toDouble

public static double toDouble(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toFloat

public static float toFloat(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toInt

public static int toInt(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toLong

public static long toLong(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toObject

public static Object toObject(Class clazz,
                              Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toObject

public static Object toObject(Type type,
                              Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toShort

public static short toShort(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toString

public static String toString(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toType

public static Type toType(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toUnsignedInt

public static int toUnsignedInt(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toUnsignedLong

public static long toUnsignedLong(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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


toUnsignedShort

public static short toUnsignedShort(Object object)
            throws com.sun.star.lang.IllegalArgumentException
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