// ** This class was generated with DemFGen (vers:11/17/2009)

namespace edu.neu.ccs.demeterf.http.classes{

using edu.neu.ccs.demeterf.lib;
using System.Net.Sockets;
using System.Text;
using System.IO;

using System;



/** Representation of URL */
public abstract class URL{

    /** Construct a(n) URL Instance */
    public URL(){
    }
    /** Parse an instance of URL from the given String */
    public static new URL Parse(String inpt) {
        return new TheParser(new System.IO.StringReader(inpt)).parse_URL();
    }
    /** Parse an instance of URL from the given Stream */
    public static new URL Parse(System.IO.Stream inpt) {
        return new TheParser(inpt).parse_URL();
    }
    /** Parse an instance of URL from the given Reader */
    public static new URL Parse(System.IO.TextReader inpt) {
        return new TheParser(inpt).parse_URL();
    }


    /** Is this URL Empty? */
    public bool isEmpty(){ return false; }
    /** Return the URLs Arguments */
    public abstract Map<String,String> urlArgs();
    /** Remove the URLs Arguments */
    public abstract String trimArgs();

    /** DGP method from Class PrintToString */
    public override String ToString(){ return global::edu.neu.ccs.demeterf.http.classes.PrintToString.PrintToStringM(this); }

}
}