Module java.corba
Package org.omg.CORBA

## Class StringHolder

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

All Implemented Interfaces:
  Streamable

    public final class StringHolder
    extends Object
    implements Streamable

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

A Holder class for a `String` that is used to store "out" and "inout" parameters in IDL operations. If an IDL operation signature has an IDL `string` as an "out" or "inout" parameter, the programmer must pass an instance of `StringHolder` 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 `myStringHolder` is an instance of `StringHolder`, the value stored in its `value` field can be accessed with `myStringHolder.value`.

Since:
  JDK1.2

### Field Summary

Fields
`String` `value` The `String` value held by this `StringHolder` object.

### Constructor Summary

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

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `_read(InputStream input)` Reads the unmarshalled data from `input` and assigns it to the `value` field of this `StringHolder` object.
`TypeCode` `_type()` Retrieves the `TypeCode` object that corresponds to the value held in this `StringHolder` object.
`void` `_write(OutputStream output)` Marshals the value held by this `StringHolder` object to the output stream `output`.

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

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

### Field Detail

#### value

    public String value

The `String` value held by this `StringHolder` object.

### Constructor Detail

#### StringHolder

    public StringHolder()

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

#### StringHolder

    public StringHolder(String initial)

Constructs a new `StringHolder` object with its `value` field initialized to the given `String`.

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

### Method Detail

#### _read

    public void _read(InputStream input)

Reads the unmarshalled data from `input` and assigns it to the `value` field of this `StringHolder` object.

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

#### _write

    public void _write(OutputStream output)

Marshals the value held by this `StringHolder` object to the output stream `output`.

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

#### _type

    public TypeCode _type()

Retrieves the `TypeCode` object that corresponds to the value held in this `StringHolder` object.

Specified by:
  `_type` in interface `Streamable`
Returns:
  the type code of the value held in this `StringHolder` object