AnyConverter (Java UNO Runtime Reference)

com.sun.star.uno

## Class AnyConverter

- java.lang.Object
- - com.sun.star.uno.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.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `AnyConverter()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AnyConverter

          public AnyConverter()

  - ### Method Detail

    - #### getType

          public static Type getType(Object object)

      Determines the type of an any object.
      Parameters:
        `object` - any object.
      Returns:
        type object.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### 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.

    - #### toChar

          public static char toChar(Object object)
                             throws 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.
      Throws:
        `IllegalArgumentException` - in case no char is contained within object.
      See Also:
        `isChar(java.lang.Object)`

    - #### toBoolean

          public static boolean toBoolean(Object object)
                                   throws 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
      Throws:
        `IllegalArgumentException` - in case no boolean is contained within object
      See Also:
        `isBoolean(java.lang.Object)`

    - #### toByte

          public static byte toByte(Object object)
                             throws 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.
      Throws:
        `IllegalArgumentException` - in case no byte is contained within object.
      See Also:
        `isBoolean(java.lang.Object)`

    - #### toShort

          public static short toShort(Object object)
                               throws 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.
      Throws:
        `IllegalArgumentException` - in case no short or byte is contained within object.

    - #### toUnsignedShort

          public static short toUnsignedShort(Object object)
                                       throws 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.
      Throws:
        `IllegalArgumentException` - in case no idl unsigned short is contained within Any.

    - #### toInt

          public static int toInt(Object object)
                           throws 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.
      Throws:
        `IllegalArgumentException` - in case no short, byte or int is contained within object.

    - #### toUnsignedInt

          public static int toUnsignedInt(Object object)
                                   throws 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.
      Throws:
        `IllegalArgumentException` - in case no idl unsigned short nor unsigned long is contained within Any.

    - #### toLong

          public static long toLong(Object object)
                             throws 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.
      Throws:
        `IllegalArgumentException` - in case no short, byte, int or long is contained within object.

    - #### toUnsignedLong

          public static long toUnsignedLong(Object object)
                                     throws 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.
      Throws:
        `IllegalArgumentException` - in case no idl unsigned short, nor unsigned long nor unsigned hyper is contained within object.

    - #### toFloat

          public static float toFloat(Object object)
                               throws 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.
      Throws:
        `IllegalArgumentException` - in case no byte, short or float is contained within object.

    - #### toDouble

          public static double toDouble(Object object)
                                 throws 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.
      Throws:
        `IllegalArgumentException` - in case no byte, short, int, float or double is contained within object.

    - #### toString

          public static String toString(Object object)
                                 throws 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.
      Throws:
        `IllegalArgumentException` - in case no string is contained within object.

    - #### toType

          public static Type toType(Object object)
                             throws 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.
      Throws:
        `IllegalArgumentException` - in case no type is contained within object.

    - #### toObject

          public static Object toObject(Type type,
                        Object object)
                                 throws 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.
      Throws:
        `IllegalArgumentException` - in case conversion is not possible.

    - #### toObject

          public static Object toObject(Class<?> clazz,
                        Object object)
                                 throws 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.
      Throws:
        `IllegalArgumentException` - in case conversion is not possible.

    - #### toArray

          public static Object toArray(Object object)
                                throws 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.
      Throws:
        `IllegalArgumentException` - in case no array is contained within object.