import java.net.*;
import java.io.*;
import java.util.*;

public class RunCgi {

    protected Vector file;
    RunCgi () {
        file = new Vector();
    }
	
    public void addEntry(String n) {
        file.addElement(n);
    }
        
    public void removeEntry(String n) {
        file.removeElement(n);
    }
        
    public int numEntry() {
        return file.size();
    }
        
    public void clearFile() {
        file.removeAllElements();
    }
    
    public String [] FileArray (Vector vec) {
        int num = vec.size();
        String [] FA = new String [num];
        if (vec.isEmpty())
            System.out.println("Empty vector");
        else {
            for (int i=0; i<vec.size(); i++)
                FA[i]= vec.elementAt(i).toString();
        }
        return FA;
    }
        
    public static void printFile(String msg, Vector vec) {
        if (msg!=null)
            System.out.println(msg);
        if (vec.isEmpty())
            System.out.println("Empty vector");
        else
            for (int i=0; i<vec.size(); i++)
                System.out.println(i+"  "+vec.elementAt(i).toString());
    }
        
    //public static void ReadIt (String urlNFile) {            
    public void ReadIt (String urlNFile) {            
        // Read contents of BKM file
        clearFile();
        file.removeAllElements();
        try {
	    URL u = new URL(urlNFile);
	    InputStream is = u.openStream();
	    String line="";
	    DataInputStream in = new DataInputStream(new BufferedInputStream(is));
	    while ((line = in.readLine()) != null) {
	        addEntry(line);
	        //System.out.println(line);
	        //file.addElement(n);
	    }
	    in.close();	  
	}
	catch (Exception e) {
	    System.err.println("Read Error: exception:" + e);
	}
	finally { // Always close the streams
	    try {//in.close();
	    } 
	    catch (Exception e) {}
	}	              
    } // End ReadbkmFile
}
