#define MessageEvent_h
#include "bindings/core/v8/SerializedScriptValue.h"
+#include "core/dom/DOMArrayBuffer.h"
+#include "core/dom/MessagePort.h"
#include "core/events/Event.h"
#include "core/events/EventTarget.h"
-#include "core/dom/MessagePort.h"
#include "core/fileapi/Blob.h"
#include "core/frame/LocalDOMWindow.h"
-#include "wtf/ArrayBuffer.h"
namespace blink {
MessagePortArray ports;
};
-class MessageEvent FINAL : public Event {
+class MessageEvent final : public Event {
DEFINE_WRAPPERTYPEINFO();
public:
static PassRefPtrWillBeRawPtr<MessageEvent> create()
{
return adoptRefWillBeNoop(new MessageEvent(data, origin));
}
- static PassRefPtrWillBeRawPtr<MessageEvent> create(PassRefPtrWillBeRawPtr<Blob> data, const String& origin = String())
+ static PassRefPtrWillBeRawPtr<MessageEvent> create(Blob* data, const String& origin = String())
{
return adoptRefWillBeNoop(new MessageEvent(data, origin));
}
- static PassRefPtrWillBeRawPtr<MessageEvent> create(PassRefPtr<ArrayBuffer> data, const String& origin = String())
+ static PassRefPtrWillBeRawPtr<MessageEvent> create(PassRefPtr<DOMArrayBuffer> data, const String& origin = String())
{
return adoptRefWillBeNoop(new MessageEvent(data, origin));
}
MessagePortArray ports() const { return m_ports ? *m_ports : MessagePortArray(); }
MessagePortChannelArray* channels() const { return m_channels ? m_channels.get() : 0; }
- virtual const AtomicString& interfaceName() const OVERRIDE;
+ virtual const AtomicString& interfaceName() const override;
enum DataType {
DataTypeScriptValue,
SerializedScriptValue* dataAsSerializedScriptValue() const { ASSERT(m_dataType == DataTypeScriptValue || m_dataType == DataTypeSerializedScriptValue); return m_dataAsSerializedScriptValue.get(); }
String dataAsString() const { ASSERT(m_dataType == DataTypeString); return m_dataAsString; }
Blob* dataAsBlob() const { ASSERT(m_dataType == DataTypeBlob); return m_dataAsBlob.get(); }
- ArrayBuffer* dataAsArrayBuffer() const { ASSERT(m_dataType == DataTypeArrayBuffer); return m_dataAsArrayBuffer.get(); }
+ DOMArrayBuffer* dataAsArrayBuffer() const { ASSERT(m_dataType == DataTypeArrayBuffer); return m_dataAsArrayBuffer.get(); }
void setSerializedData(PassRefPtr<SerializedScriptValue> data)
{
void entangleMessagePorts(ExecutionContext*);
- virtual void trace(Visitor*) OVERRIDE;
+ virtual void trace(Visitor*) override;
- virtual v8::Handle<v8::Object> associateWithWrapper(const WrapperTypeInfo*, v8::Handle<v8::Object> wrapper, v8::Isolate*) OVERRIDE;
+ virtual v8::Handle<v8::Object> associateWithWrapper(const WrapperTypeInfo*, v8::Handle<v8::Object> wrapper, v8::Isolate*) override;
private:
MessageEvent();
MessageEvent(PassRefPtr<SerializedScriptValue> data, const String& origin, const String& lastEventId, PassRefPtrWillBeRawPtr<EventTarget> source, PassOwnPtr<MessagePortChannelArray>);
MessageEvent(const String& data, const String& origin);
- MessageEvent(PassRefPtrWillBeRawPtr<Blob> data, const String& origin);
- MessageEvent(PassRefPtr<ArrayBuffer> data, const String& origin);
+ MessageEvent(Blob* data, const String& origin);
+ MessageEvent(PassRefPtr<DOMArrayBuffer> data, const String& origin);
DataType m_dataType;
RefPtr<SerializedScriptValue> m_dataAsSerializedScriptValue;
String m_dataAsString;
- RefPtrWillBeMember<Blob> m_dataAsBlob;
- RefPtr<ArrayBuffer> m_dataAsArrayBuffer;
+ PersistentWillBeMember<Blob> m_dataAsBlob;
+ RefPtr<DOMArrayBuffer> m_dataAsArrayBuffer;
String m_origin;
String m_lastEventId;
RefPtrWillBeMember<EventTarget> m_source;