Thu, 31 Aug 2017 18:10:36 +0800
merge
1 /*
2 * Copyright (c) 1998, 2003, 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 */
25 package com.sun.corba.se.impl.encoding;
27 import org.omg.CORBA.TypeCode;
28 import org.omg.CORBA.Principal;
29 import org.omg.CORBA.Any;
31 public interface MarshalInputStream {
32 public boolean read_boolean();
33 public char read_char();
34 public char read_wchar();
35 public byte read_octet();
36 public short read_short();
37 public short read_ushort();
38 public int read_long();
39 public int read_ulong();
40 public long read_longlong();
41 public long read_ulonglong();
42 public float read_float();
43 public double read_double();
44 public String read_string();
45 public String read_wstring();
47 public void read_boolean_array(boolean[] value, int offset, int length);
48 public void read_char_array(char[] value, int offset, int length);
49 public void read_wchar_array(char[] value, int offset, int length);
50 public void read_octet_array(byte[] value, int offset, int length);
51 public void read_short_array(short[] value, int offset, int length);
52 public void read_ushort_array(short[] value, int offset, int length);
53 public void read_long_array(int[] value, int offset, int length);
54 public void read_ulong_array(int[] value, int offset, int length);
55 public void read_longlong_array(long[] value, int offset, int length);
56 public void read_ulonglong_array(long[] value, int offset, int length);
57 public void read_float_array(float[] value, int offset, int length);
58 public void read_double_array(double[] value, int offset, int length);
60 public org.omg.CORBA.Object read_Object();
61 public TypeCode read_TypeCode();
62 public Any read_any();
63 public Principal read_Principal();
65 /*
66 * The methods necessary to support RMI
67 */
68 public org.omg.CORBA.Object read_Object(Class stubClass);
69 public java.io.Serializable read_value() throws Exception;
71 /*
72 * Additional Methods
73 */
74 public void consumeEndian();
76 // Determines the current byte stream position
77 // (also handles fragmented streams)
78 public int getPosition();
80 // mark/reset from java.io.InputStream
81 public void mark(int readAheadLimit);
82 public void reset();
84 /**
85 * This must be called once before unmarshaling valuetypes or anything
86 * that uses repository IDs. The ORB's version should be set
87 * to the desired value prior to calling.
88 */
89 public void performORBVersionSpecificInit();
91 /**
92 * Tells the input stream to null any code set converter
93 * references, forcing it to reacquire them if it needs
94 * converters again. This is used when the server
95 * input stream needs to switch the connection's char code set
96 * converter to something different after reading the
97 * code set service context for the first time. Initially,
98 * we use ISO8859-1 to read the operation name (it can't
99 * be more than ASCII).
100 */
101 public void resetCodeSetConverters();
102 }