Module java.corba
Package org.omg.CORBA

Class Any

  • All Implemented Interfaces:
    Serializable, IDLEntity

    public abstract class Any
    extends Object
    implements IDLEntity
    Serves as a container for any data that can be described in IDL or for any IDL primitive type. An Any object is used as a component of a NamedValue object, which provides information about arguments or return values in requests, and which is used to define name/value pairs in Context objects.

    An Any object consists of two parts:

    1. a data value
    2. a TypeCode object describing the type of the data value contained in the Any object. For example, a TypeCode object for an array contains a field for the length of the array and a field for the type of elements in the array. (Note that in this case, the second field of the TypeCode object is itself a TypeCode object.)

    A large part of the Any class consists of pairs of methods for inserting values into and extracting values from an Any object.

    For a given primitive type X, these methods are:

    void insert_X(X x)
    This method allows the insertion of an instance x of primitive type X into the value field of the Any object. Note that the method insert_X also resets the Any object's type field if necessary.
    X extract_X()
    This method allows the extraction of an instance of type X from the Any object.

    This method throws the exception BAD_OPERATION under two conditions:

    1. the type of the element contained in the Any object is not X
    2. the method extract_X is called before the value field of the Any object has been set

    There are distinct method pairs for each primitive IDL data type (insert_long and extract_long, insert_string and extract_string, and so on).

    The class Any also has methods for getting and setting the type code, for testing two Any objects for equality, and for reading an Any object from a stream or writing it to a stream.

    Since:
    JDK1.2
    • Constructor Detail

      • Any

        public Any()
    • Method Detail

      • equal

        public abstract boolean equal​(Any a)
        Checks for equality between this Any object and the given Any object. Two Any objects are equal if both their values and type codes are equal.
        Parameters:
        a - the Any object to test for equality
        Returns:
        true if the Any objects are equal; false otherwise
        See Also:
        CORBA package comments for unimplemented features
      • type

        public abstract TypeCode type()
        Returns type information for the element contained in this Any object.
        Returns:
        the TypeCode object containing type information about the value contained in this Any object
      • type

        public abstract void type​(TypeCode t)
        Sets this Any object's type field to the given TypeCode object and clears its value.

        Note that using this method to set the type code wipes out the value if there is one. The method is provided primarily so that the type may be set properly for IDL out parameters. Generally, setting the type is done by the insert_X methods, which will set the type to X if it is not already set to X.

        Parameters:
        t - the TypeCode object giving information for the value in this Any object
      • read_value

        public abstract void read_value​(InputStream is,
                                        TypeCode t)
                                 throws MARSHAL
        Reads off (unmarshals) the value of an Any object from the given input stream using the given typecode.
        Parameters:
        is - the org.omg.CORBA.portable.InputStream object from which to read the value contained in this Any object
        t - a TypeCode object containing type information about the value to be read
        Throws:
        MARSHAL - when the given TypeCode object is not consistent with the value that was contained in the input stream
      • write_value

        public abstract void write_value​(OutputStream os)
        Writes out the value of this Any object to the given output stream. If both typecode and value need to be written, use create_output_stream() to create an OutputStream, then use write_any on the OutputStream.

        If this method is called on an Any object that has not had a value inserted into its value field, it will throw the exception java.lang.NullPointerException.

        Parameters:
        os - the org.omg.CORBA.portable.OutputStream object into which to marshal the value of this Any object
      • create_output_stream

        public abstract OutputStream create_output_stream()
        Creates an output stream into which this Any object's value can be marshalled.
        Returns:
        the newly-created OutputStream
      • create_input_stream

        public abstract InputStream create_input_stream()
        Creates an input stream from which this Any object's value can be unmarshalled.
        Returns:
        the newly-created InputStream
      • extract_short

        public abstract short extract_short()
                                     throws BAD_OPERATION
        Extracts the short in this Any object's value field.
        Returns:
        the short stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a short or the value field has not yet been set
      • insert_short

        public abstract void insert_short​(short s)
        Inserts the given short into this Any object's value field.
        Parameters:
        s - the short to insert into this Any object
      • extract_long

        public abstract int extract_long()
                                  throws BAD_OPERATION
        Extracts the int in this Any object's value field.
        Returns:
        the int stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than an int or the value field has not yet been set
      • insert_long

        public abstract void insert_long​(int l)
        Inserts the given int into this Any object's value field.
        Parameters:
        l - the int to insert into this Any object
      • extract_longlong

        public abstract long extract_longlong()
                                       throws BAD_OPERATION
        Extracts the long in this Any object's value field.
        Returns:
        the long stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a long or the value field has not yet been set
      • insert_longlong

        public abstract void insert_longlong​(long l)
        Inserts the given long into this Any object's value field.
        Parameters:
        l - the long to insert into this Any object
      • extract_ushort

        public abstract short extract_ushort()
                                      throws BAD_OPERATION
        Extracts the short in this Any object's value field.
        Returns:
        the short stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a short or the value field has not yet been set
      • insert_ushort

        public abstract void insert_ushort​(short s)
        Inserts the given short into this Any object's value field.
        Parameters:
        s - the short to insert into this Any object
      • extract_ulong

        public abstract int extract_ulong()
                                   throws BAD_OPERATION
        Extracts the int in this Any object's value field.
        Returns:
        the int stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than an int or the value field has not yet been set
      • insert_ulong

        public abstract void insert_ulong​(int l)
        Inserts the given int into this Any object's value field.
        Parameters:
        l - the int to insert into this Any object
      • extract_ulonglong

        public abstract long extract_ulonglong()
                                        throws BAD_OPERATION
        Extracts the long in this Any object's value field.
        Returns:
        the long stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a long or the value field has not yet been set
      • insert_ulonglong

        public abstract void insert_ulonglong​(long l)
        Inserts the given long into this Any object's value field.
        Parameters:
        l - the long to insert into this Any object
      • extract_float

        public abstract float extract_float()
                                     throws BAD_OPERATION
        Extracts the float in this Any object's value field.
        Returns:
        the float stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a float or the value field has not yet been set
      • insert_float

        public abstract void insert_float​(float f)
        Inserts the given float into this Any object's value field.
        Parameters:
        f - the float to insert into this Any object
      • extract_double

        public abstract double extract_double()
                                       throws BAD_OPERATION
        Extracts the double in this Any object's value field.
        Returns:
        the double stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a double or the value field has not yet been set
      • insert_double

        public abstract void insert_double​(double d)
        Inserts the given double into this Any object's value field.
        Parameters:
        d - the double to insert into this Any object
      • extract_boolean

        public abstract boolean extract_boolean()
                                         throws BAD_OPERATION
        Extracts the boolean in this Any object's value field.
        Returns:
        the boolean stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a boolean or the value field has not yet been set
      • insert_boolean

        public abstract void insert_boolean​(boolean b)
        Inserts the given boolean into this Any object's value field.
        Parameters:
        b - the boolean to insert into this Any object
      • extract_char

        public abstract char extract_char()
                                   throws BAD_OPERATION
        Extracts the char in this Any object's value field.
        Returns:
        the char stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a char or the value field has not yet been set
      • insert_char

        public abstract void insert_char​(char c)
                                  throws DATA_CONVERSION
        Inserts the given char into this Any object's value field.
        Parameters:
        c - the char to insert into this Any object
        Throws:
        DATA_CONVERSION - if there is a data conversion error
      • extract_wchar

        public abstract char extract_wchar()
                                    throws BAD_OPERATION
        Extracts the char in this Any object's value field.
        Returns:
        the char stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a char or the value field has not yet been set
      • insert_wchar

        public abstract void insert_wchar​(char c)
        Inserts the given char into this Any object's value field.
        Parameters:
        c - the char to insert into this Any object
      • extract_octet

        public abstract byte extract_octet()
                                    throws BAD_OPERATION
        Extracts the byte in this Any object's value field.
        Returns:
        the byte stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a byte or the value field has not yet been set
      • insert_octet

        public abstract void insert_octet​(byte b)
        Inserts the given byte into this Any object's value field.
        Parameters:
        b - the byte to insert into this Any object
      • extract_any

        public abstract Any extract_any()
                                 throws BAD_OPERATION
        Extracts the Any object in this Any object's value field.
        Returns:
        the Any object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than an Any object or the value field has not yet been set
      • insert_any

        public abstract void insert_any​(Any a)
        Inserts the given Any object into this Any object's value field.
        Parameters:
        a - the Any object to insert into this Any object
      • extract_Object

        public abstract Object extract_Object()
                                       throws BAD_OPERATION
        Extracts the org.omg.CORBA.Object in this Any object's value field.
        Returns:
        the org.omg.CORBA.Object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than an org.omg.CORBA.Object or the value field has not yet been set
      • insert_Object

        public abstract void insert_Object​(Object o)
        Inserts the given org.omg.CORBA.Object object into this Any object's value field.
        Parameters:
        o - the org.omg.CORBA.Object object to insert into this Any object
      • extract_Value

        public abstract Serializable extract_Value()
                                            throws BAD_OPERATION
        Extracts the java.io.Serializable object in this Any object's value field.
        Returns:
        the java.io.Serializable object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a java.io.Serializable object or the value field has not yet been set
      • insert_Value

        public abstract void insert_Value​(Serializable v)
        Inserts the given java.io.Serializable object into this Any object's value field.
        Parameters:
        v - the java.io.Serializable object to insert into this Any object
      • insert_Value

        public abstract void insert_Value​(Serializable v,
                                          TypeCode t)
                                   throws MARSHAL
        Inserts the given java.io.Serializable object into this Any object's value field.
        Parameters:
        v - the java.io.Serializable object to insert into this Any object
        t - the TypeCode object that is to be inserted into this Any object's type field and that describes the java.io.Serializable object being inserted
        Throws:
        MARSHAL - if the ORB has a problem marshalling or unmarshalling parameters
      • insert_Object

        public abstract void insert_Object​(Object o,
                                           TypeCode t)
                                    throws BAD_PARAM
        Inserts the given org.omg.CORBA.Object object into this Any object's value field.
        Parameters:
        o - the org.omg.CORBA.Object instance to insert into this Any object
        t - the TypeCode object that is to be inserted into this Any object and that describes the Object being inserted
        Throws:
        BAD_OPERATION - if this method is invalid for this Any object
        BAD_PARAM
      • extract_string

        public abstract String extract_string()
                                       throws BAD_OPERATION
        Extracts the String object in this Any object's value field.
        Returns:
        the String object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a String object or the value field has not yet been set
      • insert_string

        public abstract void insert_string​(String s)
                                    throws DATA_CONVERSION,
                                           MARSHAL
        Inserts the given String object into this Any object's value field.
        Parameters:
        s - the String object to insert into this Any object
        Throws:
        DATA_CONVERSION - if there is a data conversion error
        MARSHAL - if the ORB has a problem marshalling or unmarshalling parameters
      • extract_wstring

        public abstract String extract_wstring()
                                        throws BAD_OPERATION
        Extracts the String object in this Any object's value field.
        Returns:
        the String object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a String object or the value field has not yet been set
      • insert_wstring

        public abstract void insert_wstring​(String s)
                                     throws MARSHAL
        Inserts the given String object into this Any object's value field.
        Parameters:
        s - the String object to insert into this Any object
        Throws:
        MARSHAL - if the ORB has a problem marshalling or unmarshalling parameters
      • extract_TypeCode

        public abstract TypeCode extract_TypeCode()
                                           throws BAD_OPERATION
        Extracts the TypeCode object in this Any object's value field.
        Returns:
        the TypeCode object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a TypeCode object or the value field has not yet been set
      • insert_TypeCode

        public abstract void insert_TypeCode​(TypeCode t)
        Inserts the given TypeCode object into this Any object's value field.
        Parameters:
        t - the TypeCode object to insert into this Any object
      • extract_Principal

        @Deprecated
        public Principal extract_Principal()
                                    throws BAD_OPERATION
        Deprecated.
        Deprecated by CORBA 2.2.
        Extracts the Principal object in this Any object's value field. Note that the class Principal has been deprecated.
        Returns:
        the Principal object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a Principal object or the value field has not yet been set
        See Also:
        CORBA package comments for unimplemented features
      • insert_Principal

        @Deprecated
        public void insert_Principal​(Principal p)
        Deprecated.
        Deprecated by CORBA 2.2.
        Inserts the given Principal object into this Any object's value field. Note that the class Principal has been deprecated.
        Parameters:
        p - the Principal object to insert into this Any object
        See Also:
        CORBA package comments for unimplemented features
      • insert_Streamable

        public void insert_Streamable​(Streamable s)
        Inserts the given Streamable object into this Any object's value field. This method allows the insertion of non-primitive IDL types.
        Parameters:
        s - the Streamable object to insert into this Any object; may be a non-primitive IDL type
        See Also:
        CORBA package comments for unimplemented features
      • extract_fixed

        public BigDecimal extract_fixed()
        Extracts the java.math.BigDecimal object in this Any object's value field.
        Returns:
        the java.math.BigDecimal object stored in this Any object
        Throws:
        BAD_OPERATION - if this Any object contains something other than a java.math.BigDecimal object or the value field has not yet been set
        See Also:
        CORBA package comments for unimplemented features