DownloadAuthenticationClient.h [plain text]
#ifndef DownloadAuthenticationClient_h
#define DownloadAuthenticationClient_h
#include <WebCore/AuthenticationClient.h>
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
namespace WebCore {
class AuthenticationChallenge;
class Credential;
}
namespace WebKit {
class Download;
class DownloadAuthenticationClient : public RefCounted<DownloadAuthenticationClient>, public WebCore::AuthenticationClient {
public:
static PassRefPtr<DownloadAuthenticationClient> create(Download* download) { return adoptRef(new DownloadAuthenticationClient(download)); }
void detach() { m_download = 0; }
using RefCounted<DownloadAuthenticationClient>::ref;
using RefCounted<DownloadAuthenticationClient>::deref;
private:
DownloadAuthenticationClient(Download*);
virtual void receivedCredential(const WebCore::AuthenticationChallenge&, const WebCore::Credential&);
virtual void receivedRequestToContinueWithoutCredential(const WebCore::AuthenticationChallenge&);
virtual void receivedCancellation(const WebCore::AuthenticationChallenge&);
virtual void receivedRequestToPerformDefaultHandling(const WebCore::AuthenticationChallenge&) override;
virtual void receivedChallengeRejection(const WebCore::AuthenticationChallenge&) override;
virtual void refAuthenticationClient() { ref(); }
virtual void derefAuthenticationClient() { deref(); }
Download* m_download;
};
}
#endif // DownloadAuthenticationClient_h