FileDocCategorySizeDatePackage
MoneyHelper.javaAPI DocExample2331Thu Nov 08 00:23:40 GMT 2001com.ora.rmibook.chapter23.corbaaccounts

MoneyHelper.java

package com.ora.rmibook.chapter23.corbaaccounts;


/**
 * MoneyHelper.java
 * Generated by the IDL-to-Java compiler (portable), version "3.0"
 * from Account.idl
 * Saturday, December 16, 2000 10:18:17 PM PST
 */

abstract public class MoneyHelper {
    private static String  _id = "IDL:com.ora.rmibook.chapter23.corbaaccounts/Money:1.0";

    public static void insert(org.omg.CORBA.Any a, Money that) {
        org.omg.CORBA.portable.OutputStream out = a.create_output_stream();

        a.type(type());
        write(out, that);
        a.read_value(out.create_input_stream(), type());
    }

    public static Money extract(org.omg.CORBA.Any a) {
        return read(a.create_input_stream());
    }

    private static org.omg.CORBA.TypeCode __typeCode = null;
    private static boolean __active = false;
    synchronized public static org.omg.CORBA.TypeCode type() {
        if (__typeCode == null) {
            synchronized (org.omg.CORBA.TypeCode.class) {
                if (__typeCode == null) {
                    if (__active) {
                        return org.omg.CORBA.ORB.init().create_recursive_tc(_id);
                    }
                    __active = true;
                    org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember[1];
                    org.omg.CORBA.TypeCode _tcOf_members0 = null;

                    _tcOf_members0 = org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.tk_long);
                    _members0[0] = new org.omg.CORBA.StructMember (
                                "cents",
                                _tcOf_members0,
                                null);
                    __typeCode = org.omg.CORBA.ORB.init().create_struct_tc(MoneyHelper.id(), "Money", _members0);
                    __active = false;
                }
            }
        }
        return __typeCode;
    }

    public static String id() {
        return _id;
    }

    public static Money read(org.omg.CORBA.portable.InputStream istream) {
        Money value = new Money ();

        value.cents = istream.read_long();
        return value;
    }

    public static void write(org.omg.CORBA.portable.OutputStream ostream, Money value) {
        ostream.write_long(value.cents);
    }

}