01: // $Id: Address.java,v 1.4 2005/07/17 11:38:05 chrislott Exp $
02:
03: package org.jgroups;
04:
05: import org.jgroups.util.Streamable;
06:
07: import java.io.Externalizable;
08:
09: /**
10: * Abstract address. Used to identify members on a group to send messages to.
11: * Addresses are mostly generated by the bottom-most (transport) layers (e.g. UDP, TCP, LOOPBACK).
12: * @author Bela Ban
13: */
14: public interface Address extends Externalizable, Streamable,
15: Comparable, Cloneable { // todo: remove Externalizable
16:
17: /**
18: * Checks whether this is an address that represents multiple destinations;
19: * e.g., a class D address in the Internet.
20: * @return true if this is a multicast address, false if it is a unicast address
21: */
22: boolean isMulticastAddress();
23:
24: /** Returns serialized size of this address */
25: int size();
26: }
|