1/* 2 * Copyright (c) 1999, 2001, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25package org.omg.CORBA; 26 27 28/** 29 * The Helper for {@code OctetSeq}. For more information on 30 * Helper files, see <a href="doc-files/generatedfiles.html#helper"> 31 * "Generated Files: Helper Files"</a>.<P> 32 * org/omg/CORBA/OctetSeqHelper.java 33 * Generated by the IDL-to-Java compiler (portable), version "3.0" 34 * from streams.idl 35 * 13 May 1999 22:41:36 o'clock GMT+00:00 36 * 37 * The class definition has been modified to conform to the following 38 * OMG specifications : 39 * <ul> 40 * <li> ORB core as defined by CORBA 2.3.1 41 * (<a href="http://www.omg.org/cgi-bin/doc?formal/99-10-07">formal/99-10-07</a>) 42 * </li> 43 * 44 * <li> IDL/Java Language Mapping as defined in 45 * <a href="http://www.omg.org/cgi-bin/doc?ptc/00-01-08">ptc/00-01-08</a> 46 * </li> 47 * </ul> 48 */ 49 50public abstract class OctetSeqHelper 51{ 52 private static String _id = "IDL:omg.org/CORBA/OctetSeq:1.0"; 53 54 public static void insert (org.omg.CORBA.Any a, byte[] that) 55 { 56 org.omg.CORBA.portable.OutputStream out = a.create_output_stream (); 57 a.type (type ()); 58 write (out, that); 59 a.read_value (out.create_input_stream (), type ()); 60 } 61 62 public static byte[] extract (org.omg.CORBA.Any a) 63 { 64 return read (a.create_input_stream ()); 65 } 66 67 private static org.omg.CORBA.TypeCode __typeCode = null; 68 synchronized public static org.omg.CORBA.TypeCode type () 69 { 70 if (__typeCode == null) 71 { 72 __typeCode = org.omg.CORBA.ORB.init ().get_primitive_tc (org.omg.CORBA.TCKind.tk_octet); 73 __typeCode = org.omg.CORBA.ORB.init ().create_sequence_tc (0, __typeCode); 74 __typeCode = org.omg.CORBA.ORB.init ().create_alias_tc (org.omg.CORBA.OctetSeqHelper.id (), "OctetSeq", __typeCode); 75 } 76 return __typeCode; 77 } 78 79 public static String id () 80 { 81 return _id; 82 } 83 84 public static byte[] read (org.omg.CORBA.portable.InputStream istream) 85 { 86 byte value[] = null; 87 int _len0 = istream.read_long (); 88 value = new byte[_len0]; 89 istream.read_octet_array (value, 0, _len0); 90 return value; 91 } 92 93 public static void write (org.omg.CORBA.portable.OutputStream ostream, byte[] value) 94 { 95 ostream.write_long (value.length); 96 ostream.write_octet_array (value, 0, value.length); 97 } 98 99} 100