org.omg.CORBA

## Class ObjectHolder

- java.lang.Object
- - org.omg.CORBA.ObjectHolder

All Implemented Interfaces:
  Streamable

    public final class ObjectHolder
    extends Object
    implements Streamable

The Holder for `Object`. For more information on Holder files, see "Generated Files: Holder Files".

A Holder class for a CORBA object reference (a value of type `org.omg.CORBA.Object`). It is usually used to store "out" and "inout" parameters in IDL methods. If an IDL method signature has a CORBA Object reference as an "out" or "inout" parameter, the programmer must pass an instance of `ObjectHolder` as the corresponding parameter in the method invocation; for "inout" parameters, the programmer must also fill the "in" value to be sent to the server. Before the method invocation returns, the ORB will fill in the value corresponding to the "out" value returned from the server.

If `myObjectHolder` is an instance of `ObjectHolder`, the value stored in its `value` field can be accessed with `myObjectHolder.value`.

Since:
  JDK1.2

### Field Summary

Fields
`Object` `value` The `Object` value held by this `ObjectHolder` object.

### Constructor Summary

Constructors
Constructor and Description
`ObjectHolder()` Constructs a new `ObjectHolder` object with its `value` field initialized to `null`.
`ObjectHolder(Object initial)` Constructs a new `ObjectHolder` object with its `value` field initialized to the given `Object`.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `_read(InputStream input)` Reads from `input` and initalizes the value in this `ObjectHolder` object with the unmarshalled data.
`TypeCode` `_type()` Returns the TypeCode corresponding to the value held in this `ObjectHolder` object
`void` `_write(OutputStream output)` Marshals to `output` the value in this `ObjectHolder` object.

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

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

### Field Detail

#### value

    public Object value

The `Object` value held by this `ObjectHolder` object.

### Constructor Detail

#### ObjectHolder

    public ObjectHolder()

Constructs a new `ObjectHolder` object with its `value` field initialized to `null`.

#### ObjectHolder

    public ObjectHolder(Object initial)

Constructs a new `ObjectHolder` object with its `value` field initialized to the given `Object`.

Parameters:
  `initial` - the `Object` with which to initialize the `value` field of the newly-created `ObjectHolder` object

### Method Detail

#### _read

    public void _read(InputStream input)

Reads from `input` and initalizes the value in this `ObjectHolder` object with the unmarshalled data.

Specified by:
  `_read` in interface `Streamable`
Parameters:
  `input` - the InputStream containing CDR formatted data from the wire.

#### _write

    public void _write(OutputStream output)

Marshals to `output` the value in this `ObjectHolder` object.

Specified by:
  `_write` in interface `Streamable`
Parameters:
  `output` - the OutputStream which will contain the CDR formatted data.

#### _type

    public TypeCode _type()

Returns the TypeCode corresponding to the value held in this `ObjectHolder` object

Specified by:
  `_type` in interface `Streamable`
Returns:
  the TypeCode of the value held in this `ObjectHolder` object