/* Banana-Chat - The first Open Source Knuddels Emulator
 * Copyright (C) 2011 - 2012 Flav <http://banana-coding.com>
 * 
 * Diese Dateien unterliegen dem Coprytight von Banana-Coding und
 * darf verändert, aber weder in andere Projekte eingefügt noch
 * reproduziert werden.
 * 
 * Der Emulator dient - sofern der Client nicht aus Eigenproduktion
 * stammt - nur zu Lernzwecken, das Hosten des originalen Knuddels Clients
 * ist auf eigene Gefahr und verstößt möglicherweise gegen Schutzrechte
 * der Knuddels.de GmbH & Co KG
 * 
 * Autoren: Flav (Grundversion), Localhost (Erweiterte Version), Kokos-Ice (Erweiterte Version)
 */



package handler;

import netchat.Client;
import netchat.Server;
import tools.PacketCreator;
import tools.PacketReader;

public class ModuleHandler {
	private static String protocolConfirmed;
	private static String changeProtocol;

	static {
		protocolConfirmed = PacketCreator.protocolConfirmed();
		changeProtocol = PacketCreator.changeProtocol();
	}

	public static void handle(PacketReader reader, Client client) {
		String module = Server.get().getModuleTree().getModule(reader.readShort());

		if (module.equals("CONFIRM_PROTOCOL_HASH")) {
			reader.readInt();
			int version = reader.readInt();

			if (Server.get().getModuleTree().getVersion() == version) {
				client.send(protocolConfirmed);
			} else {
				client.send(changeProtocol);
			}
		}
	}
}