OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007 Henry Mason (hmason@mac.com) | 2 * Copyright (C) 2007 Henry Mason (hmason@mac.com) |
3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. | 3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserv
ed. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 29 matching lines...) Expand all Loading... |
40 | 40 |
41 struct MessageEventInit : public EventInit { | 41 struct MessageEventInit : public EventInit { |
42 MessageEventInit(); | 42 MessageEventInit(); |
43 | 43 |
44 String origin; | 44 String origin; |
45 String lastEventId; | 45 String lastEventId; |
46 RefPtr<EventTarget> source; | 46 RefPtr<EventTarget> source; |
47 MessagePortArray ports; | 47 MessagePortArray ports; |
48 }; | 48 }; |
49 | 49 |
50 class MessageEvent : public Event { | 50 class MessageEvent FINAL : public Event { |
51 public: | 51 public: |
52 static PassRefPtr<MessageEvent> create() | 52 static PassRefPtr<MessageEvent> create() |
53 { | 53 { |
54 return adoptRef(new MessageEvent); | 54 return adoptRef(new MessageEvent); |
55 } | 55 } |
56 static PassRefPtr<MessageEvent> create(PassOwnPtr<MessagePortArray> ports, c
onst String& origin = String(), const String& lastEventId = String(), PassRefPtr
<EventTarget> source = 0) | 56 static PassRefPtr<MessageEvent> create(PassOwnPtr<MessagePortArray> ports, c
onst String& origin = String(), const String& lastEventId = String(), PassRefPtr
<EventTarget> source = 0) |
57 { | 57 { |
58 return adoptRef(new MessageEvent(origin, lastEventId, source, ports)); | 58 return adoptRef(new MessageEvent(origin, lastEventId, source, ports)); |
59 } | 59 } |
60 static PassRefPtr<MessageEvent> create(PassOwnPtr<MessagePortArray> ports, P
assRefPtr<SerializedScriptValue> data, const String& origin = String(), const St
ring& lastEventId = String(), PassRefPtr<EventTarget> source = 0) | 60 static PassRefPtr<MessageEvent> create(PassOwnPtr<MessagePortArray> ports, P
assRefPtr<SerializedScriptValue> data, const String& origin = String(), const St
ring& lastEventId = String(), PassRefPtr<EventTarget> source = 0) |
(...skipping 22 matching lines...) Expand all Loading... |
83 void initMessageEvent(const AtomicString& type, bool canBubble, bool cancela
ble, const String& origin, const String& lastEventId, DOMWindow* source, PassOwn
Ptr<MessagePortArray>); | 83 void initMessageEvent(const AtomicString& type, bool canBubble, bool cancela
ble, const String& origin, const String& lastEventId, DOMWindow* source, PassOwn
Ptr<MessagePortArray>); |
84 void initMessageEvent(const AtomicString& type, bool canBubble, bool cancela
ble, PassRefPtr<SerializedScriptValue> data, const String& origin, const String&
lastEventId, DOMWindow* source, PassOwnPtr<MessagePortArray>); | 84 void initMessageEvent(const AtomicString& type, bool canBubble, bool cancela
ble, PassRefPtr<SerializedScriptValue> data, const String& origin, const String&
lastEventId, DOMWindow* source, PassOwnPtr<MessagePortArray>); |
85 | 85 |
86 const String& origin() const { return m_origin; } | 86 const String& origin() const { return m_origin; } |
87 const String& lastEventId() const { return m_lastEventId; } | 87 const String& lastEventId() const { return m_lastEventId; } |
88 EventTarget* source() const { return m_source.get(); } | 88 EventTarget* source() const { return m_source.get(); } |
89 EventTarget* source(bool& isNull) const { isNull = !m_source; return m_sourc
e.get(); } | 89 EventTarget* source(bool& isNull) const { isNull = !m_source; return m_sourc
e.get(); } |
90 MessagePortArray ports() const { return m_ports ? *m_ports : MessagePortArra
y(); } | 90 MessagePortArray ports() const { return m_ports ? *m_ports : MessagePortArra
y(); } |
91 MessagePortChannelArray* channels() const { return m_channels ? m_channels.g
et() : 0; } | 91 MessagePortChannelArray* channels() const { return m_channels ? m_channels.g
et() : 0; } |
92 | 92 |
93 virtual const AtomicString& interfaceName() const; | 93 virtual const AtomicString& interfaceName() const OVERRIDE; |
94 | 94 |
95 enum DataType { | 95 enum DataType { |
96 DataTypeScriptValue, | 96 DataTypeScriptValue, |
97 DataTypeSerializedScriptValue, | 97 DataTypeSerializedScriptValue, |
98 DataTypeString, | 98 DataTypeString, |
99 DataTypeBlob, | 99 DataTypeBlob, |
100 DataTypeArrayBuffer | 100 DataTypeArrayBuffer |
101 }; | 101 }; |
102 DataType dataType() const { return m_dataType; } | 102 DataType dataType() const { return m_dataType; } |
103 SerializedScriptValue* dataAsSerializedScriptValue() const { ASSERT(m_dataTy
pe == DataTypeScriptValue || m_dataType == DataTypeSerializedScriptValue); retur
n m_dataAsSerializedScriptValue.get(); } | 103 SerializedScriptValue* dataAsSerializedScriptValue() const { ASSERT(m_dataTy
pe == DataTypeScriptValue || m_dataType == DataTypeSerializedScriptValue); retur
n m_dataAsSerializedScriptValue.get(); } |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 // m_ports are the MessagePorts in an engtangled state, and m_channels are | 135 // m_ports are the MessagePorts in an engtangled state, and m_channels are |
136 // the MessageChannels in a disentangled state. Only one of them can be | 136 // the MessageChannels in a disentangled state. Only one of them can be |
137 // non-empty at a time. entangleMessagePorts() moves between the states. | 137 // non-empty at a time. entangleMessagePorts() moves between the states. |
138 OwnPtr<MessagePortArray> m_ports; | 138 OwnPtr<MessagePortArray> m_ports; |
139 OwnPtr<MessagePortChannelArray> m_channels; | 139 OwnPtr<MessagePortChannelArray> m_channels; |
140 }; | 140 }; |
141 | 141 |
142 } // namespace WebCore | 142 } // namespace WebCore |
143 | 143 |
144 #endif // MessageEvent_h | 144 #endif // MessageEvent_h |
OLD | NEW |