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.relacs.mss;
20
21 import jgroup.util.OutMessage;
22
23 /**
24 * The <code>Msg</code> interface must be implemented by all message
25 * types that may be broken up into fragments. This interface allow
26 * common interaction with messages.
27 *
28 * @author Hein Meling
29 * @since Jgroup 1.2
30 */
31 public interface Msg
32 {
33
34 public byte getTag();
35
36 public int getMid();
37
38 public MssHost getSender();
39
40 public boolean hasToBeRouted();
41
42 public MsgFlowSndrSide getMsgFlow();
43
44 public OutMessage getOutMessage();
45
46 public FragmentIterator iterator(MsgCntrl msgCntrl);
47
48 } // END Msg