WSPairHelper.java 2.33 KB
/*
 * Decompiled with CFR 0_118.
 */
package com.adobe.xmlformcallback;

import com.adobe.xmlformcallback.WSPair;
import org.omg.CORBA.Any;
import org.omg.CORBA.ORB;
import org.omg.CORBA.StructMember;
import org.omg.CORBA.TypeCode;
import org.omg.CORBA.portable.InputStream;
import org.omg.CORBA.portable.OutputStream;

import java.io.IOException;

public final class WSPairHelper {
    private static volatile TypeCode _type;

    /*
     * WARNING - Removed try catching itself - possible behaviour change.
     * Enabled force condition propagation
     * Lifted jumps to return sites
     */
    public static TypeCode type() {
        if (_type != null) return _type;
        Class<WSPairHelper> class_ = WSPairHelper.class;
        synchronized (WSPairHelper.class) {
            if (_type != null) return _type;
            {
                _type = ORB.init().create_struct_tc(WSPairHelper.id(), "WSPair", new StructMember[]{new StructMember("msKey", ORB.init().create_wstring_tc(0), null), new StructMember("msValue", ORB.init().create_wstring_tc(0), null)});
            }
            // ** MonitorExit[var0] (shouldn't be in output)
            return _type;
        }
    }

    public static void insert(Any any, WSPair s) {
        any.type(WSPairHelper.type());
        WSPairHelper.write(any.create_output_stream(), s);
    }

    /*
     * WARNING - Removed try catching itself - possible behaviour change.
     */
    public static WSPair extract(Any any) {
        InputStream in = any.create_input_stream();
        try {
            WSPair wSPair = WSPairHelper.read(in);
            return wSPair;
        }
        finally {
            try {
                in.close();
            }
            catch (IOException e) {
                throw new RuntimeException("Unexpected exception " + e.toString());
            }
        }
    }

    public static String id() {
        return "IDL:com/adobe/xmlformcallback/WSPair:1.0";
    }

    public static WSPair read(InputStream in) {
        WSPair result = new WSPair();
        result.msKey = in.read_wstring();
        result.msValue = in.read_wstring();
        return result;
    }

    public static void write(OutputStream out, WSPair s) {
        String tmpResult1 = s.msKey;
        out.write_wstring(tmpResult1);
        String tmpResult2 = s.msValue;
        out.write_wstring(tmpResult2);
    }
}