001    package org.omg.Security;
002    
003    
004    /**
005     * Generated from IDL struct "ChannelBindings".
006     *
007     * @author JacORB IDL compiler V 2.3.0 (JBoss patch 6), 06-Jun-2007
008     * @version generated at Sep 22, 2012 10:58:04 AM
009     */
010    
011    public final class ChannelBindingsHelper
012    {
013            private static org.omg.CORBA.TypeCode _type = null;
014            public static org.omg.CORBA.TypeCode type ()
015            {
016                    if (_type == null)
017                    {
018                            _type = org.omg.CORBA.ORB.init().create_struct_tc(org.omg.Security.ChannelBindingsHelper.id(),"ChannelBindings",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("initiator_addrtype", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)), null),new org.omg.CORBA.StructMember("initiator_address", org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(10))), null),new org.omg.CORBA.StructMember("acceptor_addrtype", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)), null),new org.omg.CORBA.StructMember("acceptor_address", org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(10))), null),new org.omg.CORBA.StructMember("application_data", org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(10))), null)});
019                    }
020                    return _type;
021            }
022    
023            public static void insert (final org.omg.CORBA.Any any, final org.omg.Security.ChannelBindings s)
024            {
025                    any.type(type());
026                    write( any.create_output_stream(),s);
027            }
028    
029            public static org.omg.Security.ChannelBindings extract (final org.omg.CORBA.Any any)
030            {
031                    return read(any.create_input_stream());
032            }
033    
034            public static String id()
035            {
036                    return "IDL:omg.org/Security/ChannelBindings:1.0";
037            }
038            public static org.omg.Security.ChannelBindings read (final org.omg.CORBA.portable.InputStream in)
039            {
040                    org.omg.Security.ChannelBindings result = new org.omg.Security.ChannelBindings();
041                    result.initiator_addrtype=in.read_ulong();
042                    int _lresult_initiator_address7 = in.read_long();
043                    try
044                    {
045                             int x = in.available();
046                             if ( x > 0 && _lresult_initiator_address7 > x )
047                                    {
048                                            throw new org.omg.CORBA.MARSHAL("Sequence length too large. Only " + x + " available and trying to assign " + _lresult_initiator_address7);
049                                    }
050                    }
051                    catch (java.io.IOException e)
052                    {
053                    }
054                    result.initiator_address = new byte[_lresult_initiator_address7];
055                    in.read_octet_array(result.initiator_address,0,_lresult_initiator_address7);
056                    result.acceptor_addrtype=in.read_ulong();
057                    int _lresult_acceptor_address8 = in.read_long();
058                    try
059                    {
060                             int x = in.available();
061                             if ( x > 0 && _lresult_acceptor_address8 > x )
062                                    {
063                                            throw new org.omg.CORBA.MARSHAL("Sequence length too large. Only " + x + " available and trying to assign " + _lresult_acceptor_address8);
064                                    }
065                    }
066                    catch (java.io.IOException e)
067                    {
068                    }
069                    result.acceptor_address = new byte[_lresult_acceptor_address8];
070                    in.read_octet_array(result.acceptor_address,0,_lresult_acceptor_address8);
071                    int _lresult_application_data9 = in.read_long();
072                    try
073                    {
074                             int x = in.available();
075                             if ( x > 0 && _lresult_application_data9 > x )
076                                    {
077                                            throw new org.omg.CORBA.MARSHAL("Sequence length too large. Only " + x + " available and trying to assign " + _lresult_application_data9);
078                                    }
079                    }
080                    catch (java.io.IOException e)
081                    {
082                    }
083                    result.application_data = new byte[_lresult_application_data9];
084                    in.read_octet_array(result.application_data,0,_lresult_application_data9);
085                    return result;
086            }
087            public static void write (final org.omg.CORBA.portable.OutputStream out, final org.omg.Security.ChannelBindings s)
088            {
089                    out.write_ulong(s.initiator_addrtype);
090                    
091                    out.write_long(s.initiator_address.length);
092                    out.write_octet_array(s.initiator_address,0,s.initiator_address.length);
093                    out.write_ulong(s.acceptor_addrtype);
094                    
095                    out.write_long(s.acceptor_address.length);
096                    out.write_octet_array(s.acceptor_address,0,s.acceptor_address.length);
097                    
098                    out.write_long(s.application_data.length);
099                    out.write_octet_array(s.application_data,0,s.application_data.length);
100            }
101    }