BEA Systems, Inc.

weblogic.wtc.jatmi
Class TypedMBString

java.lang.Object
  extended by weblogic.wtc.jatmi.StandardTypes
      extended by weblogic.wtc.jatmi.MBStringTypes
          extended by weblogic.wtc.jatmi.TypedMBString
All Implemented Interfaces:
Serializable, TypedBuffer

public final class TypedMBString
extends MBStringTypes
implements TypedBuffer, Serializable

This is the jatmi analogue to the MBSTRING Tuxedo buffer type

See Also:
MBStringTypes, StandardTypes, TypedBuffer, Serialized Form

Field Summary
 
Fields inherited from class weblogic.wtc.jatmi.MBStringTypes
mbencoding
 
Constructor Summary
TypedMBString()
          Generates a StringBuffer with the default capacity of 16
TypedMBString(int capacity)
          Creates an empty StringBuffer that has the initial capacity given
TypedMBString(String str)
          Constructor.
TypedMBString(TypedMBString copyFrom)
          This constructor copies the fields from the input MBString buffer.
 
Method Summary
 void _tmpostrecv(DataInputStream decoder, int recv_size)
          XDR decodes the given string.
 void _tmpresend(DataOutputStream encoder)
          This function presends and encodes the given TypedBuffer object.
 byte[] getBytes()
           
 StringBuffer getStringBuffer()
          Gets the StringBuffer associated with this object.
 void setBytes(byte[] bytes)
           
 String toString()
          Returns a copy of this object as a String
 
Methods inherited from class weblogic.wtc.jatmi.MBStringTypes
getMBEncoding, setMBEncoding
 
Methods inherited from class weblogic.wtc.jatmi.StandardTypes
getHintIndex, getSubtype, getType, hint_to_type
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface weblogic.wtc.jatmi.TypedBuffer
getHintIndex, getSubtype, getType
 

Constructor Detail

TypedMBString

public TypedMBString()
Generates a StringBuffer with the default capacity of 16


TypedMBString

public TypedMBString(int capacity)
Creates an empty StringBuffer that has the initial capacity given

Parameters:
capacity - The capacity the StringBuffer associated with this TypedMBString should have

TypedMBString

public TypedMBString(String str)
Constructor. Initializes object with a copy of the input string

Parameters:
str - the string to initialize this object with

TypedMBString

public TypedMBString(TypedMBString copyFrom)
This constructor copies the fields from the input MBString buffer.

Parameters:
copyFrom - The MBString buffer to copy data from
Method Detail

getStringBuffer

public StringBuffer getStringBuffer()
Gets the StringBuffer associated with this object. Note that the object returned is the same object store used by this object, so care should be taken when updating the object returned while this TypedMBString is used in another thread. Use the toString method on this object to return this object as a String.

Returns:
The StringBuffer associated with this TypedMBString

getBytes

public byte[] getBytes()

setBytes

public void setBytes(byte[] bytes)

_tmpresend

public void _tmpresend(DataOutputStream encoder)
                throws TPException,
                       IOException
This function presends and encodes the given TypedBuffer object. It is equivalent to the combination of _tmpresend and _tmencdec functions from the buffer(3i) TUXEDO manual page.

XDR encodes the given string. XDR encoding of a string is four length bytes (not including any NULL byte at the end) followed by the string itself (low 32 bits of the unicode characters). It is padded out to make the total length a multiple of four.

Specified by:
_tmpresend in interface TypedBuffer
Parameters:
encoder - The output stream to encode this type to. Should not be padded.
Throws:
TPException -
  • TPEINVAL - If there was some problem with the state of the TypedBuffer.
  • Any other errno is considered a fatal error
IOException - If there was an error writing to the DataOutputStream

_tmpostrecv

public void _tmpostrecv(DataInputStream decoder,
                        int recv_size)
                 throws TPException,
                        IOException
XDR decodes the given string. XDR encoding of a string is four length bytes (not including any NULL byte at the end) followed by the string itself (low 32 bits of the unicode characters). It is padded out to make the total length a multiple of four.

Specified by:
_tmpostrecv in interface TypedBuffer
Parameters:
decoder - A stream that starts with the encoded data for this buffer type. Only recv_size bytes should be read from the stream (though at the time this function is called all bytes necessary to decode this type should be available)
recv_size - The total size of encoded data from the start position (note that encoded may be larger than the actual recieved size)
Throws:
TPException - TPEINVAL if this stream could not be decoded for any reason
IOException - if there was an error reading from the stream

toString

public String toString()
Returns a copy of this object as a String

Overrides:
toString in class Object

Documentation is available at
http://download.oracle.com/docs/cd/E13222_01/wls/docs92
Copyright 2006 BEA Systems Inc.