NS_IMETHODIMP
udptHttppHandler::NewChannel(nsIURI *uri, nsIChannel **_retval)
{
    if (!_http_handler)
      return NS_ERROR_UNEXPECTED;

    nsCString host;
    PRInt32 port;
    uri->GetHost(host);
    uri->GetPort(&port);

    udptProxyInfo *proxyInfo = new udptProxyInfo("udptransport",
    		host, port, 0, 0);
    if (!proxyInfo)
        return NS_ERROR_OUT_OF_MEMORY;

    NS_ADDREF(proxyInfo);

//    nsCString scheme;
//    scheme.AssignLiteral("http");
//    uri->SetScheme(scheme);
    return NewProxiedChannel(uri, proxyInfo, _retval);
}
NS_IMETHODIMP
nsFtpProtocolHandler::NewChannel(nsIURI* url, nsIChannel* *result)
{
    return NewProxiedChannel(url, nsnull, result);
}
NS_IMETHODIMP
nsDateTimeHandler::NewChannel(nsIURI* url, nsIChannel* *result)
{
    return NewProxiedChannel(url, nsnull, result);
}