gecko-dev/docshell/base/nsDefaultURIFixup.h
Gijs Kruitbosch 98f4f1ce42 Bug 1042519 - test. should result in a keyword lookup instead of an error page, r=bz,mak
Also taking the opportunity to rework the nsIURIFixupInfo interface to use more sensible booleans, and the relevant test to specify outcomes directly, instead of trying to use the same logic as the implementation to infer them from the input.

--HG--
extra : rebase_source : 43b54b9ff412c05dc3fd2575a80919fc085d2d49
2014-07-25 11:46:07 +01:00

65 lines
1.8 KiB
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef NSDEFAULTURIFIXUP_H
#define NSDEFAULTURIFIXUP_H
#include "nsIURIFixup.h"
class nsDefaultURIFixupInfo;
/* Header file */
class nsDefaultURIFixup : public nsIURIFixup
{
public:
NS_DECL_ISUPPORTS
NS_DECL_NSIURIFIXUP
nsDefaultURIFixup();
protected:
virtual ~nsDefaultURIFixup();
private:
/* additional members */
nsresult FileURIFixup(const nsACString &aStringURI, nsIURI** aURI);
nsresult ConvertFileToStringURI(const nsACString& aIn, nsCString& aOut);
nsresult FixupURIProtocol(const nsACString& aIn,
nsDefaultURIFixupInfo* aFixupInfo,
nsIURI** aURI);
void KeywordURIFixup(const nsACString &aStringURI,
nsDefaultURIFixupInfo* aFixupInfo,
nsIInputStream** aPostData);
bool PossiblyByteExpandedFileName(const nsAString& aIn);
bool PossiblyHostPortUrl(const nsACString& aUrl);
bool MakeAlternateURI(nsIURI *aURI);
bool IsLikelyFTP(const nsCString& aHostSpec);
};
class nsDefaultURIFixupInfo : public nsIURIFixupInfo
{
public:
NS_DECL_ISUPPORTS
NS_DECL_NSIURIFIXUPINFO
nsDefaultURIFixupInfo(const nsACString& aOriginalInput);
friend class nsDefaultURIFixup;
protected:
virtual ~nsDefaultURIFixupInfo();
private:
nsCOMPtr<nsISupports> mConsumer;
nsCOMPtr<nsIURI> mPreferredURI;
nsCOMPtr<nsIURI> mFixedURI;
bool mFixupUsedKeyword;
bool mFixupChangedProtocol;
bool mFixupCreatedAlternateURI;
nsAutoCString mOriginalInput;
};
#endif