KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > jonathan > apis > protocols > ReplyInterface


1 /***
2  * Jonathan: an Open Distributed Processing Environment
3  * Copyright (C) 1999 France Telecom R&D
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  *
19  * Release: 2.0
20  *
21  * Contact: jonathan@objectweb.org
22  *
23  * Author: Bruno Dumant
24  *
25  */

26
27
28 package org.objectweb.jonathan.apis.protocols;
29
30 import org.objectweb.jonathan.apis.kernel.JonathanException;
31 import org.objectweb.jonathan.apis.presentation.UnMarshaller;
32 import org.objectweb.jonathan.apis.binding.ForwardException;
33
34 /**
35  * A ReplyInterface holds the reply to a request. Reply interfaces are created
36  * two-ways invocations are performed.
37  */

38 public interface ReplyInterface {
39    /**
40     * Returns a message containing the reply to the request.
41     * <p>
42     * This method blocks until the reply is available. It is the responsibility of
43     * the caller to make sure that the returned message will be properly
44     * {@ UnMarshaller#close() closed}.
45     *
46     * @return a message containing the reply to the request.
47     * @exception ServerException if the server has thrown an application level
48     * exception;
49     * @exception ForwardException if the server has moved;
50     * @exception JonathanException if another exception has been raised.
51     */

52    public UnMarshaller listen()
53       throws ServerException, ForwardException, JonathanException;
54
55    
56    /**
57     * Returns true if a (possibly exceptional) reply has arrived.
58     * <p>
59     * If <code>available</code> returns true, a call to
60     * {@link #listen() listen} is non-blocking.
61     *
62     * @return true if a (possibly exceptional) reply has arrived.
63     */

64    public boolean available();
65 }
66
67
68
69
70   
71
Popular Tags