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
    Description
     
  • Method Summary

    Modifier and Type
    Method
    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 a Boolean object or an Any object containing a Boolean object into a simple boolean.
    static byte
    toByte(Object object)
    Converts a Byte object or an Any object containing a Byte object into a simple byte.
    static char
    toChar(Object object)
    Converts a 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(Type type, Object object)
    Converts a UNO object (struct, exception, sequence, enum or interface) or an Any containing these types into a UNO object of a specified destination type.
    static Object
    toObject(Class<?> clazz, Object object)
    Converts a UNO object (struct, exception, sequence, enum or interface) or an Any containing these types into a 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
    Converts a number object into an idl unsigned long and allows widening conversions.
    static long
    Converts a number object into an idl unsigned hyper and allows widening conversions.
    static short
    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 Details

    • AnyConverter

      public AnyConverter()
  • Method Details

    • 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 a 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:
    • toBoolean

      public static boolean toBoolean(Object object) throws IllegalArgumentException
      Converts a 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:
    • toByte

      public static byte toByte(Object object) throws IllegalArgumentException
      Converts a 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:
    • 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 a 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 a 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.