1 /*
2 * Copyright (c) 1998-2002 The Jgroup Team.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
16 *
17 */
18
19 package jgroup.test.performance;
20
21 import java.rmi.RemoteException;
22
23 import jgroup.core.ExternalGMIListener;
24 import jgroup.core.protocols.Anycast;
25 import jgroup.core.protocols.Multicast;
26
27 /**
28 * Interface used to measure Jgroup and standard RMI performance.
29 * The interface declares the invocation semantics to be used, hence
30 * the server implementations should not declare this.
31 *
32 * @author Alberto Montresor
33 * @author Hein Meling
34 * @since Jgroup 1.1
35 */
36 public interface SpeedTest
37 extends ExternalGMIListener
38 {
39
40 @Multicast void mtest()
41 throws RemoteException;
42
43 @Multicast byte[] mtest(byte[] x)
44 throws RemoteException;
45
46 @Multicast void vmtest(byte[] x)
47 throws RemoteException;
48
49 @Multicast String mtest(String x)
50 throws RemoteException;
51
52 @Anycast void test()
53 throws RemoteException;
54
55 @Anycast byte[] test(byte[] x)
56 throws RemoteException;
57
58 @Anycast String test(String x)
59 throws RemoteException;
60
61 } // END SpeedTest