package lava.net.mmp; import java.io.IOException; import lava.net.common.UNA; import lava.net.common.Value; import lava.net.common.VariableNormalizer; /** * **/ public abstract class MMPDispatcher { /** * **/ public MMPDispatcher(MMPDispatcherPeer peer, // VariableNormalizer normalizer) { if(peer == null || normalizer == null) throw new IllegalArgumentException(); } /** * **/ public MMPDispatcher(MMPDispatcherPeer peer, // VariableNormalizer normalizer, boolean listen) { this (peer,normalizer); } /** * **/ public abstract Value usingProtocols() ; /** * **/ public abstract UNA listen(UNA listenLocation) throws IOException ; /** * **/ public abstract void remove(UNA listenLocation) ; /** * **/ public abstract UNA[] getListenLocations() ; /** * **/ public abstract void close() ; /** * **/ public abstract void forget(UNA remote) ; /** * **/ public abstract void close(UNA remote) ; /** * **/ public abstract UNA getLocal(UNA destination) throws IOException ; /** * **/ public abstract void send(UNA destination, MMPPacket packet) // throws IOException ; }