import java.io.*;

public class config {

    String docroot;
    String config_file;
    
    config(String config_file) {
	load_config(config_file);
	print_config();
    }

    void print_config() {
	System.err.println("Document root: '" + docroot + "'.");
    }

    void load_config(String config_file) {
	
	FileReader fin = null;
	char c = '\0';
	
	System.err.println("Loading config file from: " + config_file);

	try {
	    fin = new FileReader(config_file);
	} catch (Exception e) {
	    System.err.println("Could not open config file for reading!");
	}


	String l = new String();
	this.config_file = config_file;
	int line = 0;

	try {
	    c = (char)fin.read();
	} catch (Exception e) {}

	while (c!=constant.eof) {
	    
	    switch (c) {
	    case '\n':
		line++;
		break;
	    case constant.com:
		l = readLine(fin);
		
		break;

	    case constant.eof:
		break;

	    default:
		l = c + readLine(fin);
		System.err.println("line is: '" + l + "'.");
		if (l.startsWith(constant.docroot)) {
		    if (!l.endsWith("/"))
			l = l + "/";

		    docroot = l.substring(10, l.length());
		} else {
		    
		    System.err.println("bad config file on line " + line + ".");
		}
		line++;
		break;
	    }
	    
	    try {
		c = (char)fin.read();
	    } catch (Exception e) {}
	}

    }

    String readLine(FileReader fin) {
	char temp = '\0';
	try {
	    temp = (char)fin.read();
	} catch (Exception e) {}

	String line = new String();
	while(temp!='\n'){
	    line = line + temp;

	    try {
		temp = (char)fin.read();
	    } catch (Exception e) {}

	}
	return line;
    }

}

