<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[177699] trunk/Source/WebKit2</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/177699">177699</a></dd>
<dt>Author</dt> <dd>weinig@apple.com</dd>
<dt>Date</dt> <dd>2014-12-23 15:07:40 -0800 (Tue, 23 Dec 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre>Rename ImmutableDictionary to API::Dictionary and merge MutableDictionary into it
https://bugs.webkit.org/show_bug.cgi?id=139917
Reviewed by Anders Carlsson.
- Renames ImmutableDictionary -> API::Dictionary
- Merges MutableDictionary into the new API::Dictionary
(as a result WKDictionaryIsMutable() now always returns true)
* File list elided *</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedAPICocoaWKRemoteObjectCoderh">trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.h</a></li>
<li><a href="#trunkSourceWebKit2SharedAPICocoaWKRemoteObjectCodermm">trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.mm</a></li>
<li><a href="#trunkSourceWebKit2SharedAPICocoa_WKRemoteObjectRegistrymm">trunk/Source/WebKit2/Shared/API/Cocoa/_WKRemoteObjectRegistry.mm</a></li>
<li><a href="#trunkSourceWebKit2SharedAPIcWKDeprecatedFunctionscpp">trunk/Source/WebKit2/Shared/API/c/WKDeprecatedFunctions.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedAPIcWKDictionarycpp">trunk/Source/WebKit2/Shared/API/c/WKDictionary.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedAPIcWKMutableDictionarycpp">trunk/Source/WebKit2/Shared/API/c/WKMutableDictionary.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedAPIcWKSharedAPICasth">trunk/Source/WebKit2/Shared/API/c/WKSharedAPICast.h</a></li>
<li><a href="#trunkSourceWebKit2SharedCocoaWKNSDictionaryh">trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.h</a></li>
<li><a href="#trunkSourceWebKit2SharedCocoaWKNSDictionarymm">trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.mm</a></li>
<li><a href="#trunkSourceWebKit2SharedPluginsNetscapePluginInformationcpp">trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedPluginsNetscapePluginInformationh">trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.h</a></li>
<li><a href="#trunkSourceWebKit2SharedPluginsNetscapemacPluginInformationMacmm">trunk/Source/WebKit2/Shared/Plugins/Netscape/mac/PluginInformationMac.mm</a></li>
<li><a href="#trunkSourceWebKit2SharedUserDatacpp">trunk/Source/WebKit2/Shared/UserData.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedUserMessageCodersh">trunk/Source/WebKit2/Shared/UserMessageCoders.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPIAPILoaderClienth">trunk/Source/WebKit2/UIProcess/API/APILoaderClient.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPIAPIUIClienth">trunk/Source/WebKit2/UIProcess/API/APIUIClient.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICWKPagecpp">trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICmacWKContextPrivateMacmm">trunk/Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessNotificationsWebNotificationManagerProxycpp">trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationManagerProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessNotificationsWebNotificationProvidercpp">trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessNotificationsWebNotificationProviderh">trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessPluginsPlugInAutoStartProvidercpp">trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessPluginsPlugInAutoStartProviderh">trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessStatisticsRequestcpp">trunk/Source/WebKit2/UIProcess/StatisticsRequest.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessStatisticsRequesth">trunk/Source/WebKit2/UIProcess/StatisticsRequest.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebDatabaseManagerProxycpp">trunk/Source/WebKit2/UIProcess/WebDatabaseManagerProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebFormClientcpp">trunk/Source/WebKit2/UIProcess/WebFormClient.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebKeyValueStorageManagercpp">trunk/Source/WebKit2/UIProcess/WebKeyValueStorageManager.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageProxycpp">trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebProcessPoolcpp">trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebProcessPoolh">trunk/Source/WebKit2/UIProcess/WebProcessPool.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebResourceCacheManagerProxycpp">trunk/Source/WebKit2/UIProcess/WebResourceCacheManagerProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj">trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebKit2WebProcessInjectedBundleInjectedBundlePageFormClientcpp">trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2SharedAPIAPIDictionarycpp">trunk/Source/WebKit2/Shared/API/APIDictionary.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedAPIAPIDictionaryh">trunk/Source/WebKit2/Shared/API/APIDictionary.h</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2SharedImmutableDictionarycpp">trunk/Source/WebKit2/Shared/ImmutableDictionary.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedImmutableDictionaryh">trunk/Source/WebKit2/Shared/ImmutableDictionary.h</a></li>
<li><a href="#trunkSourceWebKit2SharedMutableDictionarycpp">trunk/Source/WebKit2/Shared/MutableDictionary.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedMutableDictionaryh">trunk/Source/WebKit2/Shared/MutableDictionary.h</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/ChangeLog        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -1,3 +1,16 @@
</span><ins>+2014-12-23 Sam Weinig <sam@webkit.org>
+
+ Rename ImmutableDictionary to API::Dictionary and merge MutableDictionary into it
+ https://bugs.webkit.org/show_bug.cgi?id=139917
+
+ Reviewed by Anders Carlsson.
+
+ - Renames ImmutableDictionary -> API::Dictionary
+ - Merges MutableDictionary into the new API::Dictionary
+ (as a result WKDictionaryIsMutable() now always returns true)
+
+ * File list elided *
+
</ins><span class="cx"> 2014-12-23 Anders Carlsson <andersca@apple.com>
</span><span class="cx">
</span><span class="cx"> Add WebProcess::transformObjectsToHandles
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedAPIAPIDictionarycppfromrev177692trunkSourceWebKit2SharedImmutableDictionarycpp"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebKit2/Shared/API/APIDictionary.cpp (from rev 177692, trunk/Source/WebKit2/Shared/ImmutableDictionary.cpp) (0 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/APIDictionary.cpp         (rev 0)
+++ trunk/Source/WebKit2/Shared/API/APIDictionary.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -0,0 +1,84 @@
</span><ins>+/*
+ * Copyright (C) 2010 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "APIDictionary.h"
+
+#include "APIArray.h"
+#include "APIString.h"
+
+namespace API {
+
+RefPtr<Dictionary> Dictionary::create()
+{
+ return create({ });
+}
+
+RefPtr<Dictionary> Dictionary::create(MapType map)
+{
+ return adoptRef(new Dictionary(WTF::move(map)));
+}
+
+Dictionary::Dictionary(MapType map)
+ : m_map(WTF::move(map))
+{
+}
+
+Dictionary::~Dictionary()
+{
+}
+
+PassRefPtr<Array> Dictionary::keys() const
+{
+ if (m_map.isEmpty())
+ return API::Array::create();
+
+ Vector<RefPtr<API::Object>> keys;
+ keys.reserveInitialCapacity(m_map.size());
+
+ for (const auto& key : m_map.keys())
+ keys.uncheckedAppend(API::String::create(key));
+
+ return API::Array::create(WTF::move(keys));
+}
+
+bool Dictionary::add(const WTF::String& key, PassRefPtr<API::Object> item)
+{
+ MapType::AddResult result = m_map.add(key, item);
+ return result.isNewEntry;
+}
+
+bool Dictionary::set(const WTF::String& key, PassRefPtr<API::Object> item)
+{
+ MapType::AddResult result = m_map.set(key, item);
+ return result.isNewEntry;
+}
+
+void Dictionary::remove(const WTF::String& key)
+{
+ m_map.remove(key);
+}
+
+} // namespace API
</ins></span></pre></div>
<a id="trunkSourceWebKit2SharedAPIAPIDictionaryhfromrev177692trunkSourceWebKit2SharedImmutableDictionaryh"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebKit2/Shared/API/APIDictionary.h (from rev 177692, trunk/Source/WebKit2/Shared/ImmutableDictionary.h) (0 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/APIDictionary.h         (rev 0)
+++ trunk/Source/WebKit2/Shared/API/APIDictionary.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -0,0 +1,91 @@
</span><ins>+/*
+ * Copyright (C) 2010 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef APIDictionary_h
+#define APIDictionary_h
+
+#include "APIObject.h"
+#include <wtf/HashMap.h>
+#include <wtf/PassRefPtr.h>
+#include <wtf/text/StringHash.h>
+#include <wtf/text/WTFString.h>
+
+namespace API {
+
+class Array;
+
+class Dictionary final : public ObjectImpl<Object::Type::Dictionary> {
+public:
+ typedef HashMap<WTF::String, RefPtr<Object>> MapType;
+
+ static RefPtr<Dictionary> create();
+ static RefPtr<Dictionary> create(MapType);
+
+ virtual ~Dictionary();
+
+ template<typename T>
+ T* get(const WTF::String& key) const
+ {
+ RefPtr<Object> item = m_map.get(key);
+ if (!item)
+ return 0;
+
+ if (item->type() != T::APIType)
+ return 0;
+
+ return static_cast<T*>(item.get());
+ }
+
+ Object* get(const WTF::String& key) const
+ {
+ return m_map.get(key);
+ }
+
+ Object* get(const WTF::String& key, bool& exists) const
+ {
+ auto it = m_map.find(key);
+ exists = it != m_map.end();
+ return it->value.get();
+ }
+
+ PassRefPtr<Array> keys() const;
+
+ bool add(const WTF::String& key, PassRefPtr<Object>);
+ bool set(const WTF::String& key, PassRefPtr<Object>);
+ void remove(const WTF::String& key);
+
+ size_t size() const { return m_map.size(); }
+
+ const MapType& map() const { return m_map; }
+
+protected:
+ explicit Dictionary(MapType);
+
+ MapType m_map;
+};
+
+} // namespace API
+
+#endif // APIDictionary_h
</ins></span></pre></div>
<a id="trunkSourceWebKit2SharedAPICocoaWKRemoteObjectCoderh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,21 +27,21 @@
</span><span class="cx">
</span><span class="cx"> #if WK_API_ENABLED
</span><span class="cx">
</span><del>-namespace WebKit {
-class ImmutableDictionary;
</del><ins>+namespace API {
+class Dictionary;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> @class _WKRemoteObjectInterface;
</span><span class="cx">
</span><span class="cx"> @interface WKRemoteObjectEncoder : NSCoder
</span><span class="cx">
</span><del>-- (WebKit::ImmutableDictionary*)rootObjectDictionary;
</del><ins>+- (API::Dictionary*)rootObjectDictionary;
</ins><span class="cx">
</span><span class="cx"> @end
</span><span class="cx">
</span><span class="cx"> @interface WKRemoteObjectDecoder : NSCoder
</span><span class="cx">
</span><del>-- (id)initWithInterface:(_WKRemoteObjectInterface *)interface rootObjectDictionary:(const WebKit::ImmutableDictionary*)rootObjectDictionary;
</del><ins>+- (id)initWithInterface:(_WKRemoteObjectInterface *)interface rootObjectDictionary:(const API::Dictionary*)rootObjectDictionary;
</ins><span class="cx">
</span><span class="cx"> @end
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedAPICocoaWKRemoteObjectCodermm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.mm (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.mm        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectCoder.mm        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -30,9 +30,9 @@
</span><span class="cx">
</span><span class="cx"> #import "APIArray.h"
</span><span class="cx"> #import "APIData.h"
</span><ins>+#import "APIDictionary.h"
</ins><span class="cx"> #import "APINumber.h"
</span><span class="cx"> #import "APIString.h"
</span><del>-#import "MutableDictionary.h"
</del><span class="cx"> #import "_WKRemoteObjectInterfaceInternal.h"
</span><span class="cx"> #import <objc/runtime.h>
</span><span class="cx"> #import <wtf/RetainPtr.h>
</span><span class="lines">@@ -45,10 +45,8 @@
</span><span class="cx"> static NSString * const selectorKey = @"selector";
</span><span class="cx"> static NSString * const typeStringKey = @"typeString";
</span><span class="cx">
</span><del>-using namespace WebKit;
</del><ins>+static PassRefPtr<API::Dictionary> createEncodedObject(WKRemoteObjectEncoder *, id);
</ins><span class="cx">
</span><del>-static PassRefPtr<ImmutableDictionary> createEncodedObject(WKRemoteObjectEncoder *, id);
-
</del><span class="cx"> @interface NSMethodSignature (Details)
</span><span class="cx"> - (NSString *)_typeString;
</span><span class="cx"> @end
</span><span class="lines">@@ -58,10 +56,10 @@
</span><span class="cx"> @end
</span><span class="cx">
</span><span class="cx"> @implementation WKRemoteObjectEncoder {
</span><del>- RefPtr<MutableDictionary> _rootDictionary;
</del><ins>+ RefPtr<API::Dictionary> _rootDictionary;
</ins><span class="cx"> API::Array* _objectStream;
</span><span class="cx">
</span><del>- MutableDictionary* _currentDictionary;
</del><ins>+ API::Dictionary* _currentDictionary;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (id)init
</span><span class="lines">@@ -69,7 +67,7 @@
</span><span class="cx"> if (!(self = [super init]))
</span><span class="cx"> return nil;
</span><span class="cx">
</span><del>- _rootDictionary = MutableDictionary::create();
</del><ins>+ _rootDictionary = API::Dictionary::create();
</ins><span class="cx"> _currentDictionary = _rootDictionary.get();
</span><span class="cx">
</span><span class="cx"> return self;
</span><span class="lines">@@ -84,7 +82,7 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-- (ImmutableDictionary*)rootObjectDictionary
</del><ins>+- (API::Dictionary*)rootObjectDictionary
</ins><span class="cx"> {
</span><span class="cx"> return _rootDictionary.get();
</span><span class="cx"> }
</span><span class="lines">@@ -107,7 +105,7 @@
</span><span class="cx"> size_t position = encoder->_objectStream->size();
</span><span class="cx"> encoder->_objectStream->elements().append(nullptr);
</span><span class="cx">
</span><del>- RefPtr<ImmutableDictionary> encodedObject = createEncodedObject(encoder, value);
</del><ins>+ RefPtr<API::Dictionary> encodedObject = createEncodedObject(encoder, value);
</ins><span class="cx"> ASSERT(!encoder->_objectStream->elements()[position]);
</span><span class="cx"> encoder->_objectStream->elements()[position] = encodedObject.release();
</span><span class="cx"> }
</span><span class="lines">@@ -240,13 +238,13 @@
</span><span class="cx"> [object encodeWithCoder:encoder];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static PassRefPtr<ImmutableDictionary> createEncodedObject(WKRemoteObjectEncoder *encoder, id object)
</del><ins>+static PassRefPtr<API::Dictionary> createEncodedObject(WKRemoteObjectEncoder *encoder, id object)
</ins><span class="cx"> {
</span><span class="cx"> if (!object)
</span><span class="cx"> return nil;
</span><span class="cx">
</span><del>- RefPtr<MutableDictionary> dictionary = MutableDictionary::create();
- TemporaryChange<MutableDictionary*> dictionaryChange(encoder->_currentDictionary, dictionary.get());
</del><ins>+ RefPtr<API::Dictionary> dictionary = API::Dictionary::create();
+ TemporaryChange<API::Dictionary*> dictionaryChange(encoder->_currentDictionary, dictionary.get());
</ins><span class="cx">
</span><span class="cx"> encodeObject(encoder, object);
</span><span class="cx">
</span><span class="lines">@@ -329,8 +327,8 @@
</span><span class="cx"> @implementation WKRemoteObjectDecoder {
</span><span class="cx"> RetainPtr<_WKRemoteObjectInterface> _interface;
</span><span class="cx">
</span><del>- const ImmutableDictionary* _rootDictionary;
- const ImmutableDictionary* _currentDictionary;
</del><ins>+ const API::Dictionary* _rootDictionary;
+ const API::Dictionary* _currentDictionary;
</ins><span class="cx">
</span><span class="cx"> const API::Array* _objectStream;
</span><span class="cx"> size_t _objectStreamPosition;
</span><span class="lines">@@ -338,7 +336,7 @@
</span><span class="cx"> NSSet *_allowedClasses;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-- (id)initWithInterface:(_WKRemoteObjectInterface *)interface rootObjectDictionary:(const WebKit::ImmutableDictionary*)rootObjectDictionary
</del><ins>+- (id)initWithInterface:(_WKRemoteObjectInterface *)interface rootObjectDictionary:(const API::Dictionary*)rootObjectDictionary
</ins><span class="cx"> {
</span><span class="cx"> if (!(self = [super init]))
</span><span class="cx"> return nil;
</span><span class="lines">@@ -381,7 +379,7 @@
</span><span class="cx"> return [self decodeObjectOfClasses:nil forKey:key];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static id decodeObject(WKRemoteObjectDecoder *, const ImmutableDictionary*, NSSet *allowedClasses);
</del><ins>+static id decodeObject(WKRemoteObjectDecoder *, const API::Dictionary*, NSSet *allowedClasses);
</ins><span class="cx">
</span><span class="cx"> static id decodeObjectFromObjectStream(WKRemoteObjectDecoder *decoder, NSSet *allowedClasses)
</span><span class="cx"> {
</span><span class="lines">@@ -391,7 +389,7 @@
</span><span class="cx"> if (decoder->_objectStreamPosition == decoder->_objectStream->size())
</span><span class="cx"> return nil;
</span><span class="cx">
</span><del>- const ImmutableDictionary* dictionary = decoder->_objectStream->at<ImmutableDictionary>(decoder->_objectStreamPosition++);
</del><ins>+ const API::Dictionary* dictionary = decoder->_objectStream->at<API::Dictionary>(decoder->_objectStreamPosition++);
</ins><span class="cx">
</span><span class="cx"> return decodeObject(decoder, dictionary, allowedClasses);
</span><span class="cx"> }
</span><span class="lines">@@ -570,12 +568,12 @@
</span><span class="cx"> return [result autorelease];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static id decodeObject(WKRemoteObjectDecoder *decoder, const ImmutableDictionary* dictionary, NSSet *allowedClasses)
</del><ins>+static id decodeObject(WKRemoteObjectDecoder *decoder, const API::Dictionary* dictionary, NSSet *allowedClasses)
</ins><span class="cx"> {
</span><span class="cx"> if (!dictionary)
</span><span class="cx"> return nil;
</span><span class="cx">
</span><del>- TemporaryChange<const ImmutableDictionary*> dictionaryChange(decoder->_currentDictionary, dictionary);
</del><ins>+ TemporaryChange<const API::Dictionary*> dictionaryChange(decoder->_currentDictionary, dictionary);
</ins><span class="cx">
</span><span class="cx"> // If no allowed classes were listed, just use the currently allowed classes.
</span><span class="cx"> if (!allowedClasses)
</span><span class="lines">@@ -641,7 +639,7 @@
</span><span class="cx">
</span><span class="cx"> - (id)decodeObjectOfClasses:(NSSet *)classes forKey:(NSString *)key
</span><span class="cx"> {
</span><del>- return decodeObject(self, _currentDictionary->get<ImmutableDictionary>(escapeKey(key)), classes);
</del><ins>+ return decodeObject(self, _currentDictionary->get<API::Dictionary>(escapeKey(key)), classes);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (NSSet *)allowedClasses
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedAPICocoa_WKRemoteObjectRegistrymm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/API/Cocoa/_WKRemoteObjectRegistry.mm (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/Cocoa/_WKRemoteObjectRegistry.mm        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/API/Cocoa/_WKRemoteObjectRegistry.mm        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -28,9 +28,8 @@
</span><span class="cx">
</span><span class="cx"> #if WK_API_ENABLED
</span><span class="cx">
</span><ins>+#import "APIDictionary.h"
</ins><span class="cx"> #import "Connection.h"
</span><del>-#import "ImmutableDictionary.h"
-#import "MutableDictionary.h"
</del><span class="cx"> #import "RemoteObjectRegistry.h"
</span><span class="cx"> #import "UserData.h"
</span><span class="cx"> #import "WKConnectionRef.h"
</span><span class="lines">@@ -103,7 +102,7 @@
</span><span class="cx"> RetainPtr<WKRemoteObjectEncoder> encoder = adoptNS([[WKRemoteObjectEncoder alloc] init]);
</span><span class="cx"> [encoder encodeObject:invocation forKey:invocationKey];
</span><span class="cx">
</span><del>- RefPtr<MutableDictionary> body = MutableDictionary::create();
</del><ins>+ RefPtr<API::Dictionary> body = API::Dictionary::create();
</ins><span class="cx"> body->set(interfaceIdentifierKey, API::String::create(interface.identifier));
</span><span class="cx"> body->set(encodedInvocationKey, [encoder rootObjectDictionary]);
</span><span class="cx">
</span><span class="lines">@@ -123,13 +122,13 @@
</span><span class="cx"> if (!invocation.object() || invocation.object()->type() != API::Object::Type::Dictionary)
</span><span class="cx"> return NO;
</span><span class="cx">
</span><del>- const ImmutableDictionary& dictionary = static_cast<const ImmutableDictionary&>(*invocation.object());
</del><ins>+ const API::Dictionary& dictionary = static_cast<const API::Dictionary&>(*invocation.object());
</ins><span class="cx">
</span><span class="cx"> API::String* interfaceIdentifier = dictionary.get<API::String>(interfaceIdentifierKey);
</span><span class="cx"> if (!interfaceIdentifier)
</span><span class="cx"> return NO;
</span><span class="cx">
</span><del>- const ImmutableDictionary* encodedInvocation = dictionary.get<ImmutableDictionary>(encodedInvocationKey);
</del><ins>+ const API::Dictionary* encodedInvocation = dictionary.get<API::Dictionary>(encodedInvocationKey);
</ins><span class="cx"> if (!encodedInvocationKey)
</span><span class="cx"> return NO;
</span><span class="cx">
</span><span class="lines">@@ -138,7 +137,7 @@
</span><span class="cx"> return YES;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-- (void)_invokeMessageWithInterfaceIdentifier:(const String&)interfaceIdentifier encodedInvocation:(const ImmutableDictionary*)encodedInvocation
</del><ins>+- (void)_invokeMessageWithInterfaceIdentifier:(const String&)interfaceIdentifier encodedInvocation:(const API::Dictionary*)encodedInvocation
</ins><span class="cx"> {
</span><span class="cx"> auto interfaceAndObject = _exportedObjects.get(interfaceIdentifier);
</span><span class="cx"> if (!interfaceAndObject.second) {
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedAPIcWKDeprecatedFunctionscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/API/c/WKDeprecatedFunctions.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/c/WKDeprecatedFunctions.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/API/c/WKDeprecatedFunctions.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -25,7 +25,7 @@
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><span class="cx">
</span><del>-#include "MutableDictionary.h"
</del><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "WKArray.h"
</span><span class="cx"> #include "WKMutableDictionary.h"
</span><span class="cx"> #include "WKSharedAPICast.h"
</span><span class="lines">@@ -43,8 +43,8 @@
</span><span class="cx">
</span><span class="cx"> WK_EXPORT void WKPageSetVisibilityState(WKPageRef, WKPageVisibilityState, bool);
</span><span class="cx">
</span><ins>+WK_EXPORT bool WKDictionaryIsMutable(WKDictionaryRef dictionary);
</ins><span class="cx"> WK_EXPORT bool WKDictionaryAddItem(WKMutableDictionaryRef dictionary, WKStringRef key, WKTypeRef item);
</span><del>-WK_EXPORT bool WKDictionaryIsMutable(WKDictionaryRef dictionary);
</del><span class="cx"> WK_EXPORT void WKDictionaryRemoveItem(WKMutableDictionaryRef dictionary, WKStringRef key);
</span><span class="cx">
</span><span class="cx"> WK_EXPORT void WKPreferencesSetRegionBasedColumnsEnabled(WKPreferencesRef, bool flag);
</span><span class="lines">@@ -73,9 +73,9 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool WKDictionaryIsMutable(WKDictionaryRef dictionaryRef)
</del><ins>+bool WKDictionaryIsMutable(WKDictionaryRef)
</ins><span class="cx"> {
</span><del>- return toImpl(dictionaryRef)->isMutable();
</del><ins>+ return true;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool WKDictionaryAddItem(WKMutableDictionaryRef dictionaryRef, WKStringRef keyRef, WKTypeRef itemRef)
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedAPIcWKDictionarycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/API/c/WKDictionary.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/c/WKDictionary.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/API/c/WKDictionary.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,23 +27,23 @@
</span><span class="cx"> #include "WKDictionary.h"
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><del>-#include "ImmutableDictionary.h"
</del><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "WKAPICast.h"
</span><span class="cx">
</span><span class="cx"> using namespace WebKit;
</span><span class="cx">
</span><span class="cx"> WKTypeID WKDictionaryGetTypeID()
</span><span class="cx"> {
</span><del>- return toAPI(ImmutableDictionary::APIType);
</del><ins>+ return toAPI(API::Dictionary::APIType);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WK_EXPORT WKDictionaryRef WKDictionaryCreate(const WKStringRef* keys, const WKTypeRef* values, size_t numberOfValues)
</span><span class="cx"> {
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> for (size_t i = 0; i < numberOfValues; ++i)
</span><span class="cx"> map.add(toImpl(keys[i])->string(), toImpl(values[i]));
</span><span class="cx">
</span><del>- return toAPI(ImmutableDictionary::create(WTF::move(map)).release().leakRef());
</del><ins>+ return toAPI(API::Dictionary::create(WTF::move(map)).release().leakRef());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> WKTypeRef WKDictionaryGetItemForKey(WKDictionaryRef dictionaryRef, WKStringRef key)
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedAPIcWKMutableDictionarycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/API/c/WKMutableDictionary.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/c/WKMutableDictionary.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/API/c/WKMutableDictionary.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -26,15 +26,15 @@
</span><span class="cx"> #include "config.h"
</span><span class="cx"> #include "WKMutableDictionary.h"
</span><span class="cx">
</span><del>-#include "MutableDictionary.h"
</del><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "WKAPICast.h"
</span><span class="cx">
</span><span class="cx"> using namespace WebKit;
</span><span class="cx">
</span><span class="cx"> WKMutableDictionaryRef WKMutableDictionaryCreate()
</span><span class="cx"> {
</span><del>- RefPtr<MutableDictionary> dictionary = MutableDictionary::create();
- return toAPI(dictionary.release().leakRef());
</del><ins>+ RefPtr<API::Dictionary> dictionary = API::Dictionary::create();
+ return const_cast<WKMutableDictionaryRef>(toAPI(dictionary.release().leakRef()));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool WKDictionarySetItem(WKMutableDictionaryRef dictionaryRef, WKStringRef keyRef, WKTypeRef itemRef)
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedAPIcWKSharedAPICasth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/API/c/WKSharedAPICast.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/API/c/WKSharedAPICast.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/API/c/WKSharedAPICast.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -61,6 +61,7 @@
</span><span class="cx">
</span><span class="cx"> namespace API {
</span><span class="cx"> class Array;
</span><ins>+class Dictionary;
</ins><span class="cx"> class Data;
</span><span class="cx"> class Point;
</span><span class="cx"> class Rect;
</span><span class="lines">@@ -74,8 +75,6 @@
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx">
</span><del>-class ImmutableDictionary;
-class MutableDictionary;
</del><span class="cx"> class ObjCObjectGraph;
</span><span class="cx"> class WebCertificateInfo;
</span><span class="cx"> class WebConnection;
</span><span class="lines">@@ -96,12 +95,11 @@
</span><span class="cx"> WK_ADD_API_MAPPING(WKConnectionRef, WebConnection)
</span><span class="cx"> WK_ADD_API_MAPPING(WKContextMenuItemRef, WebContextMenuItem)
</span><span class="cx"> WK_ADD_API_MAPPING(WKDataRef, API::Data)
</span><del>-WK_ADD_API_MAPPING(WKDictionaryRef, ImmutableDictionary)
</del><ins>+WK_ADD_API_MAPPING(WKDictionaryRef, API::Dictionary)
</ins><span class="cx"> WK_ADD_API_MAPPING(WKDoubleRef, API::Double)
</span><span class="cx"> WK_ADD_API_MAPPING(WKErrorRef, API::Error)
</span><span class="cx"> WK_ADD_API_MAPPING(WKGraphicsContextRef, WebGraphicsContext)
</span><span class="cx"> WK_ADD_API_MAPPING(WKImageRef, WebImage)
</span><del>-WK_ADD_API_MAPPING(WKMutableDictionaryRef, MutableDictionary)
</del><span class="cx"> WK_ADD_API_MAPPING(WKPointRef, API::Point)
</span><span class="cx"> WK_ADD_API_MAPPING(WKRectRef, API::Rect)
</span><span class="cx"> WK_ADD_API_MAPPING(WKSecurityOriginRef, API::SecurityOrigin)
</span><span class="lines">@@ -117,6 +115,7 @@
</span><span class="cx"> WK_ADD_API_MAPPING(WKSessionRef, API::Session)
</span><span class="cx">
</span><span class="cx"> template<> struct APITypeInfo<WKMutableArrayRef> { typedef API::Array* ImplType; };
</span><ins>+template<> struct APITypeInfo<WKMutableDictionaryRef> { typedef API::Dictionary* ImplType; };
</ins><span class="cx">
</span><span class="cx"> #if PLATFORM(COCOA)
</span><span class="cx"> WK_ADD_API_MAPPING(WKWebArchiveRef, API::WebArchive)
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedCocoaWKNSDictionaryh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,11 +27,11 @@
</span><span class="cx">
</span><span class="cx"> #if WK_API_ENABLED
</span><span class="cx">
</span><del>-#import "ImmutableDictionary.h"
</del><ins>+#import "APIDictionary.h"
</ins><span class="cx"> #import "WKObject.h"
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><del>-inline NSDictionary *wrapper(ImmutableDictionary& dictionary) { ASSERT([dictionary.wrapper() isKindOfClass:[NSDictionary class]]); return (NSDictionary *)dictionary.wrapper(); }
</del><ins>+inline NSDictionary *wrapper(API::Dictionary& dictionary) { ASSERT([dictionary.wrapper() isKindOfClass:[NSDictionary class]]); return (NSDictionary *)dictionary.wrapper(); }
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> @interface WKNSDictionary : NSDictionary <WKObject>
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedCocoaWKNSDictionarymm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.mm (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.mm        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/Cocoa/WKNSDictionary.mm        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -33,12 +33,12 @@
</span><span class="cx"> using namespace WebKit;
</span><span class="cx">
</span><span class="cx"> @implementation WKNSDictionary {
</span><del>- API::ObjectStorage<ImmutableDictionary> _dictionary;
</del><ins>+ API::ObjectStorage<API::Dictionary> _dictionary;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (void)dealloc
</span><span class="cx"> {
</span><del>- _dictionary->~ImmutableDictionary();
</del><ins>+ _dictionary->~Dictionary();
</ins><span class="cx">
</span><span class="cx"> [super dealloc];
</span><span class="cx"> }
</span><span class="lines">@@ -78,11 +78,7 @@
</span><span class="cx">
</span><span class="cx"> - (id)copyWithZone:(NSZone *)zone
</span><span class="cx"> {
</span><del>- if (!_dictionary->isMutable())
- return [self retain];
-
- auto map = _dictionary->map();
- return ImmutableDictionary::create(WTF::move(map)).release().leakRef()->wrapper();
</del><ins>+ return [self retain];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #pragma mark WKObject protocol implementation
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedImmutableDictionarycpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit2/Shared/ImmutableDictionary.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/ImmutableDictionary.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/ImmutableDictionary.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -1,67 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "ImmutableDictionary.h"
-
-#include "APIArray.h"
-#include "APIString.h"
-
-namespace WebKit {
-
-RefPtr<ImmutableDictionary> ImmutableDictionary::create()
-{
- return create({ });
-}
-
-RefPtr<ImmutableDictionary> ImmutableDictionary::create(MapType map)
-{
- return adoptRef(new ImmutableDictionary(WTF::move(map)));
-}
-
-ImmutableDictionary::ImmutableDictionary(MapType map)
- : m_map(WTF::move(map))
-{
-}
-
-ImmutableDictionary::~ImmutableDictionary()
-{
-}
-
-PassRefPtr<API::Array> ImmutableDictionary::keys() const
-{
- if (m_map.isEmpty())
- return API::Array::create();
-
- Vector<RefPtr<API::Object>> keys;
- keys.reserveInitialCapacity(m_map.size());
-
- for (const auto& key : m_map.keys())
- keys.uncheckedAppend(API::String::create(key));
-
- return API::Array::create(WTF::move(keys));
-}
-
-} // namespace WebKit
</del></span></pre></div>
<a id="trunkSourceWebKit2SharedImmutableDictionaryh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit2/Shared/ImmutableDictionary.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/ImmutableDictionary.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/ImmutableDictionary.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -1,93 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ImmutableDictionary_h
-#define ImmutableDictionary_h
-
-#include "APIObject.h"
-#include <wtf/HashMap.h>
-#include <wtf/PassRefPtr.h>
-#include <wtf/text/StringHash.h>
-#include <wtf/text/WTFString.h>
-
-namespace API {
-class Array;
-}
-
-namespace WebKit {
-
-// ImmutableDictionary - An immutable dictionary type suitable for vending to an API.
-
-class ImmutableDictionary : public API::ObjectImpl<API::Object::Type::Dictionary> {
-public:
- typedef HashMap<String, RefPtr<API::Object>> MapType;
-
- static RefPtr<ImmutableDictionary> create();
- static RefPtr<ImmutableDictionary> create(MapType);
-
- virtual ~ImmutableDictionary();
-
- virtual bool isMutable() { return false; }
-
- template<typename T>
- T* get(const String& key) const
- {
- RefPtr<API::Object> item = m_map.get(key);
- if (!item)
- return 0;
-
- if (item->type() != T::APIType)
- return 0;
-
- return static_cast<T*>(item.get());
- }
-
- API::Object* get(const String& key) const
- {
- return m_map.get(key);
- }
-
- API::Object* get(const String& key, bool& exists) const
- {
- auto it = m_map.find(key);
- exists = it != m_map.end();
- return it->value.get();
- }
-
- PassRefPtr<API::Array> keys() const;
-
- size_t size() const { return m_map.size(); }
-
- const MapType& map() const { return m_map; }
-
-protected:
- explicit ImmutableDictionary(MapType);
-
- MapType m_map;
-};
-
-} // namespace WebKit
-
-#endif // ImmutableDictionary_h
</del></span></pre></div>
<a id="trunkSourceWebKit2SharedMutableDictionarycpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit2/Shared/MutableDictionary.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/MutableDictionary.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/MutableDictionary.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -1,57 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "MutableDictionary.h"
-
-namespace WebKit {
-
-MutableDictionary::MutableDictionary()
- : ImmutableDictionary({ })
-{
-}
-
-MutableDictionary::~MutableDictionary()
-{
-}
-
-bool MutableDictionary::add(const String& key, PassRefPtr<API::Object> item)
-{
- MapType::AddResult result = m_map.add(key, item);
- return result.isNewEntry;
-}
-
-bool MutableDictionary::set(const String& key, PassRefPtr<API::Object> item)
-{
- MapType::AddResult result = m_map.set(key, item);
- return result.isNewEntry;
-}
-
-void MutableDictionary::remove(const String& key)
-{
- m_map.remove(key);
-}
-
-} // namespace WebKit
</del></span></pre></div>
<a id="trunkSourceWebKit2SharedMutableDictionaryh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit2/Shared/MutableDictionary.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/MutableDictionary.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/MutableDictionary.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -1,56 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef MutableDictionary_h
-#define MutableDictionary_h
-
-#include "ImmutableDictionary.h"
-
-namespace WebKit {
-
-// MutableDictionary - A mutable dictionary type suitable for vending to an API.
-
-class MutableDictionary : public ImmutableDictionary {
-public:
- static PassRefPtr<MutableDictionary> create()
- {
- return adoptRef(new MutableDictionary);
- }
-
- ~MutableDictionary();
-
- bool add(const String& key, PassRefPtr<API::Object>);
- bool set(const String& key, PassRefPtr<API::Object>);
- void remove(const String& key);
-
- virtual bool isMutable() { return true; }
-
-private:
- MutableDictionary();
-};
-
-} // namespace WebKit
-
-#endif // MutableDictionary_h
</del></span></pre></div>
<a id="trunkSourceWebKit2SharedPluginsNetscapePluginInformationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -108,7 +108,7 @@
</span><span class="cx"> return ASCIILiteral("PlugInInformationReplacementObscured");
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void getPluginModuleInformation(const PluginModuleInfo& plugin, ImmutableDictionary::MapType& map)
</del><ins>+void getPluginModuleInformation(const PluginModuleInfo& plugin, API::Dictionary::MapType& map)
</ins><span class="cx"> {
</span><span class="cx"> #if ENABLE(NETSCAPE_PLUGIN_API)
</span><span class="cx"> map.set(pluginInformationPathKey(), API::String::create(plugin.path));
</span><span class="lines">@@ -122,17 +122,17 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<ImmutableDictionary> createPluginInformationDictionary(const PluginModuleInfo& plugin)
</del><ins>+PassRefPtr<API::Dictionary> createPluginInformationDictionary(const PluginModuleInfo& plugin)
</ins><span class="cx"> {
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> getPluginModuleInformation(plugin, map);
</span><span class="cx">
</span><del>- return ImmutableDictionary::create(WTF::move(map));
</del><ins>+ return API::Dictionary::create(WTF::move(map));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<ImmutableDictionary> createPluginInformationDictionary(const PluginModuleInfo& plugin, const String& frameURLString, const String& mimeType, const String& pageURLString, const String& pluginspageAttributeURLString, const String& pluginURLString, bool replacementObscured)
</del><ins>+PassRefPtr<API::Dictionary> createPluginInformationDictionary(const PluginModuleInfo& plugin, const String& frameURLString, const String& mimeType, const String& pageURLString, const String& pluginspageAttributeURLString, const String& pluginURLString, bool replacementObscured)
</ins><span class="cx"> {
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> getPluginModuleInformation(plugin, map);
</span><span class="cx">
</span><span class="cx"> if (!frameURLString.isEmpty())
</span><span class="lines">@@ -147,12 +147,12 @@
</span><span class="cx"> map.set(pluginInformationPluginURLKey(), API::URL::create(pluginURLString));
</span><span class="cx"> map.set(plugInInformationReplacementObscuredKey(), API::Boolean::create(replacementObscured));
</span><span class="cx">
</span><del>- return ImmutableDictionary::create(WTF::move(map));
</del><ins>+ return API::Dictionary::create(WTF::move(map));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<ImmutableDictionary> createPluginInformationDictionary(const String& mimeType, const String& frameURLString, const String& pageURLString)
</del><ins>+PassRefPtr<API::Dictionary> createPluginInformationDictionary(const String& mimeType, const String& frameURLString, const String& pageURLString)
</ins><span class="cx"> {
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx">
</span><span class="cx"> if (!frameURLString.isEmpty())
</span><span class="cx"> map.set(pluginInformationFrameURLKey(), API::URL::create(frameURLString));
</span><span class="lines">@@ -161,11 +161,11 @@
</span><span class="cx"> if (!pageURLString.isEmpty())
</span><span class="cx"> map.set(pluginInformationPageURLKey(), API::URL::create(pageURLString));
</span><span class="cx">
</span><del>- return ImmutableDictionary::create(WTF::move(map));
</del><ins>+ return API::Dictionary::create(WTF::move(map));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #if !PLATFORM(COCOA)
</span><del>-void getPlatformPluginModuleInformation(const PluginModuleInfo&, ImmutableDictionary::MapType&)
</del><ins>+void getPlatformPluginModuleInformation(const PluginModuleInfo&, API::Dictionary::MapType&)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedPluginsNetscapePluginInformationh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/Plugins/Netscape/PluginInformation.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef PluginInformation_h
</span><span class="cx"> #define PluginInformation_h
</span><span class="cx">
</span><del>-#include "ImmutableDictionary.h"
</del><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include <wtf/Forward.h>
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="lines">@@ -51,12 +51,12 @@
</span><span class="cx"> String pluginInformationPluginURLKey();
</span><span class="cx"> String plugInInformationReplacementObscuredKey();
</span><span class="cx">
</span><del>-PassRefPtr<ImmutableDictionary> createPluginInformationDictionary(const PluginModuleInfo&);
-PassRefPtr<ImmutableDictionary> createPluginInformationDictionary(const PluginModuleInfo&, const String& frameURLString, const String& mimeType, const String& pageURLString, const String& pluginspageAttributeURLString, const String& pluginURLString, bool replacementObscured = false);
-PassRefPtr<ImmutableDictionary> createPluginInformationDictionary(const String& mimeType, const String& frameURLString, const String& pageURLString);
</del><ins>+PassRefPtr<API::Dictionary> createPluginInformationDictionary(const PluginModuleInfo&);
+PassRefPtr<API::Dictionary> createPluginInformationDictionary(const PluginModuleInfo&, const String& frameURLString, const String& mimeType, const String& pageURLString, const String& pluginspageAttributeURLString, const String& pluginURLString, bool replacementObscured = false);
+PassRefPtr<API::Dictionary> createPluginInformationDictionary(const String& mimeType, const String& frameURLString, const String& pageURLString);
</ins><span class="cx">
</span><del>-void getPluginModuleInformation(const PluginModuleInfo&, ImmutableDictionary::MapType&);
-void getPlatformPluginModuleInformation(const PluginModuleInfo&, ImmutableDictionary::MapType&);
</del><ins>+void getPluginModuleInformation(const PluginModuleInfo&, API::Dictionary::MapType&);
+void getPlatformPluginModuleInformation(const PluginModuleInfo&, API::Dictionary::MapType&);
</ins><span class="cx">
</span><span class="cx"> } // namespace WebKit
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedPluginsNetscapemacPluginInformationMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/Plugins/Netscape/mac/PluginInformationMac.mm (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/Plugins/Netscape/mac/PluginInformationMac.mm        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/Plugins/Netscape/mac/PluginInformationMac.mm        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx">
</span><del>-void getPlatformPluginModuleInformation(const PluginModuleInfo& plugin, ImmutableDictionary::MapType& map)
</del><ins>+void getPlatformPluginModuleInformation(const PluginModuleInfo& plugin, API::Dictionary::MapType& map)
</ins><span class="cx"> {
</span><span class="cx"> map.set(pluginInformationBundleIdentifierKey(), API::String::create(plugin.bundleIdentifier));
</span><span class="cx"> map.set(pluginInformationBundleVersionKey(), API::String::create(plugin.versionString));
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedUserDatacpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/UserData.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/UserData.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/UserData.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -28,6 +28,7 @@
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><span class="cx"> #include "APIData.h"
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APIError.h"
</span><span class="cx"> #include "APIFrameHandle.h"
</span><span class="cx"> #include "APIGeometry.h"
</span><span class="lines">@@ -40,7 +41,6 @@
</span><span class="cx"> #include "APIURLResponse.h"
</span><span class="cx"> #include "ArgumentCoders.h"
</span><span class="cx"> #include "ArgumentEncoder.h"
</span><del>-#include "MutableDictionary.h"
</del><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx">
</span><span class="lines">@@ -72,7 +72,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (object.type() == API::Object::Type::Dictionary) {
</span><del>- const auto& dictionary = static_cast<const ImmutableDictionary&>(object);
</del><ins>+ const auto& dictionary = static_cast<const API::Dictionary&>(object);
</ins><span class="cx">
</span><span class="cx"> for (const auto& keyValuePair : dictionary.map()) {
</span><span class="cx"> if (!keyValuePair.value)
</span><span class="lines">@@ -104,16 +104,16 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (object.type() == API::Object::Type::Dictionary) {
</span><del>- auto& dictionary = static_cast<ImmutableDictionary&>(object);
</del><ins>+ auto& dictionary = static_cast<API::Dictionary&>(object);
</ins><span class="cx">
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> for (const auto& keyValuePair : dictionary.map()) {
</span><span class="cx"> if (!keyValuePair.value)
</span><span class="cx"> map.add(keyValuePair.key, nullptr);
</span><span class="cx"> else
</span><span class="cx"> map.add(keyValuePair.key, transformGraph(*keyValuePair.value, transformer));
</span><span class="cx"> }
</span><del>- return ImmutableDictionary::create(WTF::move(map));
</del><ins>+ return API::Dictionary::create(WTF::move(map));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> return transformer.transformObject(object);
</span><span class="lines">@@ -173,7 +173,7 @@
</span><span class="cx"> break;
</span><span class="cx">
</span><span class="cx"> case API::Object::Type::Dictionary: {
</span><del>- auto& dictionary = static_cast<const ImmutableDictionary&>(object);
</del><ins>+ auto& dictionary = static_cast<const API::Dictionary&>(object);
</ins><span class="cx"> auto& map = dictionary.map();
</span><span class="cx">
</span><span class="cx"> encoder << static_cast<uint64_t>(map.size());
</span><span class="lines">@@ -290,7 +290,7 @@
</span><span class="cx"> if (!decoder.decode(size))
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> for (size_t i = 0; i < size; ++i) {
</span><span class="cx"> String key;
</span><span class="cx"> if (!decoder.decode(key))
</span><span class="lines">@@ -304,7 +304,7 @@
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- result = ImmutableDictionary::create(WTF::move(map));
</del><ins>+ result = API::Dictionary::create(WTF::move(map));
</ins><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedUserMessageCodersh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/UserMessageCoders.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/UserMessageCoders.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/Shared/UserMessageCoders.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -28,6 +28,7 @@
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><span class="cx"> #include "APIData.h"
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APIError.h"
</span><span class="cx"> #include "APIGeometry.h"
</span><span class="cx"> #include "APINumber.h"
</span><span class="lines">@@ -40,7 +41,6 @@
</span><span class="cx"> #include "ArgumentDecoder.h"
</span><span class="cx"> #include "ArgumentEncoder.h"
</span><span class="cx"> #include "DataReference.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "ShareableBitmap.h"
</span><span class="cx"> #include "WebCertificateInfo.h"
</span><span class="cx"> #include "WebCoreArgumentCoders.h"
</span><span class="lines">@@ -52,7 +52,7 @@
</span><span class="cx">
</span><span class="cx"> // - Null -> Null
</span><span class="cx"> // - API::Array -> API::Array
</span><del>-// - Dictionary -> Dictionary
</del><ins>+// - API::Dictionary -> API::Dictionary
</ins><span class="cx"> // - SerializedScriptValue -> SerializedScriptValue
</span><span class="cx"> // - API::String -> API::String
</span><span class="cx"> // - UserContentURLPattern -> UserContentURLPattern
</span><span class="lines">@@ -90,12 +90,12 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx"> case API::Object::Type::Dictionary: {
</span><del>- ImmutableDictionary* dictionary = static_cast<ImmutableDictionary*>(m_root);
- const ImmutableDictionary::MapType& map = dictionary->map();
</del><ins>+ API::Dictionary* dictionary = static_cast<API::Dictionary*>(m_root);
+ const API::Dictionary::MapType& map = dictionary->map();
</ins><span class="cx"> encoder << static_cast<uint64_t>(map.size());
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType::const_iterator it = map.begin();
- ImmutableDictionary::MapType::const_iterator end = map.end();
</del><ins>+ API::Dictionary::MapType::const_iterator it = map.begin();
+ API::Dictionary::MapType::const_iterator end = map.end();
</ins><span class="cx"> for (; it != end; ++it) {
</span><span class="cx"> encoder << it->key;
</span><span class="cx"> encoder << Owner(coder, it->value.get());
</span><span class="lines">@@ -295,7 +295,7 @@
</span><span class="cx"> if (!decoder.decode(size))
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> for (size_t i = 0; i < size; ++i) {
</span><span class="cx"> String key;
</span><span class="cx"> if (!decoder.decode(key))
</span><span class="lines">@@ -306,12 +306,12 @@
</span><span class="cx"> if (!decoder.decode(messageCoder))
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType::AddResult result = map.set(key, element.release());
</del><ins>+ API::Dictionary::MapType::AddResult result = map.set(key, element.release());
</ins><span class="cx"> if (!result.isNewEntry)
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- coder.m_root = ImmutableDictionary::create(WTF::move(map));
</del><ins>+ coder.m_root = API::Dictionary::create(WTF::move(map));
</ins><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case API::Object::Type::String: {
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPIAPILoaderClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/APILoaderClient.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/APILoaderClient.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/API/APILoaderClient.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -39,7 +39,6 @@
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> class AuthenticationChallengeProxy;
</span><del>-class ImmutableDictionary;
</del><span class="cx"> class QuickLookDocumentData;
</span><span class="cx"> class WebBackForwardListItem;
</span><span class="cx"> class WebFrameProxy;
</span><span class="lines">@@ -50,6 +49,7 @@
</span><span class="cx">
</span><span class="cx"> namespace API {
</span><span class="cx">
</span><ins>+class Dictionary;
</ins><span class="cx"> class Object;
</span><span class="cx">
</span><span class="cx"> class LoaderClient {
</span><span class="lines">@@ -103,9 +103,9 @@
</span><span class="cx"> virtual void didUpdateHistoryTitle(WebKit::WebPageProxy&, const WTF::String&, const WTF::String&, WebKit::WebFrameProxy&) { }
</span><span class="cx">
</span><span class="cx"> #if ENABLE(NETSCAPE_PLUGIN_API)
</span><del>- virtual WebKit::PluginModuleLoadPolicy pluginLoadPolicy(WebKit::WebPageProxy*, WebKit::PluginModuleLoadPolicy currentPluginLoadPolicy, WebKit::ImmutableDictionary*, WTF::String& /* unavailabilityDescription */) { return currentPluginLoadPolicy; }
- virtual void didFailToInitializePlugin(WebKit::WebPageProxy*, WebKit::ImmutableDictionary*) { }
- virtual void didBlockInsecurePluginVersion(WebKit::WebPageProxy*, WebKit::ImmutableDictionary*) { }
</del><ins>+ virtual WebKit::PluginModuleLoadPolicy pluginLoadPolicy(WebKit::WebPageProxy*, WebKit::PluginModuleLoadPolicy currentPluginLoadPolicy, API::Dictionary*, WTF::String& /* unavailabilityDescription */) { return currentPluginLoadPolicy; }
+ virtual void didFailToInitializePlugin(WebKit::WebPageProxy*, API::Dictionary*) { }
+ virtual void didBlockInsecurePluginVersion(WebKit::WebPageProxy*, API::Dictionary*) { }
</ins><span class="cx"> #endif // ENABLE(NETSCAPE_PLUGIN_API)
</span><span class="cx">
</span><span class="cx"> #if ENABLE(WEBGL)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPIAPIUIClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/APIUIClient.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/APIUIClient.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/API/APIUIClient.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -46,7 +46,6 @@
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> class GeolocationPermissionRequestProxy;
</span><del>-class ImmutableDictionary;
</del><span class="cx"> class NativeWebKeyboardEvent;
</span><span class="cx"> class NativeWebWheelEvent;
</span><span class="cx"> class NotificationPermissionRequest;
</span><span class="lines">@@ -62,6 +61,7 @@
</span><span class="cx"> namespace API {
</span><span class="cx">
</span><span class="cx"> class Data;
</span><ins>+class Dictionary;
</ins><span class="cx"> class Object;
</span><span class="cx"> class SecurityOrigin;
</span><span class="cx">
</span><span class="lines">@@ -87,7 +87,7 @@
</span><span class="cx"> virtual void setStatusText(WebKit::WebPageProxy*, const WTF::String&) { }
</span><span class="cx"> virtual void mouseDidMoveOverElement(WebKit::WebPageProxy*, const WebKit::WebHitTestResult::Data&, WebKit::WebEvent::Modifiers, API::Object*) { }
</span><span class="cx"> #if ENABLE(NETSCAPE_PLUGIN_API)
</span><del>- virtual void unavailablePluginButtonClicked(WebKit::WebPageProxy*, WKPluginUnavailabilityReason, WebKit::ImmutableDictionary*) { }
</del><ins>+ virtual void unavailablePluginButtonClicked(WebKit::WebPageProxy*, WKPluginUnavailabilityReason, API::Dictionary*) { }
</ins><span class="cx"> #endif // ENABLE(NETSCAPE_PLUGIN_API)
</span><span class="cx">
</span><span class="cx"> virtual bool implementsDidNotHandleKeyEvent() const { return false; }
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICWKPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -29,13 +29,13 @@
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><span class="cx"> #include "APIData.h"
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APIFindClient.h"
</span><span class="cx"> #include "APILoaderClient.h"
</span><span class="cx"> #include "APIPolicyClient.h"
</span><span class="cx"> #include "APISessionState.h"
</span><span class="cx"> #include "APIUIClient.h"
</span><span class="cx"> #include "AuthenticationChallengeProxy.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "LegacySessionStateCoding.h"
</span><span class="cx"> #include "NativeWebKeyboardEvent.h"
</span><span class="cx"> #include "NativeWebWheelEvent.h"
</span><span class="lines">@@ -1023,7 +1023,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #if ENABLE(NETSCAPE_PLUGIN_API)
</span><del>- virtual void didFailToInitializePlugin(WebPageProxy* page, ImmutableDictionary* pluginInformation) override
</del><ins>+ virtual void didFailToInitializePlugin(WebPageProxy* page, API::Dictionary* pluginInformation) override
</ins><span class="cx"> {
</span><span class="cx"> if (m_client.didFailToInitializePlugin_deprecatedForUseWithV0)
</span><span class="cx"> m_client.didFailToInitializePlugin_deprecatedForUseWithV0(toAPI(page), toAPI(pluginInformation->get<API::String>(pluginInformationMIMETypeKey())), m_client.base.clientInfo);
</span><span class="lines">@@ -1035,7 +1035,7 @@
</span><span class="cx"> m_client.pluginDidFail(toAPI(page), kWKErrorCodeCannotLoadPlugIn, toAPI(pluginInformation), m_client.base.clientInfo);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- virtual void didBlockInsecurePluginVersion(WebPageProxy* page, ImmutableDictionary* pluginInformation) override
</del><ins>+ virtual void didBlockInsecurePluginVersion(WebPageProxy* page, API::Dictionary* pluginInformation) override
</ins><span class="cx"> {
</span><span class="cx"> if (m_client.pluginDidFail_deprecatedForUseWithV1)
</span><span class="cx"> m_client.pluginDidFail_deprecatedForUseWithV1(toAPI(page), kWKErrorCodeInsecurePlugInVersion, toAPI(pluginInformation->get<API::String>(pluginInformationMIMETypeKey())), toAPI(pluginInformation->get<API::String>(pluginInformationBundleIdentifierKey())), toAPI(pluginInformation->get<API::String>(pluginInformationBundleVersionKey())), m_client.base.clientInfo);
</span><span class="lines">@@ -1044,7 +1044,7 @@
</span><span class="cx"> m_client.pluginDidFail(toAPI(page), kWKErrorCodeInsecurePlugInVersion, toAPI(pluginInformation), m_client.base.clientInfo);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- virtual PluginModuleLoadPolicy pluginLoadPolicy(WebPageProxy* page, PluginModuleLoadPolicy currentPluginLoadPolicy, ImmutableDictionary* pluginInformation, String& unavailabilityDescription) override
</del><ins>+ virtual PluginModuleLoadPolicy pluginLoadPolicy(WebPageProxy* page, PluginModuleLoadPolicy currentPluginLoadPolicy, API::Dictionary* pluginInformation, String& unavailabilityDescription) override
</ins><span class="cx"> {
</span><span class="cx"> WKStringRef unavailabilityDescriptionOut = 0;
</span><span class="cx"> PluginModuleLoadPolicy loadPolicy = currentPluginLoadPolicy;
</span><span class="lines">@@ -1192,7 +1192,7 @@
</span><span class="cx"> if (m_client.base.version > 0 && !m_client.createNewPage)
</span><span class="cx"> return 0;
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> if (windowFeatures.xSet)
</span><span class="cx"> map.set("x", API::Double::create(windowFeatures.x));
</span><span class="cx"> if (windowFeatures.ySet)
</span><span class="lines">@@ -1209,7 +1209,7 @@
</span><span class="cx"> map.set("resizable", API::Boolean::create(windowFeatures.resizable));
</span><span class="cx"> map.set("fullscreen", API::Boolean::create(windowFeatures.fullscreen));
</span><span class="cx"> map.set("dialog", API::Boolean::create(windowFeatures.dialog));
</span><del>- RefPtr<ImmutableDictionary> featuresMap = ImmutableDictionary::create(WTF::move(map));
</del><ins>+ RefPtr<API::Dictionary> featuresMap = API::Dictionary::create(WTF::move(map));
</ins><span class="cx">
</span><span class="cx"> if (!m_client.base.version)
</span><span class="cx"> return adoptRef(toImpl(m_client.createNewPage_deprecatedForUseWithV0(toAPI(page), toAPI(featuresMap.get()), toAPI(navigationActionData.modifiers), toAPI(navigationActionData.mouseButton), m_client.base.clientInfo)));
</span><span class="lines">@@ -1322,7 +1322,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #if ENABLE(NETSCAPE_PLUGIN_API)
</span><del>- virtual void unavailablePluginButtonClicked(WebPageProxy* page, WKPluginUnavailabilityReason pluginUnavailabilityReason, ImmutableDictionary* pluginInformation) override
</del><ins>+ virtual void unavailablePluginButtonClicked(WebPageProxy* page, WKPluginUnavailabilityReason pluginUnavailabilityReason, API::Dictionary* pluginInformation) override
</ins><span class="cx"> {
</span><span class="cx"> if (pluginUnavailabilityReason == kWKPluginUnavailabilityReasonPluginMissing) {
</span><span class="cx"> if (m_client.missingPluginButtonClicked_deprecatedForUseWithV0)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICmacWKContextPrivateMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.mm (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.mm        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.mm        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,9 +27,9 @@
</span><span class="cx"> #import "WKContextPrivateMac.h"
</span><span class="cx">
</span><span class="cx"> #import "APIArray.h"
</span><ins>+#import "APIDictionary.h"
</ins><span class="cx"> #import "APINumber.h"
</span><span class="cx"> #import "APIString.h"
</span><del>-#import "ImmutableDictionary.h"
</del><span class="cx"> #import "PluginInfoStore.h"
</span><span class="cx"> #import "PluginInformation.h"
</span><span class="cx"> #import "StringUtilities.h"
</span><span class="lines">@@ -59,7 +59,7 @@
</span><span class="cx"> if (plugin.path.isNull())
</span><span class="cx"> return 0;
</span><span class="cx">
</span><del>- RefPtr<ImmutableDictionary> dictionary = createPluginInformationDictionary(plugin);
</del><ins>+ RefPtr<API::Dictionary> dictionary = createPluginInformationDictionary(plugin);
</ins><span class="cx"> return toAPI(dictionary.release().leakRef());
</span><span class="cx"> #else
</span><span class="cx"> return 0;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessNotificationsWebNotificationManagerProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationManagerProxy.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationManagerProxy.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationManagerProxy.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,8 +27,8 @@
</span><span class="cx"> #include "WebNotificationManagerProxy.h"
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APISecurityOrigin.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "WebNotification.h"
</span><span class="cx"> #include "WebNotificationManagerMessages.h"
</span><span class="cx"> #include "WebPageProxy.h"
</span><span class="lines">@@ -85,7 +85,7 @@
</span><span class="cx">
</span><span class="cx"> void WebNotificationManagerProxy::populateCopyOfNotificationPermissions(HashMap<String, bool>& permissions)
</span><span class="cx"> {
</span><del>- RefPtr<ImmutableDictionary> knownPermissions = m_provider.notificationPermissions();
</del><ins>+ RefPtr<API::Dictionary> knownPermissions = m_provider.notificationPermissions();
</ins><span class="cx">
</span><span class="cx"> if (!knownPermissions)
</span><span class="cx"> return;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessNotificationsWebNotificationProvidercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,9 +27,9 @@
</span><span class="cx"> #include "WebNotificationProvider.h"
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APINumber.h"
</span><span class="cx"> #include "APISecurityOrigin.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "WKAPICast.h"
</span><span class="cx"> #include "WebNotification.h"
</span><span class="cx"> #include "WebNotificationManagerProxy.h"
</span><span class="lines">@@ -91,10 +91,10 @@
</span><span class="cx"> m_client.removeNotificationManager(toAPI(manager), m_client.base.clientInfo);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<ImmutableDictionary> WebNotificationProvider::notificationPermissions()
</del><ins>+PassRefPtr<API::Dictionary> WebNotificationProvider::notificationPermissions()
</ins><span class="cx"> {
</span><span class="cx"> if (!m_client.notificationPermissions)
</span><del>- return ImmutableDictionary::create();
</del><ins>+ return API::Dictionary::create();
</ins><span class="cx">
</span><span class="cx"> return adoptRef(toImpl(m_client.notificationPermissions(m_client.base.clientInfo)));
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessNotificationsWebNotificationProviderh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/Notifications/WebNotificationProvider.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -32,6 +32,9 @@
</span><span class="cx"> #include <wtf/Vector.h>
</span><span class="cx">
</span><span class="cx"> namespace API {
</span><ins>+
+class Dictionary;
+
</ins><span class="cx"> template<> struct ClientTraits<WKNotificationProviderBase> {
</span><span class="cx"> typedef std::tuple<WKNotificationProviderV0> Versions;
</span><span class="cx"> };
</span><span class="lines">@@ -39,7 +42,6 @@
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx">
</span><del>-class ImmutableDictionary;
</del><span class="cx"> class WebNotification;
</span><span class="cx"> class WebNotificationManagerProxy;
</span><span class="cx"> class WebPageProxy;
</span><span class="lines">@@ -54,7 +56,7 @@
</span><span class="cx"> void addNotificationManager(WebNotificationManagerProxy*);
</span><span class="cx"> void removeNotificationManager(WebNotificationManagerProxy*);
</span><span class="cx">
</span><del>- PassRefPtr<ImmutableDictionary> notificationPermissions();
</del><ins>+ PassRefPtr<API::Dictionary> notificationPermissions();
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> } // namespace WebKit
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessPluginsPlugInAutoStartProvidercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> #include "PlugInAutoStartProvider.h"
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><del>-#include "ImmutableDictionary.h"
</del><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "WebContextClient.h"
</span><span class="cx"> #include "WebProcessMessages.h"
</span><span class="cx"> #include "WebProcessPool.h"
</span><span class="lines">@@ -87,32 +87,32 @@
</span><span class="cx"> return sessionMap;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<ImmutableDictionary> PlugInAutoStartProvider::autoStartOriginsTableCopy() const
</del><ins>+PassRefPtr<API::Dictionary> PlugInAutoStartProvider::autoStartOriginsTableCopy() const
</ins><span class="cx"> {
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx">
</span><span class="cx"> double now = currentTime();
</span><span class="cx"> for (const auto& stringOriginHash : m_autoStartTable.get(SessionID::defaultSessionID())) {
</span><del>- ImmutableDictionary::MapType hashMap;
</del><ins>+ API::Dictionary::MapType hashMap;
</ins><span class="cx"> for (const auto& originHash : stringOriginHash.value) {
</span><span class="cx"> if (now <= originHash.value)
</span><span class="cx"> hashMap.set(String::number(originHash.key), API::Double::create(originHash.value));
</span><span class="cx"> }
</span><span class="cx"> if (hashMap.size())
</span><del>- map.set(stringOriginHash.key, ImmutableDictionary::create(WTF::move(hashMap)));
</del><ins>+ map.set(stringOriginHash.key, API::Dictionary::create(WTF::move(hashMap)));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- return ImmutableDictionary::create(WTF::move(map));
</del><ins>+ return API::Dictionary::create(WTF::move(map));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void PlugInAutoStartProvider::setAutoStartOriginsTable(ImmutableDictionary& table)
</del><ins>+void PlugInAutoStartProvider::setAutoStartOriginsTable(API::Dictionary& table)
</ins><span class="cx"> {
</span><span class="cx"> setAutoStartOriginsTableWithItemsPassingTest(table, [](double) {
</span><span class="cx"> return true;
</span><span class="cx"> });
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PlugInAutoStartProvider::setAutoStartOriginsFilteringOutEntriesAddedAfterTime(ImmutableDictionary& table, double time)
</del><ins>+void PlugInAutoStartProvider::setAutoStartOriginsFilteringOutEntriesAddedAfterTime(API::Dictionary& table, double time)
</ins><span class="cx"> {
</span><span class="cx"> double adjustedTimestamp = time + plugInAutoStartExpirationTimeThreshold;
</span><span class="cx"> setAutoStartOriginsTableWithItemsPassingTest(table, [adjustedTimestamp](double expirationTimestamp) {
</span><span class="lines">@@ -120,7 +120,7 @@
</span><span class="cx"> });
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PlugInAutoStartProvider::setAutoStartOriginsTableWithItemsPassingTest(ImmutableDictionary& table, std::function<bool(double expirationTimestamp)> isExpirationTimeAcceptable)
</del><ins>+void PlugInAutoStartProvider::setAutoStartOriginsTableWithItemsPassingTest(API::Dictionary& table, std::function<bool(double expirationTimestamp)> isExpirationTimeAcceptable)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(isExpirationTimeAcceptable);
</span><span class="cx">
</span><span class="lines">@@ -132,7 +132,7 @@
</span><span class="cx">
</span><span class="cx"> for (auto& strDict : table.map()) {
</span><span class="cx"> PlugInAutoStartOriginMap hashes;
</span><del>- for (auto& hashTime : static_cast<ImmutableDictionary*>(strDict.value.get())->map()) {
</del><ins>+ for (auto& hashTime : static_cast<API::Dictionary*>(strDict.value.get())->map()) {
</ins><span class="cx"> bool ok;
</span><span class="cx"> unsigned hash = hashTime.key.toUInt(&ok);
</span><span class="cx"> if (!ok)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessPluginsPlugInAutoStartProviderh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -37,11 +37,11 @@
</span><span class="cx">
</span><span class="cx"> namespace API {
</span><span class="cx"> class Array;
</span><ins>+class Dictionary;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx">
</span><del>-class ImmutableDictionary;
</del><span class="cx"> class WebProcessPool;
</span><span class="cx">
</span><span class="cx"> typedef HashMap<unsigned, double> PlugInAutoStartOriginMap;
</span><span class="lines">@@ -56,9 +56,9 @@
</span><span class="cx"> void addAutoStartOriginHash(const String& pageOrigin, unsigned plugInOriginHash, WebCore::SessionID);
</span><span class="cx"> void didReceiveUserInteraction(unsigned plugInOriginHash, WebCore::SessionID);
</span><span class="cx">
</span><del>- PassRefPtr<ImmutableDictionary> autoStartOriginsTableCopy() const;
- void setAutoStartOriginsTable(ImmutableDictionary&);
- void setAutoStartOriginsFilteringOutEntriesAddedAfterTime(ImmutableDictionary&, double time);
</del><ins>+ PassRefPtr<API::Dictionary> autoStartOriginsTableCopy() const;
+ void setAutoStartOriginsTable(API::Dictionary&);
+ void setAutoStartOriginsFilteringOutEntriesAddedAfterTime(API::Dictionary&, double time);
</ins><span class="cx"> void setAutoStartOriginsArray(API::Array&);
</span><span class="cx">
</span><span class="cx"> SessionPlugInAutoStartOriginMap autoStartOriginHashesCopy() const;
</span><span class="lines">@@ -67,7 +67,7 @@
</span><span class="cx"> private:
</span><span class="cx"> WebProcessPool* m_processPool;
</span><span class="cx">
</span><del>- void setAutoStartOriginsTableWithItemsPassingTest(ImmutableDictionary&, std::function<bool(double expirationTimestamp)>);
</del><ins>+ void setAutoStartOriginsTableWithItemsPassingTest(API::Dictionary&, std::function<bool(double expirationTimestamp)>);
</ins><span class="cx">
</span><span class="cx"> typedef HashMap<String, PlugInAutoStartOriginMap, CaseFoldingHash> AutoStartTable;
</span><span class="cx"> typedef HashMap<WebCore::SessionID, AutoStartTable> SessionAutoStartTable;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessStatisticsRequestcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/StatisticsRequest.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/StatisticsRequest.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/StatisticsRequest.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> #include "StatisticsRequest.h"
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><del>-#include "MutableDictionary.h"
</del><ins>+#include "APIDictionary.h"
</ins><span class="cx">
</span><span class="cx"> namespace WebKit {
</span><span class="cx">
</span><span class="lines">@@ -51,16 +51,16 @@
</span><span class="cx"> return requestID;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void addToDictionaryFromHashMap(MutableDictionary* dictionary, const HashMap<String, uint64_t>& map)
</del><ins>+static void addToDictionaryFromHashMap(API::Dictionary* dictionary, const HashMap<String, uint64_t>& map)
</ins><span class="cx"> {
</span><span class="cx"> HashMap<String, uint64_t>::const_iterator end = map.end();
</span><span class="cx"> for (HashMap<String, uint64_t>::const_iterator it = map.begin(); it != end; ++it)
</span><span class="cx"> dictionary->set(it->key, RefPtr<API::UInt64>(API::UInt64::create(it->value)).get());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static PassRefPtr<MutableDictionary> createDictionaryFromHashMap(const HashMap<String, uint64_t>& map)
</del><ins>+static PassRefPtr<API::Dictionary> createDictionaryFromHashMap(const HashMap<String, uint64_t>& map)
</ins><span class="cx"> {
</span><del>- RefPtr<MutableDictionary> result = MutableDictionary::create();
</del><ins>+ RefPtr<API::Dictionary> result = API::Dictionary::create();
</ins><span class="cx"> addToDictionaryFromHashMap(result.get(), map);
</span><span class="cx"> return result;
</span><span class="cx"> }
</span><span class="lines">@@ -71,7 +71,7 @@
</span><span class="cx"> m_outstandingRequests.remove(requestID);
</span><span class="cx">
</span><span class="cx"> if (!m_responseDictionary)
</span><del>- m_responseDictionary = MutableDictionary::create();
</del><ins>+ m_responseDictionary = API::Dictionary::create();
</ins><span class="cx">
</span><span class="cx"> // FIXME (Multi-WebProcess) <rdar://problem/13200059>: This code overwrites any previous response data received.
</span><span class="cx"> // When getting responses from multiple WebProcesses we need to combine items instead of clobbering them.
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessStatisticsRequesth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/StatisticsRequest.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/StatisticsRequest.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/StatisticsRequest.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -35,7 +35,7 @@
</span><span class="cx">
</span><span class="cx"> struct StatisticsData;
</span><span class="cx">
</span><del>-typedef GenericCallback<ImmutableDictionary*> DictionaryCallback;
</del><ins>+typedef GenericCallback<API::Dictionary*> DictionaryCallback;
</ins><span class="cx">
</span><span class="cx"> enum StatisticsRequestType {
</span><span class="cx"> StatisticsRequestTypeWebContent = 0x00000001,
</span><span class="lines">@@ -61,7 +61,7 @@
</span><span class="cx"> HashSet<uint64_t> m_outstandingRequests;
</span><span class="cx"> RefPtr<DictionaryCallback> m_callback;
</span><span class="cx">
</span><del>- RefPtr<MutableDictionary> m_responseDictionary;
</del><ins>+ RefPtr<API::Dictionary> m_responseDictionary;
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> } // namespace WebKit
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebDatabaseManagerProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebDatabaseManagerProxy.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebDatabaseManagerProxy.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/WebDatabaseManagerProxy.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -29,8 +29,8 @@
</span><span class="cx"> #if ENABLE(SQL_DATABASE)
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APISecurityOrigin.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "WebDatabaseManagerMessages.h"
</span><span class="cx"> #include "WebDatabaseManagerProxyMessages.h"
</span><span class="cx"> #include "WebProcessPool.h"
</span><span class="lines">@@ -190,7 +190,7 @@
</span><span class="cx"> if (databaseDetails.modificationTime())
</span><span class="cx"> detailsMap.set(databaseDetailsModificationTimeKey(), API::Double::create(databaseDetails.modificationTime()));
</span><span class="cx">
</span><del>- databases.uncheckedAppend(ImmutableDictionary::create(WTF::move(detailsMap)));
</del><ins>+ databases.uncheckedAppend(API::Dictionary::create(WTF::move(detailsMap)));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> HashMap<String, RefPtr<API::Object>> originAndDatabasesMap;
</span><span class="lines">@@ -199,7 +199,7 @@
</span><span class="cx"> originAndDatabasesMap.set(originUsageKey(), API::UInt64::create(originAndDatabases.originUsage));
</span><span class="cx"> originAndDatabasesMap.set(databaseDetailsKey(), API::Array::create(WTF::move(databases)));
</span><span class="cx">
</span><del>- result.uncheckedAppend(ImmutableDictionary::create(WTF::move(originAndDatabasesMap)));
</del><ins>+ result.uncheckedAppend(API::Dictionary::create(WTF::move(originAndDatabasesMap)));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> callback->performCallbackWithReturnValue(API::Array::create(WTF::move(result)).get());
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebFormClientcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebFormClient.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebFormClient.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/WebFormClient.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -26,8 +26,8 @@
</span><span class="cx"> #include "config.h"
</span><span class="cx"> #include "WebFormClient.h"
</span><span class="cx">
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APIString.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "WKAPICast.h"
</span><span class="cx"> #include "WebFormSubmissionListenerProxy.h"
</span><span class="cx"> #include "WebPageProxy.h"
</span><span class="lines">@@ -44,10 +44,10 @@
</span><span class="cx"> if (!m_client.willSubmitForm)
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> for (size_t i = 0; i < textFieldValues.size(); ++i)
</span><span class="cx"> map.set(textFieldValues[i].first, API::String::create(textFieldValues[i].second));
</span><del>- RefPtr<ImmutableDictionary> textFieldsMap = ImmutableDictionary::create(WTF::move(map));
</del><ins>+ RefPtr<API::Dictionary> textFieldsMap = API::Dictionary::create(WTF::move(map));
</ins><span class="cx">
</span><span class="cx"> m_client.willSubmitForm(toAPI(page), toAPI(frame), toAPI(sourceFrame), toAPI(textFieldsMap.get()), toAPI(userData), toAPI(listener), m_client.base.clientInfo);
</span><span class="cx"> return true;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebKeyValueStorageManagercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebKeyValueStorageManager.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebKeyValueStorageManager.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/WebKeyValueStorageManager.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -116,7 +116,7 @@
</span><span class="cx"> if (originDetails.modificationTime)
</span><span class="cx"> detailsMap.set(WebKeyValueStorageManager::modificationTimeKey(), API::Double::create(originDetails.modificationTime.valueOr(0)));
</span><span class="cx">
</span><del>- result.uncheckedAppend(ImmutableDictionary::create(WTF::move(detailsMap)));
</del><ins>+ result.uncheckedAppend(API::Dictionary::create(WTF::move(detailsMap)));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> callbackFunction(API::Array::create(WTF::move(result)).get(), CallbackBase::Error::None);
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -1673,7 +1673,7 @@
</span><span class="cx"> pluginLoadPolicy = PluginInfoStore::defaultLoadPolicyForPlugin(plugin);
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(COCOA)
</span><del>- RefPtr<ImmutableDictionary> pluginInformation = createPluginInformationDictionary(plugin, frameURLString, String(), pageURLString, String(), String());
</del><ins>+ RefPtr<API::Dictionary> pluginInformation = createPluginInformationDictionary(plugin, frameURLString, String(), pageURLString, String(), String());
</ins><span class="cx"> pluginLoadPolicy = m_loaderClient->pluginLoadPolicy(this, static_cast<PluginModuleLoadPolicy>(pluginLoadPolicy), pluginInformation.get(), unavailabilityDescription);
</span><span class="cx"> #else
</span><span class="cx"> UNUSED_PARAM(frameURLString);
</span><span class="lines">@@ -3294,7 +3294,7 @@
</span><span class="cx"> MESSAGE_CHECK_URL(frameURLString);
</span><span class="cx"> MESSAGE_CHECK_URL(pageURLString);
</span><span class="cx">
</span><del>- RefPtr<ImmutableDictionary> pluginInformation;
</del><ins>+ RefPtr<API::Dictionary> pluginInformation;
</ins><span class="cx"> String newMimeType = mimeType;
</span><span class="cx"> PluginModuleInfo plugin = m_process->processPool().pluginInfoStore().findPlugin(newMimeType, URL(URL(), pluginURLString));
</span><span class="cx"> pluginInformation = createPluginInformationDictionary(plugin, frameURLString, mimeType, pageURLString, pluginspageAttributeURLString, pluginURLString);
</span><span class="lines">@@ -4962,7 +4962,7 @@
</span><span class="cx">
</span><span class="cx"> void WebPageProxy::didBlockInsecurePluginVersion(const String& mimeType, const String& pluginURLString, const String& frameURLString, const String& pageURLString, bool replacementObscured)
</span><span class="cx"> {
</span><del>- RefPtr<ImmutableDictionary> pluginInformation;
</del><ins>+ RefPtr<API::Dictionary> pluginInformation;
</ins><span class="cx">
</span><span class="cx"> #if PLATFORM(COCOA) && ENABLE(NETSCAPE_PLUGIN_API)
</span><span class="cx"> String newMimeType = mimeType;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebProcessPoolcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -33,7 +33,6 @@
</span><span class="cx"> #include "DownloadProxy.h"
</span><span class="cx"> #include "DownloadProxyMessages.h"
</span><span class="cx"> #include "Logging.h"
</span><del>-#include "MutableDictionary.h"
</del><span class="cx"> #include "SandboxExtension.h"
</span><span class="cx"> #include "StatisticsData.h"
</span><span class="cx"> #include "TextChecker.h"
</span><span class="lines">@@ -1327,7 +1326,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebProcessPool::getStatistics(uint32_t statisticsMask, std::function<void (ImmutableDictionary*, CallbackBase::Error)> callbackFunction)
</del><ins>+void WebProcessPool::getStatistics(uint32_t statisticsMask, std::function<void (API::Dictionary*, CallbackBase::Error)> callbackFunction)
</ins><span class="cx"> {
</span><span class="cx"> if (!statisticsMask) {
</span><span class="cx"> callbackFunction(nullptr, CallbackBase::Error::Unknown);
</span><span class="lines">@@ -1418,12 +1417,12 @@
</span><span class="cx"> m_plugInAutoStartProvider.didReceiveUserInteraction(plugInOriginHash, sessionID);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<ImmutableDictionary> WebProcessPool::plugInAutoStartOriginHashes() const
</del><ins>+PassRefPtr<API::Dictionary> WebProcessPool::plugInAutoStartOriginHashes() const
</ins><span class="cx"> {
</span><span class="cx"> return m_plugInAutoStartProvider.autoStartOriginsTableCopy();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebProcessPool::setPlugInAutoStartOriginHashes(ImmutableDictionary& dictionary)
</del><ins>+void WebProcessPool::setPlugInAutoStartOriginHashes(API::Dictionary& dictionary)
</ins><span class="cx"> {
</span><span class="cx"> m_plugInAutoStartProvider.setAutoStartOriginsTable(dictionary);
</span><span class="cx"> }
</span><span class="lines">@@ -1433,7 +1432,7 @@
</span><span class="cx"> m_plugInAutoStartProvider.setAutoStartOriginsArray(array);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebProcessPool::setPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime(ImmutableDictionary& dictionary, double time)
</del><ins>+void WebProcessPool::setPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime(API::Dictionary& dictionary, double time)
</ins><span class="cx"> {
</span><span class="cx"> m_plugInAutoStartProvider.setAutoStartOriginsFilteringOutEntriesAddedAfterTime(dictionary, time);
</span><span class="cx"> }
</span><span class="lines">@@ -1462,7 +1461,7 @@
</span><span class="cx"> plugins.reserveInitialCapacity(pluginModules.size());
</span><span class="cx">
</span><span class="cx"> for (const auto& pluginModule : pluginModules) {
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> map.set(ASCIILiteral("path"), API::String::create(pluginModule.path));
</span><span class="cx"> map.set(ASCIILiteral("name"), API::String::create(pluginModule.info.name));
</span><span class="cx"> map.set(ASCIILiteral("file"), API::String::create(pluginModule.info.file));
</span><span class="lines">@@ -1479,7 +1478,7 @@
</span><span class="cx"> map.set(ASCIILiteral("version"), API::String::create(pluginModule.versionString));
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- plugins.uncheckedAppend(ImmutableDictionary::create(WTF::move(map)));
</del><ins>+ plugins.uncheckedAppend(API::Dictionary::create(WTF::move(map)));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> m_client.plugInInformationBecameAvailable(this, API::Array::create(WTF::move(plugins)).get());
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebProcessPoolh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebProcessPool.h (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebProcessPool.h        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/WebProcessPool.h        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -26,10 +26,10 @@
</span><span class="cx"> #ifndef WebProcessPool_h
</span><span class="cx"> #define WebProcessPool_h
</span><span class="cx">
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APIObject.h"
</span><span class="cx"> #include "DownloadProxyMap.h"
</span><span class="cx"> #include "GenericCallback.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "MessageReceiver.h"
</span><span class="cx"> #include "MessageReceiverMap.h"
</span><span class="cx"> #include "PlugInAutoStartProvider.h"
</span><span class="lines">@@ -84,7 +84,7 @@
</span><span class="cx"> struct WebPageConfiguration;
</span><span class="cx"> struct WebProcessCreationParameters;
</span><span class="cx">
</span><del>-typedef GenericCallback<ImmutableDictionary*> DictionaryCallback;
</del><ins>+typedef GenericCallback<API::Dictionary*> DictionaryCallback;
</ins><span class="cx">
</span><span class="cx"> #if ENABLE(NETWORK_PROCESS)
</span><span class="cx"> struct NetworkProcessCreationParameters;
</span><span class="lines">@@ -276,7 +276,7 @@
</span><span class="cx"> void setHTTPPipeliningEnabled(bool);
</span><span class="cx"> bool httpPipeliningEnabled() const;
</span><span class="cx">
</span><del>- void getStatistics(uint32_t statisticsMask, std::function<void (ImmutableDictionary*, CallbackBase::Error)>);
</del><ins>+ void getStatistics(uint32_t statisticsMask, std::function<void (API::Dictionary*, CallbackBase::Error)>);
</ins><span class="cx">
</span><span class="cx"> void garbageCollectJavaScriptObjects();
</span><span class="cx"> void setJavaScriptGarbageCollectorTimerEnabled(bool flag);
</span><span class="lines">@@ -289,10 +289,10 @@
</span><span class="cx">
</span><span class="cx"> void textCheckerStateChanged();
</span><span class="cx">
</span><del>- PassRefPtr<ImmutableDictionary> plugInAutoStartOriginHashes() const;
- void setPlugInAutoStartOriginHashes(ImmutableDictionary&);
</del><ins>+ PassRefPtr<API::Dictionary> plugInAutoStartOriginHashes() const;
+ void setPlugInAutoStartOriginHashes(API::Dictionary&);
</ins><span class="cx"> void setPlugInAutoStartOrigins(API::Array&);
</span><del>- void setPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime(ImmutableDictionary&, double time);
</del><ins>+ void setPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime(API::Dictionary&, double time);
</ins><span class="cx">
</span><span class="cx"> // Network Process Management
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebResourceCacheManagerProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebResourceCacheManagerProxy.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebResourceCacheManagerProxy.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/UIProcess/WebResourceCacheManagerProxy.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -26,8 +26,8 @@
</span><span class="cx"> #include "config.h"
</span><span class="cx"> #include "WebResourceCacheManagerProxy.h"
</span><span class="cx">
</span><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "APISecurityOrigin.h"
</span><del>-#include "ImmutableDictionary.h"
</del><span class="cx"> #include "SecurityOriginData.h"
</span><span class="cx"> #include "WebProcessPool.h"
</span><span class="cx"> #include "WebResourceCacheManagerMessages.h"
</span></span></pre></div>
<a id="trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -1046,6 +1046,8 @@
</span><span class="cx">                 7C135AA8173B0BCA00586AE2 /* WKPluginInformation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C135AA6173B0BCA00586AE2 /* WKPluginInformation.cpp */; };
</span><span class="cx">                 7C135AA9173B0BCA00586AE2 /* WKPluginInformation.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C135AA7173B0BCA00586AE2 /* WKPluginInformation.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 7C135AAC173B0CFF00586AE2 /* PluginInformationMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C135AAA173B0CFF00586AE2 /* PluginInformationMac.mm */; };
</span><ins>+                7C1BA33D1A4A0E600043E249 /* APIDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C1BA33B1A4A0E600043E249 /* APIDictionary.cpp */; };
+                7C1BA33E1A4A0E600043E249 /* APIDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C1BA33C1A4A0E600043E249 /* APIDictionary.h */; };
</ins><span class="cx">                 7C361D721927FA360036A59D /* WebScriptMessageHandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C361D6F1927FA360036A59D /* WebScriptMessageHandler.cpp */; };
</span><span class="cx">                 7C361D731927FA360036A59D /* WebScriptMessageHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C361D701927FA360036A59D /* WebScriptMessageHandler.h */; };
</span><span class="cx">                 7C361D78192803BD0036A59D /* WebUserContentControllerProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C361D76192803BD0036A59D /* WebUserContentControllerProxyMessageReceiver.cpp */; };
</span><span class="lines">@@ -1444,8 +1446,6 @@
</span><span class="cx">                 BCAF361F16CA28CD00D4E9FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };
</span><span class="cx">                 BCAF362016CA28D600D4E9FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };
</span><span class="cx">                 BCAF362216CA292B00D4E9FC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };
</span><del>-                BCB0AEE9122F53E300B1341E /* MutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB0AEE7122F53E300B1341E /* MutableDictionary.h */; };
-                BCB0AEEA122F53E300B1341E /* MutableDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCB0AEE8122F53E300B1341E /* MutableDictionary.cpp */; };
</del><span class="cx">                 BCB0B0DC12305A2500B1341E /* WebContextUserMessageCoders.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB0B0DB12305A2500B1341E /* WebContextUserMessageCoders.h */; };
</span><span class="cx">                 BCB0B0DE12305A8C00B1341E /* InjectedBundleUserMessageCoders.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB0B0DD12305A8C00B1341E /* InjectedBundleUserMessageCoders.h */; };
</span><span class="cx">                 BCB0B0E012305AB100B1341E /* UserMessageCoders.h in Headers */ = {isa = PBXBuildFile; fileRef = BCB0B0DF12305AB100B1341E /* UserMessageCoders.h */; };
</span><span class="lines">@@ -1466,8 +1466,6 @@
</span><span class="cx">                 BCBAACF51452324F0053F82F /* WKBrowsingContextGroup.mm in Sources */ = {isa = PBXBuildFile; fileRef = BCBAACEF145232440053F82F /* WKBrowsingContextGroup.mm */; };
</span><span class="cx">                 BCBAACF61452324F0053F82F /* WKBrowsingContextGroupPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = BCBAACF0145232480053F82F /* WKBrowsingContextGroupPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 BCBAAD0B14560A430053F82F /* WKBrowsingContextLoadDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = BCBAAD0A14560A430053F82F /* WKBrowsingContextLoadDelegate.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><del>-                BCBCB0CB1215E32100DE59CA /* ImmutableDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = BCBCB0CA1215E32100DE59CA /* ImmutableDictionary.h */; };
-                BCBCB0CD1215E33A00DE59CA /* ImmutableDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCBCB0CC1215E33A00DE59CA /* ImmutableDictionary.cpp */; };
</del><span class="cx">                 BCBD3914125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */; };
</span><span class="cx">                 BCBD3915125BB1A800D2C29F /* WebPageProxyMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */; };
</span><span class="cx">                 BCBECDE716B6416800047A1A /* XPCServiceEntryPoint.mm in Sources */ = {isa = PBXBuildFile; fileRef = BCBECDE516B6416700047A1A /* XPCServiceEntryPoint.mm */; };
</span><span class="lines">@@ -3139,6 +3137,8 @@
</span><span class="cx">                 7C135AA6173B0BCA00586AE2 /* WKPluginInformation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPluginInformation.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 7C135AA7173B0BCA00586AE2 /* WKPluginInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKPluginInformation.h; sourceTree = "<group>"; };
</span><span class="cx">                 7C135AAA173B0CFF00586AE2 /* PluginInformationMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PluginInformationMac.mm; sourceTree = "<group>"; };
</span><ins>+                7C1BA33B1A4A0E600043E249 /* APIDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = APIDictionary.cpp; sourceTree = "<group>"; };
+                7C1BA33C1A4A0E600043E249 /* APIDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APIDictionary.h; sourceTree = "<group>"; };
</ins><span class="cx">                 7C361D6F1927FA360036A59D /* WebScriptMessageHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebScriptMessageHandler.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 7C361D701927FA360036A59D /* WebScriptMessageHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebScriptMessageHandler.h; sourceTree = "<group>"; };
</span><span class="cx">                 7C361D751928028B0036A59D /* WebUserContentControllerProxy.messages.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = WebUserContentControllerProxy.messages.in; sourceTree = "<group>"; };
</span><span class="lines">@@ -3564,8 +3564,6 @@
</span><span class="cx">                 BCACC44016B24CAA00B6E092 /* Info-OSX.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-OSX.plist"; sourceTree = "<group>"; };
</span><span class="cx">                 BCACC44316B24CAA00B6E092 /* Info-OSX.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-OSX.plist"; sourceTree = "<group>"; };
</span><span class="cx">                 BCAE9DE9160C097400A33217 /* com.apple.WebKit.WebContent.Development.xpc */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = com.apple.WebKit.WebContent.Development.xpc; sourceTree = BUILT_PRODUCTS_DIR; };
</span><del>-                BCB0AEE7122F53E300B1341E /* MutableDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MutableDictionary.h; sourceTree = "<group>"; };
-                BCB0AEE8122F53E300B1341E /* MutableDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MutableDictionary.cpp; sourceTree = "<group>"; };
</del><span class="cx">                 BCB0B0DB12305A2500B1341E /* WebContextUserMessageCoders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebContextUserMessageCoders.h; sourceTree = "<group>"; };
</span><span class="cx">                 BCB0B0DD12305A8C00B1341E /* InjectedBundleUserMessageCoders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundleUserMessageCoders.h; sourceTree = "<group>"; };
</span><span class="cx">                 BCB0B0DF12305AB100B1341E /* UserMessageCoders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserMessageCoders.h; sourceTree = "<group>"; };
</span><span class="lines">@@ -3587,8 +3585,6 @@
</span><span class="cx">                 BCBAACEF145232440053F82F /* WKBrowsingContextGroup.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKBrowsingContextGroup.mm; sourceTree = "<group>"; };
</span><span class="cx">                 BCBAACF0145232480053F82F /* WKBrowsingContextGroupPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBrowsingContextGroupPrivate.h; sourceTree = "<group>"; };
</span><span class="cx">                 BCBAAD0A14560A430053F82F /* WKBrowsingContextLoadDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBrowsingContextLoadDelegate.h; sourceTree = "<group>"; };
</span><del>-                BCBCB0CA1215E32100DE59CA /* ImmutableDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImmutableDictionary.h; sourceTree = "<group>"; };
-                BCBCB0CC1215E33A00DE59CA /* ImmutableDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ImmutableDictionary.cpp; sourceTree = "<group>"; };
</del><span class="cx">                 BCBD38FA125BAB9A00D2C29F /* WebPageProxy.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebPageProxy.messages.in; sourceTree = "<group>"; };
</span><span class="cx">                 BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebPageProxyMessageReceiver.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPageProxyMessages.h; sourceTree = "<group>"; };
</span><span class="lines">@@ -4499,14 +4495,10 @@
</span><span class="cx">                                 762B7481120BBA0100819339 /* FontSmoothingLevel.h */,
</span><span class="cx">                                 F638954F133BEF38008941D5 /* HTTPCookieAcceptPolicy.h */,
</span><span class="cx">                                 BCCF6B2312C93E7A008F9C35 /* ImageOptions.h */,
</span><del>-                                BCBCB0CC1215E33A00DE59CA /* ImmutableDictionary.cpp */,
-                                BCBCB0CA1215E32100DE59CA /* ImmutableDictionary.h */,
</del><span class="cx">                                 C58CDF2B1887609F00871536 /* InteractionInformationAtPosition.cpp */,
</span><span class="cx">                                 C58CDF2C1887609F00871536 /* InteractionInformationAtPosition.h */,
</span><span class="cx">                                 1A92DC1212F8BAB90017AF65 /* LayerTreeContext.cpp */,
</span><span class="cx">                                 1A92DC1012F8BA460017AF65 /* LayerTreeContext.h */,
</span><del>-                                BCB0AEE8122F53E300B1341E /* MutableDictionary.cpp */,
-                                BCB0AEE7122F53E300B1341E /* MutableDictionary.h */,
</del><span class="cx">                                 C02BFF1512514FD8009CCBEA /* NativeWebKeyboardEvent.h */,
</span><span class="cx">                                 31EA25D3134F78D6005B1452 /* NativeWebMouseEvent.h */,
</span><span class="cx">                                 263172CE18B469490065B9C3 /* NativeWebTouchEvent.h */,
</span><span class="lines">@@ -6769,6 +6761,8 @@
</span><span class="cx">                                 1A3DD205125E5A2F004515E6 /* APIClient.h */,
</span><span class="cx">                                 1AAB037B185F99D800EDF501 /* APIData.cpp */,
</span><span class="cx">                                 51578B821209ECEF00A37C4A /* APIData.h */,
</span><ins>+                                7C1BA33B1A4A0E600043E249 /* APIDictionary.cpp */,
+                                7C1BA33C1A4A0E600043E249 /* APIDictionary.h */,
</ins><span class="cx">                                 BC575612126E0138006F0F12 /* APIError.cpp */,
</span><span class="cx">                                 516A4A5B120A2CCD00C05B7F /* APIError.h */,
</span><span class="cx">                                 1AC1336F18566C7C00F3EC05 /* APIFrameHandle.cpp */,
</span><span class="lines">@@ -7271,6 +7265,7 @@
</span><span class="cx">                                 1AEFD27911D16C81008219D3 /* ArgumentCoder.h in Headers */,
</span><span class="cx">                                 1AEFD2F711D1807B008219D3 /* ArgumentCoders.h in Headers */,
</span><span class="cx">                                 1AAF0C4A12B16334008E49E2 /* ArgumentCodersCF.h in Headers */,
</span><ins>+                                7C1BA33E1A4A0E600043E249 /* APIDictionary.h in Headers */,
</ins><span class="cx">                                 E179FD9C134D38060015B883 /* ArgumentCodersMac.h in Headers */,
</span><span class="cx">                                 BC032DA610F437D10058C15A /* ArgumentDecoder.h in Headers */,
</span><span class="cx">                                 BC032DA810F437D10058C15A /* ArgumentEncoder.h in Headers */,
</span><span class="lines">@@ -7350,7 +7345,6 @@
</span><span class="cx">                                 518353DB1885BF8C00D9FE44 /* IDBSerialization.h in Headers */,
</span><span class="cx">                                 51E351CB180F2CCC00E53BE9 /* IDBUtilities.h in Headers */,
</span><span class="cx">                                 BCCF6B2512C93E7A008F9C35 /* ImageOptions.h in Headers */,
</span><del>-                                BCBCB0CB1215E32100DE59CA /* ImmutableDictionary.h in Headers */,
</del><span class="cx">                                 1A1EC69E1872092100B951F0 /* ImportanceAssertion.h in Headers */,
</span><span class="cx">                                 BC204EE311C83E98008F3375 /* InjectedBundle.h in Headers */,
</span><span class="cx">                                 935EEBA2127761D0003322B8 /* InjectedBundleBackForwardList.h in Headers */,
</span><span class="lines">@@ -7394,7 +7388,6 @@
</span><span class="cx">                                 1A3EED0F161A535400AEB4F5 /* MessageReceiverMap.h in Headers */,
</span><span class="cx">                                 1AAB037A185A7C6A00EDF501 /* MessageSender.h in Headers */,
</span><span class="cx">                                 C0E3AA7C1209E83C00A49D01 /* Module.h in Headers */,
</span><del>-                                BCB0AEE9122F53E300B1341E /* MutableDictionary.h in Headers */,
</del><span class="cx">                                 263172CF18B469490065B9C3 /* NativeWebTouchEvent.h in Headers */,
</span><span class="cx">                                 1ADCB86B189831B30022EE5A /* NavigationActionData.h in Headers */,
</span><span class="cx">                                 1ABC3DF61899E437004F0626 /* NavigationState.h in Headers */,
</span><span class="lines">@@ -9034,7 +9027,6 @@
</span><span class="cx">                                 2DA049B7180CCD0A00AAFA9E /* GraphicsLayerCARemote.cpp in Sources */,
</span><span class="cx">                                 518353DA1885BF8C00D9FE44 /* IDBSerialization.cpp in Sources */,
</span><span class="cx">                                 51E351CA180F2CCC00E53BE9 /* IDBUtilities.cpp in Sources */,
</span><del>-                                BCBCB0CD1215E33A00DE59CA /* ImmutableDictionary.cpp in Sources */,
</del><span class="cx">                                 BC204EE211C83E98008F3375 /* InjectedBundle.cpp in Sources */,
</span><span class="cx">                                 935EEBA1127761CC003322B8 /* InjectedBundleBackForwardList.cpp in Sources */,
</span><span class="cx">                                 935EEBA3127761D3003322B8 /* InjectedBundleBackForwardListItem.cpp in Sources */,
</span><span class="lines">@@ -9079,7 +9071,6 @@
</span><span class="cx">                                 1AAB0379185A7C6A00EDF501 /* MessageSender.cpp in Sources */,
</span><span class="cx">                                 C0E3AA7B1209E83500A49D01 /* Module.cpp in Sources */,
</span><span class="cx">                                 C0E3AA7A1209E83000A49D01 /* ModuleCF.cpp in Sources */,
</span><del>-                                BCB0AEEA122F53E300B1341E /* MutableDictionary.cpp in Sources */,
</del><span class="cx">                                 2DA9449E1884E4F000ED86DB /* NativeWebKeyboardEventIOS.mm in Sources */,
</span><span class="cx">                                 C02BFF1E1251502E009CCBEA /* NativeWebKeyboardEventMac.mm in Sources */,
</span><span class="cx">                                 31EA25D2134F78C0005B1452 /* NativeWebMouseEventMac.mm in Sources */,
</span><span class="lines">@@ -9247,6 +9238,7 @@
</span><span class="cx">                                 1A44B95B16B73F9F00B7BBD8 /* StorageManager.cpp in Sources */,
</span><span class="cx">                                 1AB31A9616BC688100F6DBC9 /* StorageManagerMessageReceiver.cpp in Sources */,
</span><span class="cx">                                 1A44B95716B737AA00B7BBD8 /* StorageNamespaceImpl.cpp in Sources */,
</span><ins>+                                7C1BA33D1A4A0E600043E249 /* APIDictionary.cpp in Sources */,
</ins><span class="cx">                                 1AE00D6B18327C1200087DD7 /* StringReference.cpp in Sources */,
</span><span class="cx">                                 296BD85E15019BC30071F424 /* StringUtilities.mm in Sources */,
</span><span class="cx">                                 1ZZ417EF12C00D87002BE67B /* TextCheckerCompletion.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessInjectedBundleInjectedBundlePageFormClientcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp (177698 => 177699)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp        2014-12-23 23:06:10 UTC (rev 177698)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp        2014-12-23 23:07:40 UTC (rev 177699)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> #include "InjectedBundlePageFormClient.h"
</span><span class="cx">
</span><span class="cx"> #include "APIArray.h"
</span><del>-#include "ImmutableDictionary.h"
</del><ins>+#include "APIDictionary.h"
</ins><span class="cx"> #include "InjectedBundleNodeHandle.h"
</span><span class="cx"> #include "WKAPICast.h"
</span><span class="cx"> #include "WKBundleAPICast.h"
</span><span class="lines">@@ -133,10 +133,10 @@
</span><span class="cx">
</span><span class="cx"> RefPtr<InjectedBundleNodeHandle> nodeHandle = InjectedBundleNodeHandle::getOrCreate(formElement);
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> for (size_t i = 0; i < values.size(); ++i)
</span><span class="cx"> map.set(values[i].first, API::String::create(values[i].second));
</span><del>- auto textFieldsMap = ImmutableDictionary::create(WTF::move(map));
</del><ins>+ auto textFieldsMap = API::Dictionary::create(WTF::move(map));
</ins><span class="cx">
</span><span class="cx"> m_client.willSendSubmitEvent(toAPI(page), toAPI(nodeHandle.get()), toAPI(frame), toAPI(sourceFrame), toAPI(textFieldsMap.get()), m_client.base.clientInfo);
</span><span class="cx"> }
</span><span class="lines">@@ -148,10 +148,10 @@
</span><span class="cx">
</span><span class="cx"> RefPtr<InjectedBundleNodeHandle> nodeHandle = InjectedBundleNodeHandle::getOrCreate(formElement);
</span><span class="cx">
</span><del>- ImmutableDictionary::MapType map;
</del><ins>+ API::Dictionary::MapType map;
</ins><span class="cx"> for (size_t i = 0; i < values.size(); ++i)
</span><span class="cx"> map.set(values[i].first, API::String::create(values[i].second));
</span><del>- auto textFieldsMap = ImmutableDictionary::create(WTF::move(map));
</del><ins>+ auto textFieldsMap = API::Dictionary::create(WTF::move(map));
</ins><span class="cx">
</span><span class="cx"> WKTypeRef userDataToPass = 0;
</span><span class="cx"> m_client.willSubmitForm(toAPI(page), toAPI(nodeHandle.get()), toAPI(frame), toAPI(sourceFrame), toAPI(textFieldsMap.get()), &userDataToPass, m_client.base.clientInfo);
</span></span></pre>
</div>
</div>
</body>
</html>