/* 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 netchat;

import java.util.ArrayList;

public class ModuleTree {
	private String tree;
	private int version;
	private byte startIndex;
	private ArrayList<String> modules;

	public ModuleTree(String tree) {
		this.tree = tree;
		String[] mdls = tree.split(";");
		version = Integer.parseInt(mdls[0]);
		startIndex = Byte.parseByte(mdls[1]);
		modules = new ArrayList<String>();

		for (int i = 2; i < mdls.length; i++) {
			modules.add(mdls[i]);
		}
	}

	public String getTree() {
		return tree;
	}

	public int getVersion() {
		return version;
	}

	public String getModule(int index) {
		return modules.get(index - startIndex);
	}

	public int getIndex(String module) {
		for (int i = 0; i < modules.size(); i++) {
			if (modules.get(i).equals(module)) {
				return i + startIndex;
			}
		}

		return -1;
	}
}