blob: 9a01633a7ddd3ad8dad8aeaabe58e0ae29ab4f54 [file] [log] [blame]
J. Duke319a3b92007-12-01 00:00:00 +00001/*
2 * Copyright 1996-2006 Sun Microsystems, Inc. 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. Sun designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Sun 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
22 * CA 95054 USA or visit www.sun.com if you need additional information or
23 * have any questions.
24 */
25
26package java.rmi.server;
27import java.rmi.*;
28import java.io.ObjectOutput;
29import java.io.ObjectInput;
30import java.io.StreamCorruptedException;
31import java.io.IOException;
32
33/**
34 * <code>RemoteCall</code> is an abstraction used solely by the RMI runtime
35 * (in conjunction with stubs and skeletons of remote objects) to carry out a
36 * call to a remote object. The <code>RemoteCall</code> interface is
37 * deprecated because it is only used by deprecated methods of
38 * <code>java.rmi.server.RemoteRef</code>.
39 *
40 * @since JDK1.1
41 * @author Ann Wollrath
42 * @author Roger Riggs
43 * @see java.rmi.server.RemoteRef
44 * @deprecated no replacement.
45 */
46@Deprecated
47public interface RemoteCall {
48
49 /**
50 * Return the output stream the stub/skeleton should put arguments/results
51 * into.
52 *
53 * @return output stream for arguments/results
54 * @exception java.io.IOException if an I/O error occurs.
55 * @since JDK1.1
56 * @deprecated no replacement
57 */
58 @Deprecated
59 ObjectOutput getOutputStream() throws IOException;
60
61 /**
62 * Release the output stream; in some transports this would release
63 * the stream.
64 *
65 * @exception java.io.IOException if an I/O error occurs.
66 * @since JDK1.1
67 * @deprecated no replacement
68 */
69 @Deprecated
70 void releaseOutputStream() throws IOException;
71
72 /**
73 * Get the InputStream that the stub/skeleton should get
74 * results/arguments from.
75 *
76 * @return input stream for reading arguments/results
77 * @exception java.io.IOException if an I/O error occurs.
78 * @since JDK1.1
79 * @deprecated no replacement
80 */
81 @Deprecated
82 ObjectInput getInputStream() throws IOException;
83
84
85 /**
86 * Release the input stream. This would allow some transports to release
87 * the channel early.
88 *
89 * @exception java.io.IOException if an I/O error occurs.
90 * @since JDK1.1
91 * @deprecated no replacement
92 */
93 @Deprecated
94 void releaseInputStream() throws IOException;
95
96 /**
97 * Returns an output stream (may put out header information
98 * relating to the success of the call). Should only succeed
99 * once per remote call.
100 *
101 * @param success If true, indicates normal return, else indicates
102 * exceptional return.
103 * @return output stream for writing call result
104 * @exception java.io.IOException if an I/O error occurs.
105 * @exception java.io.StreamCorruptedException If already been called.
106 * @since JDK1.1
107 * @deprecated no replacement
108 */
109 @Deprecated
110 ObjectOutput getResultStream(boolean success) throws IOException,
111 StreamCorruptedException;
112
113 /**
114 * Do whatever it takes to execute the call.
115 *
116 * @exception java.lang.Exception if a general exception occurs.
117 * @since JDK1.1
118 * @deprecated no replacement
119 */
120 @Deprecated
121 void executeCall() throws Exception;
122
123 /**
124 * Allow cleanup after the remote call has completed.
125 *
126 * @exception java.io.IOException if an I/O error occurs.
127 * @since JDK1.1
128 * @deprecated no replacement
129 */
130 @Deprecated
131 void done() throws IOException;
132}