001 package cpw.mods.fml.common.network; 002 003 import net.minecraft.network.INetworkManager; 004 import net.minecraft.network.NetLoginHandler; 005 import net.minecraft.network.packet.NetHandler; 006 import net.minecraft.network.packet.Packet1Login; 007 import net.minecraft.server.MinecraftServer; 008 009 public interface IConnectionHandler 010 { 011 /** 012 * Called when a player logs into the server 013 * SERVER SIDE 014 * 015 * @param player 016 * @param netHandler 017 * @param manager 018 */ 019 void playerLoggedIn(Player player, NetHandler netHandler, INetworkManager manager); 020 021 /** 022 * If you don't want the connection to continue, return a non-empty string here 023 * If you do, you can do other stuff here- note no FML negotiation has occured yet 024 * though the client is verified as having FML installed 025 * 026 * SERVER SIDE 027 * 028 * @param netHandler 029 * @param manager 030 */ 031 String connectionReceived(NetLoginHandler netHandler, INetworkManager manager); 032 033 /** 034 * Fired when a remote connection is opened 035 * CLIENT SIDE 036 * 037 * @param netClientHandler 038 * @param server 039 * @param port 040 */ 041 void connectionOpened(NetHandler netClientHandler, String server, int port, INetworkManager manager); 042 /** 043 * 044 * Fired when a local connection is opened 045 * 046 * CLIENT SIDE 047 * 048 * @param netClientHandler 049 * @param server 050 */ 051 void connectionOpened(NetHandler netClientHandler, MinecraftServer server, INetworkManager manager); 052 053 /** 054 * Fired when a connection closes 055 * 056 * ALL SIDES 057 * 058 * @param manager 059 */ 060 void connectionClosed(INetworkManager manager); 061 062 /** 063 * Fired when the client established the connection to the server 064 * 065 * CLIENT SIDE 066 * @param clientHandler 067 * @param manager 068 * @param login 069 */ 070 void clientLoggedIn(NetHandler clientHandler, INetworkManager manager, Packet1Login login); 071 072 }