Package org.omg.CORBA

Class Any

java.lang.Object
org.omg.CORBA.Any
All Implemented Interfaces:
Serializable, IDLEntity
Direct Known Subclasses:
AnyImpl

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
Version:
1.12, 09/09/97
  • Constructor Summary

    Constructors
    Constructor
    Description
    Any()
     
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract InputStream
    Creates an input stream from which this Any object's value can be unmarshalled.
    abstract OutputStream
    Creates an output stream into which this Any object's value can be marshalled.
    abstract boolean
    Checks for equality between this Any object and the given Any object.
    abstract Any
    Extracts the Any object in this Any object's value field.
    abstract boolean
    Extracts the boolean in this Any object's value field.
    abstract char
    Extracts the char in this Any object's value field.
    abstract double
    Extracts the double in this Any object's value field.
    Extracts the java.math.BigDecimal object in this Any object's value field.
    abstract float
    Extracts the float in this Any object's value field.
    abstract int
    Extracts the int in this Any object's value field.
    abstract long
    Extracts the long in this Any object's value field.
    abstract Object
    Extracts the org.omg.CORBA.Object in this Any object's value field.
    abstract byte
    Extracts the byte in this Any object's value field.
    Deprecated.
    Deprecated by CORBA 2.2.
    abstract short
    Extracts the short in this Any object's value field.
    Extracts a Streamable from this Any object's value field.
    abstract String
    Extracts the String object in this Any object's value field.
    abstract TypeCode
    Extracts the TypeCode object in this Any object's value field.
    abstract int
    Extracts the int in this Any object's value field.
    abstract long
    Extracts the long in this Any object's value field.
    abstract short
    Extracts the short in this Any object's value field.
    abstract Serializable
    Extracts the java.io.Serializable object in this Any object's value field.
    abstract char
    Extracts the char in this Any object's value field.
    abstract String
    Extracts the String object in this Any object's value field.
    abstract void
    Inserts the given Any object into this Any object's value field.
    abstract void
    insert_boolean(boolean b)
    Inserts the given boolean into this Any object's value field.
    abstract void
    insert_char(char c)
    Inserts the given char into this Any object's value field.
    abstract void
    insert_double(double d)
    Inserts the given double into this Any object's value field.
    void
    Throws an org.omg.CORBA.NO_IMPLEMENT exception.
    void
    Throws an org.omg.CORBA.NO_IMPLEMENT exception.
    abstract void
    insert_float(float f)
    Inserts the given float into this Any object's value field.
    abstract void
    insert_long(int l)
    Inserts the given int into this Any object's value field.
    abstract void
    Inserts the given long into this Any object's value field.
    abstract void
    Inserts the given org.omg.CORBA.Object object into this Any object's value field.
    abstract void
    Inserts the given org.omg.CORBA.Object object into this Any object's value field.
    abstract void
    insert_octet(byte b)
    Inserts the given byte into this Any object's value field.
    void
    Deprecated.
    Deprecated by CORBA 2.2.
    abstract void
    insert_short(short s)
    Inserts the given short into this Any object's value field.
    void
    Inserts the given Streamable object into this Any object's value field.
    abstract void
    Inserts the given String object into this Any object's value field.
    abstract void
    Inserts the given TypeCode object into this Any object's value field.
    abstract void
    insert_ulong(int l)
    Inserts the given int into this Any object's value field.
    abstract void
    Inserts the given long into this Any object's value field.
    abstract void
    insert_ushort(short s)
    Inserts the given short into this Any object's value field.
    abstract void
    Inserts the given java.io.Serializable object into this Any object's value field.
    abstract void
    Inserts the given java.io.Serializable object into this Any object's value field.
    abstract void
    insert_wchar(char c)
    Inserts the given char into this Any object's value field.
    abstract void
    Inserts the given String object into this Any object's value field.
    abstract void
    Reads off (unmarshals) the value of an Any object from the given input stream using the given typecode.
    abstract TypeCode
    Returns type information for the element contained in this Any object.
    abstract void
    Sets this Any object's type field to the given TypeCode object and clears its value.
    abstract void
    Writes out the value of this Any object to the given output stream.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Any

      public Any()
  • Method Details

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

      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:
    • insert_Principal

      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:
    • extract_Streamable

      public Streamable extract_Streamable() throws BAD_INV_ORDER
      Extracts a Streamable from this Any object's value field. This method allows the extraction of non-primitive IDL types.
      Returns:
      the Streamable stored in the Any object.
      Throws:
      BAD_INV_ORDER - if the caller has invoked operations in the wrong order
      See Also:
    • 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:
    • 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:
    • insert_fixed

      public void insert_fixed(BigDecimal value)
      Throws an org.omg.CORBA.NO_IMPLEMENT exception.

      Inserts the given java.math.BigDecimal object into this Any object's value field.

      Parameters:
      value - the java.math.BigDecimal object to insert into this Any object
      See Also:
    • insert_fixed

      public void insert_fixed(BigDecimal value, TypeCode type) throws BAD_INV_ORDER
      Throws an org.omg.CORBA.NO_IMPLEMENT exception.

      Inserts the given java.math.BigDecimal object into this Any object's value field.

      Parameters:
      value - the java.math.BigDecimal object to insert into this Any object
      type - the TypeCode object that is to be inserted into this Any object's type field and that describes the java.math.BigDecimal object being inserted
      Throws:
      BAD_INV_ORDER - if this method is invoked improperly
      See Also: