org.openorb.rmi.system
Class BigIntHolder

java.lang.Object
  |
  +--org.openorb.rmi.system.BigIntHolder
All Implemented Interfaces:
java.io.Serializable

public class BigIntHolder
extends java.lang.Object
implements java.io.Serializable

This is an ugly hack to avoid marshaling problems of the class java.math.BigInteger under JDK 1.4.x. In the 1.4 series of the JDK internal member fields have been changed in this class. In order to keep the serialized stream format compliant with older JDKs the 1.4.x version of the class uses a writeObject() method and a PutField structure to assemble the serialPersistentFields array. The PutFields mechanism wasn't implemented the whole writeObject() method failed. The PutField mechanism has partially been implemented in ValueHandlerImpl but it revealed more problems incl. Java2Idl spec. inconsistencies. A clean solution would be to overhaul the whole RMIoverIIOP layer and make it compliant to the 1.2 (August 2002) version of the JavaToIdl spec. This would require extensive testing of the different serialization mechanisms provided by Java.

See Also:
Serialized Form

Constructor Summary
BigIntHolder(java.math.BigInteger val)
          Constructor which converts a BigInteger into the internal representation of this class.
 
Method Summary
 java.math.BigInteger getBigInteger()
          Convert the internal data of this class back into the BigInteger.
 java.lang.String toString()
          Print a stringified representation of the internal state of this class.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BigIntHolder

public BigIntHolder(java.math.BigInteger val)
Constructor which converts a BigInteger into the internal representation of this class.
Method Detail

toString

public java.lang.String toString()
Print a stringified representation of the internal state of this class.
Overrides:
toString in class java.lang.Object

getBigInteger

public java.math.BigInteger getBigInteger()
Convert the internal data of this class back into the BigInteger.