blob: a36022cabfcbe51817f200a5e78582a49b31f731 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef THIRD_PARTY_BLINK_RENDERER_CORE_EVENTS_APPLICATION_CACHE_ERROR_EVENT_H_
#define THIRD_PARTY_BLINK_RENDERER_CORE_EVENTS_APPLICATION_CACHE_ERROR_EVENT_H_
#include "third_party/blink/public/mojom/appcache/appcache.mojom-blink.h"
#include "third_party/blink/public/platform/web_application_cache_host_client.h"
#include "third_party/blink/renderer/core/dom/events/event.h"
#include "third_party/blink/renderer/core/event_interface_names.h"
#include "third_party/blink/renderer/core/events/application_cache_error_event_init.h"
#include "third_party/blink/renderer/core/loader/appcache/application_cache_host.h"
namespace blink {
class ApplicationCacheErrorEvent final : public Event {
DEFINE_WRAPPERTYPEINFO();
public:
ApplicationCacheErrorEvent(mojom::AppCacheErrorReason,
const String& url,
int status,
const String& message);
ApplicationCacheErrorEvent(const AtomicString& event_type,
const ApplicationCacheErrorEventInit* initializer);
~ApplicationCacheErrorEvent() override;
static ApplicationCacheErrorEvent* Create(mojom::AppCacheErrorReason reason,
const String& url,
int status,
const String& message) {
return MakeGarbageCollected<ApplicationCacheErrorEvent>(reason, url, status,
message);
}
static ApplicationCacheErrorEvent* Create(
const AtomicString& event_type,
const ApplicationCacheErrorEventInit* initializer) {
return MakeGarbageCollected<ApplicationCacheErrorEvent>(event_type,
initializer);
}
const String& reason() const { return reason_; }
const String& url() const { return url_; }
int status() const { return status_; }
const String& message() const { return message_; }
const AtomicString& InterfaceName() const override {
return event_interface_names::kApplicationCacheErrorEvent;
}
void Trace(blink::Visitor*) override;
private:
String reason_;
String url_;
int status_;
String message_;
};
} // namespace blink
#endif // THIRD_PARTY_BLINK_RENDERER_CORE_EVENTS_APPLICATION_CACHE_ERROR_EVENT_H_