Changeset 89060 in webkit


Ignore:
Timestamp:
Jun 16, 2011 1:01:14 PM (13 years ago)
Author:
andersca@apple.com
Message:

2011-06-16 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Cleanup ResourceRequest, ResourceResponse and ResourceError argument coders
https://bugs.webkit.org/show_bug.cgi?id=62803

Get rid of the free encode/decode functions and move the template specializations to their
respective implementation files instead.

  • Shared/WebCoreArgumentCoders.h:
  • Shared/gtk/WebCoreArgumentCodersGtk.cpp: (CoreIPC::::encode): (CoreIPC::::decode):
  • Shared/mac/WebCoreArgumentCodersMac.mm: (CoreIPC::::encode): (CoreIPC::::decode):
  • Shared/qt/WebCoreArgumentCodersQt.cpp: (CoreIPC::::encode): (CoreIPC::::decode):
  • Shared/win/WebCoreArgumentCodersWin.cpp: (CoreIPC::::encode): (CoreIPC::::decode):
Location:
trunk/Source/WebKit2
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r89050 r89060  
     12011-06-16  Anders Carlsson  <andersca@apple.com>
     2
     3        Reviewed by Sam Weinig.
     4
     5        Cleanup ResourceRequest, ResourceResponse and ResourceError argument coders
     6        https://bugs.webkit.org/show_bug.cgi?id=62803
     7
     8        Get rid of the free encode/decode functions and move the template specializations to their
     9        respective implementation files instead.
     10
     11        * Shared/WebCoreArgumentCoders.h:
     12        * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
     13        (CoreIPC::::encode):
     14        (CoreIPC::::decode):
     15        * Shared/mac/WebCoreArgumentCodersMac.mm:
     16        (CoreIPC::::encode):
     17        (CoreIPC::::decode):
     18        * Shared/qt/WebCoreArgumentCodersQt.cpp:
     19        (CoreIPC::::encode):
     20        (CoreIPC::::decode):
     21        * Shared/win/WebCoreArgumentCodersWin.cpp:
     22        (CoreIPC::::encode):
     23        (CoreIPC::::decode):
     24
    1252011-06-16  Chang Shu  <cshu@webkit.org>
    226
  • trunk/Source/WebKit2/Shared/WebCoreArgumentCoders.h

    r89045 r89060  
    131131#endif
    132132
    133 // These two functions are implemented in a platform specific manner.
    134 void encodeResourceRequest(ArgumentEncoder*, const WebCore::ResourceRequest&);
    135 bool decodeResourceRequest(ArgumentDecoder*, WebCore::ResourceRequest&);
    136 
    137133template<> struct ArgumentCoder<WebCore::ResourceRequest> {
    138     static void encode(ArgumentEncoder* encoder, const WebCore::ResourceRequest& resourceRequest)
    139     {
    140         encodeResourceRequest(encoder, resourceRequest);
    141     }
    142    
    143     static bool decode(ArgumentDecoder* decoder, WebCore::ResourceRequest& resourceRequest)
    144     {
    145         return decodeResourceRequest(decoder, resourceRequest);
    146     }
    147 };
    148 
    149 // These two functions are implemented in a platform specific manner.
    150 void encodeResourceResponse(ArgumentEncoder*, const WebCore::ResourceResponse&);
    151 bool decodeResourceResponse(ArgumentDecoder*, WebCore::ResourceResponse&);
     134    static void encode(ArgumentEncoder*, const WebCore::ResourceRequest&);
     135    static bool decode(ArgumentDecoder*, WebCore::ResourceRequest&);
     136};
    152137
    153138template<> struct ArgumentCoder<WebCore::ResourceResponse> {
    154     static void encode(ArgumentEncoder* encoder, const WebCore::ResourceResponse& resourceResponse)
    155     {
    156         encodeResourceResponse(encoder, resourceResponse);
    157     }
    158 
    159     static bool decode(ArgumentDecoder* decoder, WebCore::ResourceResponse& resourceResponse)
    160     {
    161         return decodeResourceResponse(decoder, resourceResponse);
    162     }
    163 };
    164 
    165 // These two functions are implemented in a platform specific manner.
    166 void encodeResourceError(ArgumentEncoder*, const WebCore::ResourceError&);
    167 bool decodeResourceError(ArgumentDecoder*, WebCore::ResourceError&);
    168 
     139    static void encode(ArgumentEncoder*, const WebCore::ResourceResponse&);
     140    static bool decode(ArgumentDecoder*, WebCore::ResourceResponse&);
     141};
    169142template<> struct ArgumentCoder<WebCore::ResourceError> {
    170     static void encode(ArgumentEncoder* encoder, const WebCore::ResourceError& resourceError)
    171     {
    172         encodeResourceError(encoder, resourceError);
    173     }
    174    
    175     static bool decode(ArgumentDecoder* decoder, WebCore::ResourceError& resourceError)
    176     {
    177         return decodeResourceError(decoder, resourceError);
    178     }
     143    static void encode(ArgumentEncoder*, const WebCore::ResourceError&);
     144    static bool decode(ArgumentDecoder*, WebCore::ResourceError&);
    179145};
    180146
  • trunk/Source/WebKit2/Shared/gtk/WebCoreArgumentCodersGtk.cpp

    r89030 r89060  
    2929#include "WebCoreArgumentCoders.h"
    3030
     31using namespace WebCore;
     32
    3133namespace CoreIPC {
    3234
    33 void encodeResourceRequest(ArgumentEncoder* encoder, const WebCore::ResourceRequest& resourceRequest)
     35void ArgumentCoder<ResourceRequest>::encode(ArgumentEncoder* encoder, const ResourceRequest& resourceRequest)
    3436{
    35     encoder->encode(CoreIPC::In(resourceRequest.url().string()));
    36     encoder->encode(CoreIPC::In(resourceRequest.httpMethod()));
     37    encoder->encode(resourceRequest.url().string());
     38    encoder->encode(resourceRequest.httpMethod());
    3739
    38     const WebCore::HTTPHeaderMap& headers = resourceRequest.httpHeaderFields();
    39     encoder->encode(CoreIPC::In(static_cast<uint32_t>(headers.size())));
    40     if (!headers.isEmpty()) {
    41         WebCore::HTTPHeaderMap::const_iterator end = headers.end();
    42         for (WebCore::HTTPHeaderMap::const_iterator it = headers.begin(); it != end; ++it)
    43             encoder->encode(CoreIPC::In(it->first, it->second));
    44     }
     40    const HTTPHeaderMap& headers = resourceRequest.httpHeaderFields();
     41    encoder->encode(headers);
    4542
    46     WebCore::FormData* httpBody = resourceRequest.httpBody();
    47     encoder->encode(CoreIPC::In(static_cast<bool>(httpBody)));
     43    FormData* httpBody = resourceRequest.httpBody();
     44    encoder->encode(static_cast<bool>(httpBody));
    4845    if (httpBody)
    49         encoder->encode(CoreIPC::In(httpBody->flattenToString()));
     46        encoder->encode(httpBody->flattenToString());
    5047
    51     encoder->encode(CoreIPC::In(resourceRequest.firstPartyForCookies().string()));
    52     encoder->encode(CoreIPC::In(static_cast<uint32_t>(resourceRequest.soupMessageFlags())));
     48    encoder->encode(resourceRequest.firstPartyForCookies().string());
     49    encoder->encode(static_cast<uint32_t>(resourceRequest.soupMessageFlags()));
    5350}
    5451
    55 bool decodeResourceRequest(ArgumentDecoder* decoder, WebCore::ResourceRequest& resourceRequest)
     52bool ArgumentCoder<ResourceRequest>::decode(ArgumentDecoder* decoder, ResourceRequest& resourceRequest)
    5653{
    57     WebCore::ResourceRequest request;
     54    ResourceRequest request;
    5855
    5956    String url;
    60     if (!decoder->decode(CoreIPC::Out(url)))
     57    if (!decoder->decode(url))
    6158        return false;
    62     request.setURL(WebCore::KURL(WebCore::KURL(), url));
     59    request.setURL(KURL(KURL(), url));
    6360
    6461    String httpMethod;
    65     if (!decoder->decode(CoreIPC::Out(httpMethod)))
     62    if (!decoder->decode(httpMethod))
    6663        return false;
    6764    request.setHTTPMethod(httpMethod);
    6865
    69     uint32_t size;
    70     if (!decoder->decode(CoreIPC::Out(size)))
     66    HTTPHeaderMap headers;
     67    if (!decoder->decode(headers))
    7168        return false;
    72     if (size) {
    73         AtomicString name;
    74         String value;
    75         for (uint32_t i = 0; i < size; ++i) {
    76             if (!decoder->decode(CoreIPC::Out(name, value)))
    77                 return false;
    78             request.setHTTPHeaderField(name, value);
    79         }
    80     }
     69    request.addHTTPHeaderFields(headers);
    8170
    8271    bool hasHTTPBody;
    83     if (!decoder->decode(CoreIPC::Out(hasHTTPBody)))
     72    if (!decoder->decode(hasHTTPBody))
    8473        return false;
    8574    if (hasHTTPBody) {
    8675        String httpBody;
    87         if (!decoder->decode(CoreIPC::Out(httpBody)))
     76        if (!decoder->decode(httpBody))
    8877            return false;
    89         request.setHTTPBody(WebCore::FormData::create(httpBody.utf8()));
     78        request.setHTTPBody(FormData::create(httpBody.utf8()));
    9079    }
    9180
    9281    String firstPartyForCookies;
    93     if (!decoder->decode(CoreIPC::Out(firstPartyForCookies)))
     82    if (!decoder->decode(firstPartyForCookies))
    9483        return false;
    95     request.setFirstPartyForCookies(WebCore::KURL(WebCore::KURL(), firstPartyForCookies));
     84    request.setFirstPartyForCookies(KURL(KURL(), firstPartyForCookies));
    9685
    9786    uint32_t soupMessageFlags;
    98     if (!decoder->decode(CoreIPC::Out(soupMessageFlags)))
     87    if (!decoder->decode(soupMessageFlags))
    9988        return false;
    10089    request.setSoupMessageFlags(static_cast<SoupMessageFlags>(soupMessageFlags));
     
    10493}
    10594
    106 void encodeResourceResponse(ArgumentEncoder* encoder, const WebCore::ResourceResponse& resourceResponse)
     95
     96void ArgumentCoder<ResourceResponse>::encode(ArgumentEncoder* encoder, const ResourceResponse& resourceResponse)
    10797{
    108     encoder->encode(CoreIPC::In(resourceResponse.url().string()));
    109     encoder->encode(CoreIPC::In(static_cast<int32_t>(resourceResponse.httpStatusCode())));
     98    encoder->encode(resourceResponse.url().string());
     99    encoder->encode(static_cast<int32_t>(resourceResponse.httpStatusCode()));
    110100
    111     const WebCore::HTTPHeaderMap& headers = resourceResponse.httpHeaderFields();
    112     encoder->encode(CoreIPC::In(static_cast<uint32_t>(headers.size())));
    113     if (!headers.isEmpty()) {
    114         WebCore::HTTPHeaderMap::const_iterator end = headers.end();
    115         for (WebCore::HTTPHeaderMap::const_iterator it = headers.begin(); it != end; ++it)
    116             encoder->encode(CoreIPC::In(it->first, it->second));
    117     }
     101    encoder->encode(headers);
    118102
    119     encoder->encode(CoreIPC::In(static_cast<uint32_t>(resourceResponse.soupMessageFlags())));
    120     encoder->encode(CoreIPC::In(resourceResponse.mimeType()));
    121     encoder->encode(CoreIPC::In(resourceResponse.textEncodingName()));
    122     encoder->encode(CoreIPC::In(static_cast<int64_t>(resourceResponse.expectedContentLength())));
    123     encoder->encode(CoreIPC::In(resourceResponse.httpStatusText()));
    124     encoder->encode(CoreIPC::In(resourceResponse.suggestedFilename()));
     103    encoder->encode(static_cast<uint32_t>(resourceResponse.soupMessageFlags()));
     104    encoder->encode(resourceResponse.mimeType());
     105    encoder->encode(resourceResponse.textEncodingName());
     106    encoder->encode(static_cast<int64_t>(resourceResponse.expectedContentLength()));
     107    encoder->encode(resourceResponse.httpStatusText());
     108    encoder->encode(resourceResponse.suggestedFilename());
    125109}
    126110
    127 bool decodeResourceResponse(ArgumentDecoder* decoder, WebCore::ResourceResponse& resourceResponse)
     111bool ArgumentCoder<ResourceResponse>::decode(ArgumentDecoder* decoder, ResourceResponse& resourceResponse)
    128112{
    129     WebCore::ResourceResponse response;
     113    ResourceResponse response;
    130114
    131115    String url;
    132     if (!decoder->decode(CoreIPC::Out(url)))
     116    if (!decoder->decode(url))
    133117        return false;
    134     response.setURL(WebCore::KURL(WebCore::KURL(), url));
     118    response.setURL(KURL(KURL(), url));
    135119
    136120    int32_t httpStatusCode;
    137     if (!decoder->decode(CoreIPC::Out(httpStatusCode)))
     121    if (!decoder->decode(httpStatusCode))
    138122        return false;
    139123    response.setHTTPStatusCode(httpStatusCode);
    140124
    141     uint32_t size;
    142     if (!decoder->decode(CoreIPC::Out(size)))
     125    HTTPHeaderMap headers;
     126    if (!decoder->decode(headers))
    143127        return false;
    144     if (size) {
    145         AtomicString name;
    146         String value;
    147         for (uint32_t i = 0; i < size; ++i) {
    148             if (!decoder->decode(CoreIPC::Out(name, value)))
    149                 return false;
    150             response.setHTTPHeaderField(name, value);
    151         }
    152     }
     128    for (HTTPHeaderMap::const_iterator it = headers.begin(), end = headers.end(); it != end; ++it)
     129        response.setHTTPHeaderField(it->first, it->second);
    153130
    154131    uint32_t soupMessageFlags;
    155     if (!decoder->decode(CoreIPC::Out(soupMessageFlags)))
     132    if (!decoder->decode(soupMessageFlags))
    156133        return false;
    157134    response.setSoupMessageFlags(static_cast<SoupMessageFlags>(soupMessageFlags));
    158135
    159136    String mimeType;
    160     if (!decoder->decode(CoreIPC::Out(mimeType)))
     137    if (!decoder->decode(mimeType))
    161138        return false;
    162139    response.setMimeType(mimeType);
    163140
    164141    String textEncodingName;
    165     if (!decoder->decode(CoreIPC::Out(textEncodingName)))
     142    if (!decoder->decode(textEncodingName))
    166143        return false;
    167144    response.setTextEncodingName(textEncodingName);
    168145
    169146    int64_t contentLength;
    170     if (!decoder->decode(CoreIPC::Out(contentLength)))
     147    if (!decoder->decode(contentLength))
    171148        return false;
    172149    response.setExpectedContentLength(contentLength);
    173150
    174151    String httpStatusText;
    175     if (!decoder->decode(CoreIPC::Out(httpStatusText)))
     152    if (!decoder->decode(httpStatusText))
    176153        return false;
    177154    response.setHTTPStatusText(httpStatusText);
    178155
    179156    String suggestedFilename;
    180     if (!decoder->decode(CoreIPC::Out(suggestedFilename)))
     157    if (!decoder->decode(suggestedFilename))
    181158        return false;
    182159    response.setSuggestedFilename(suggestedFilename);
     
    186163}
    187164
    188 void encodeResourceError(ArgumentEncoder* encoder, const WebCore::ResourceError& resourceError)
     165
     166void ArgumentCoder<ResourceError>::encode(ArgumentEncoder* encoder, const ResourceError& resourceError)
    189167{
    190     encoder->encode(CoreIPC::In(resourceError.domain(), resourceError.errorCode(), resourceError.failingURL(), resourceError.localizedDescription()));
     168    encoder->encode(resourceError.domain());
     169    encoder->encode(resourceError.errorCode());
     170    encoder->encode(resourceError.failingURL());
     171    encoder->encode(resourceError.localizedDescription());
    191172}
    192173
    193 bool decodeResourceError(ArgumentDecoder* decoder, WebCore::ResourceError& resourceError)
     174bool ArgumentCoder<ResourceError>::decode(ArgumentDecoder* decoder, ResourceError& resourceError)
    194175{
    195176    String domain;
     177    if (!decoder->decode(domain))
     178        return false;
     179
    196180    int errorCode;
     181    if (!decoder->decode(errorCode))
     182        return false;
     183
    197184    String failingURL;
     185    if (!decoder->decode(failingURL))
     186        return false;
     187
    198188    String localizedDescription;
    199     if (!decoder->decode(CoreIPC::Out(domain, errorCode, failingURL, localizedDescription)))
     189    if (!decoder->decode(localizedDescription))
    200190        return false;
    201     resourceError = WebCore::ResourceError(domain, errorCode, failingURL, localizedDescription);
     191   
     192    resourceError = ResourceError(domain, errorCode, failingURL, localizedDescription);
    202193    return true;
    203194}
  • trunk/Source/WebKit2/Shared/mac/WebCoreArgumentCodersMac.mm

    r89038 r89060  
    3636namespace CoreIPC {
    3737
    38 void encodeResourceRequest(ArgumentEncoder* encoder, const ResourceRequest& resourceRequest)
     38void ArgumentCoder<ResourceRequest>::encode(ArgumentEncoder* encoder, const ResourceRequest& resourceRequest)
    3939{
    4040    bool requestIsPresent = resourceRequest.nsURLRequest();
     
    4545
    4646    RetainPtr<CFDictionaryRef> dictionary(AdoptCF, WKNSURLRequestCreateSerializableRepresentation(resourceRequest.nsURLRequest(), CoreIPC::tokenNullTypeRef()));
    47     encode(encoder, dictionary.get());
    48 }
    49 
    50 bool decodeResourceRequest(ArgumentDecoder* decoder, ResourceRequest& resourceRequest)
     47    CoreIPC::encode(encoder, dictionary.get());
     48}
     49
     50bool ArgumentCoder<ResourceRequest>::decode(ArgumentDecoder* decoder, ResourceRequest& resourceRequest)
    5151{
    5252    bool requestIsPresent;
     
    6060
    6161    RetainPtr<CFDictionaryRef> dictionary;
    62     if (!decode(decoder, dictionary))
     62    if (!CoreIPC::decode(decoder, dictionary))
    6363        return false;
    6464
     
    7171}
    7272
    73 void encodeResourceResponse(ArgumentEncoder* encoder, const ResourceResponse& resourceResponse)
     73void ArgumentCoder<ResourceResponse>::encode(ArgumentEncoder* encoder, const ResourceResponse& resourceResponse)
    7474{
    7575    bool responseIsPresent = resourceResponse.nsURLResponse();
     
    8080
    8181    RetainPtr<CFDictionaryRef> dictionary(AdoptCF, WKNSURLResponseCreateSerializableRepresentation(resourceResponse.nsURLResponse(), CoreIPC::tokenNullTypeRef()));
    82     encode(encoder, dictionary.get());
    83 }
    84 
    85 bool decodeResourceResponse(ArgumentDecoder* decoder, ResourceResponse& resourceResponse)
     82    CoreIPC::encode(encoder, dictionary.get());
     83}
     84
     85bool ArgumentCoder<ResourceResponse>::decode(ArgumentDecoder* decoder, ResourceResponse& resourceResponse)
    8686{
    8787    bool responseIsPresent;
     
    9595
    9696    RetainPtr<CFDictionaryRef> dictionary;
    97     if (!decode(decoder, dictionary))
     97    if (!CoreIPC::decode(decoder, dictionary))
    9898        return false;
    9999
     
    111111}
    112112
    113 void encodeResourceError(ArgumentEncoder* encoder, const ResourceError& resourceError)
     113void ArgumentCoder<ResourceError>::encode(ArgumentEncoder* encoder, const ResourceError& resourceError)
    114114{
    115115    bool errorIsNull = resourceError.isNull();
     
    145145}
    146146
    147 bool decodeResourceError(ArgumentDecoder* decoder, ResourceError& resourceError)
     147bool ArgumentCoder<ResourceError>::decode(ArgumentDecoder* decoder, ResourceError& resourceError)
    148148{
    149149    bool errorIsNull;
     
    186186        [userInfo setObject:(NSArray *)certificate.certificateChain() forKey:@"NSErrorPeerCertificateChainKey"];
    187187
    188     NSError *nsError = [[NSError alloc] initWithDomain:nsString(domain) code:code userInfo:userInfo];
    189 
    190     resourceError = ResourceError(nsError);
    191     [nsError release];
    192     return true;
    193 }
    194 
     188    RetainPtr<NSError> nsError(AdoptNS, [[NSError alloc] initWithDomain:nsString(domain) code:code userInfo:userInfo]);
     189
     190    resourceError = ResourceError(nsError.get());
     191    return true;
     192}
    195193
    196194void ArgumentCoder<KeypressCommand>::encode(ArgumentEncoder* encoder, const KeypressCommand& keypressCommand)
  • trunk/Source/WebKit2/Shared/qt/WebCoreArgumentCodersQt.cpp

    r82002 r89060  
    3030#include <WebCore/ResourceResponse.h>
    3131
     32using namespace WebCore;
     33 
    3234namespace CoreIPC {
    3335
    34 void encodeResourceRequest(ArgumentEncoder* encoder, const WebCore::ResourceRequest& resourceRequest)
     36void ArgumentCoder<ResourceRequest>::encode(ArgumentEncoder* encoder, const ResourceRequest& resourceRequest)
    3537{
    3638    notImplemented();
    3739}
    3840
    39 bool decodeResourceRequest(ArgumentDecoder* decoder, WebCore::ResourceRequest& resourceRequest)
     41bool ArgumentCoder<ResourceRequest>::decode(ArgumentDecoder* decoder, ResourceRequest& resourceRequest)
    4042{
    4143    notImplemented();
     
    4749}
    4850
    49 void encodeResourceResponse(ArgumentEncoder* encoder, const WebCore::ResourceResponse& resourceResponse)
     51
     52void ArgumentCoder<ResourceResponse>::encode(ArgumentEncoder* encoder, const ResourceResponse& resourceResponse)
    5053{
    5154    notImplemented();
    5255}
    5356
    54 bool decodeResourceResponse(ArgumentDecoder* decoder, WebCore::ResourceResponse& resourceResponse)
     57bool ArgumentCoder<ResourceResponse>::decode(ArgumentDecoder* decoder, ResourceResponse& resourceResponse)
    5558{
    5659    notImplemented();
    5760
    5861    // FIXME: Ditto.
    59     resourceResponse = WebCore::ResourceResponse();
     62    resourceResponse = ResourceResponse();
    6063    return true;
    6164}
    6265
    63 void encodeResourceError(ArgumentEncoder* encoder, const WebCore::ResourceError& resourceError)
     66
     67void ArgumentCoder<ResourceError>::encode(ArgumentEncoder* encoder, const ResourceError& resourceError)
    6468{
    65     encoder->encode(CoreIPC::In(resourceError.domain(), resourceError.errorCode(), resourceError.failingURL(), resourceError.localizedDescription()));
     69    encoder->encode(resourceError.domain());
     70    encoder->encode(resourceError.errorCode());
     71    encoder->encode(resourceError.failingURL());
     72    encoder->encode(resourceError.localizedDescription());
    6673}
    6774
    68 bool decodeResourceError(ArgumentDecoder* decoder, WebCore::ResourceError& resourceError)
     75bool ArgumentCoder<ResourceError>::decode(ArgumentDecoder* decoder, ResourceError& resourceError)
    6976{
    7077    String domain;
     78    if (!decoder->decode(domain))
     79        return false;
     80
    7181    int errorCode;
     82    if (!decoder->decode(errorCode))
     83        return false;
     84
    7285    String failingURL;
     86    if (!decoder->decode(failingURL))
     87        return false;
     88
    7389    String localizedDescription;
    74     if (!decoder->decode(CoreIPC::Out(domain, errorCode, failingURL, localizedDescription)))
     90    if (!decoder->decode(localizedDescription))
    7591        return false;
    76     resourceError = WebCore::ResourceError(domain, errorCode, failingURL, localizedDescription);
     92   
     93    resourceError = ResourceError(domain, errorCode, failingURL, localizedDescription);
    7794    return true;
    7895}
  • trunk/Source/WebKit2/Shared/win/WebCoreArgumentCodersWin.cpp

    r86285 r89060  
    3636#endif
    3737
     38using namespace WebCore;
     39using namespace WebKit;
     40 
    3841namespace CoreIPC {
    3942
    4043// FIXME: These coders should really go in a WebCoreArgumentCodersCFNetwork file.
    4144
    42 void encodeResourceRequest(ArgumentEncoder* encoder, const WebCore::ResourceRequest& resourceRequest)
     45void ArgumentCoder<ResourceRequest>::encode(ArgumentEncoder* encoder, const ResourceRequest& resourceRequest)
    4346{
    4447#if USE(CFNETWORK)
     
    5053
    5154    RetainPtr<CFDictionaryRef> dictionary(AdoptCF, wkCFURLRequestCreateSerializableRepresentation(resourceRequest.cfURLRequest(), CoreIPC::tokenNullTypeRef()));
    52     encode(encoder, dictionary.get());
     55    CoreIPC::encode(encoder, dictionary.get());
    5356#endif
    5457}
    5558
    56 bool decodeResourceRequest(ArgumentDecoder* decoder, WebCore::ResourceRequest& resourceRequest)
     59bool ArgumentCoder<ResourceRequest>::decode(ArgumentDecoder* decoder, ResourceRequest& resourceRequest)
    5760{
    5861#if USE(CFNETWORK)
     
    6265
    6366    if (!requestIsPresent) {
    64         resourceRequest = WebCore::ResourceRequest();
     67        resourceRequest = ResourceRequest();
    6568        return true;
    6669    }
    6770
    6871    RetainPtr<CFDictionaryRef> dictionary;
    69     if (!decode(decoder, dictionary))
     72    if (!CoreIPC::decode(decoder, dictionary))
    7073        return false;
    7174
    72     CFURLRequestRef cfURLRequest = wkCFURLRequestCreateFromSerializableRepresentation(dictionary.get(), CoreIPC::tokenNullTypeRef());
     75    RetainPtr<CFURLRequestRef> cfURLRequest(AdoptCF, wkCFURLRequestCreateFromSerializableRepresentation(dictionary.get(), CoreIPC::tokenNullTypeRef()));
    7376    if (!cfURLRequest)
    7477        return false;
    75     CFMutableURLRequestRef mutableCFURLRequest = CFURLRequestCreateMutableCopy(0, cfURLRequest);
    76     CFRelease(cfURLRequest);
     78    RetainPtr<CFMutableURLRequestRef> mutableCFURLRequest(AdoptCF, CFURLRequestCreateMutableCopy(0, cfURLRequest.get()));
    7779#if USE(CFURLSTORAGESESSIONS)
    78     wkSetRequestStorageSession(WebCore::ResourceHandle::currentStorageSession(), mutableCFURLRequest);
     80    wkSetRequestStorageSession(ResourceHandle::currentStorageSession(), mutableCFURLRequest.get());
    7981#endif
    8082
    81     resourceRequest = WebCore::ResourceRequest(mutableCFURLRequest);
     83    resourceRequest = ResourceRequest(mutableCFURLRequest.get());
    8284    return true;
    8385#else
     
    8688}
    8789
    88 void encodeResourceResponse(ArgumentEncoder* encoder, const WebCore::ResourceResponse& resourceResponse)
     90
     91void ArgumentCoder<ResourceResponse>::encode(ArgumentEncoder* encoder, const ResourceResponse& resourceResponse)
    8992{
    9093#if USE(CFNETWORK)
     
    9699
    97100    RetainPtr<CFDictionaryRef> dictionary(AdoptCF, wkCFURLResponseCreateSerializableRepresentation(resourceResponse.cfURLResponse(), CoreIPC::tokenNullTypeRef()));
    98     encode(encoder, dictionary.get());
     101    CoreIPC::encode(encoder, dictionary.get());
    99102#endif
    100103}
    101104
    102 bool decodeResourceResponse(ArgumentDecoder* decoder, WebCore::ResourceResponse& resourceResponse)
     105bool ArgumentCoder<ResourceResponse>::decode(ArgumentDecoder* decoder, ResourceResponse& resourceResponse)
    103106{
    104107#if USE(CFNETWORK)
     
    108111
    109112    if (!responseIsPresent) {
    110         resourceResponse = WebCore::ResourceResponse();
     113        resourceResponse = ResourceResponse();
    111114        return true;
    112115    }
    113116
    114117    RetainPtr<CFDictionaryRef> dictionary;
    115     if (!decode(decoder, dictionary))
     118    if (!CoreIPC::decode(decoder, dictionary))
    116119        return false;
    117120
    118     CFURLResponseRef cfURLResponse = wkCFURLResponseCreateFromSerializableRepresentation(dictionary.get(), CoreIPC::tokenNullTypeRef());
     121    RetainPtr<CFURLResponseRef> cfURLResponse(AdoptCF, wkCFURLResponseCreateFromSerializableRepresentation(dictionary.get(), CoreIPC::tokenNullTypeRef()));
    119122    if (!cfURLResponse)
    120123        return false;
    121124
    122     resourceResponse = WebCore::ResourceResponse(cfURLResponse);
     125    resourceResponse = ResourceResponse(cfURLResponse.get());
    123126    return true;
    124127#else
     
    127130}
    128131
    129 void encodeResourceError(ArgumentEncoder* encoder, const WebCore::ResourceError& resourceError)
     132
     133void ArgumentCoder<ResourceError>::encode(ArgumentEncoder* encoder, const ResourceError& resourceError)
    130134{
    131     encoder->encode(CoreIPC::In(resourceError.domain(), resourceError.errorCode(), resourceError.failingURL(), resourceError.localizedDescription()));
     135    encoder->encode(resourceError.domain());
     136    encoder->encode(resourceError.errorCode());
     137    encoder->encode(resourceError.failingURL());
     138    encoder->encode(resourceError.localizedDescription());
    132139
    133140#if USE(CFNETWORK)
    134     encoder->encode(WebKit::PlatformCertificateInfo(resourceError.certificate()));
     141    encoder->encode(PlatformCertificateInfo(resourceError.certificate()));
    135142#endif
    136143}
    137144
    138 bool decodeResourceError(ArgumentDecoder* decoder, WebCore::ResourceError& resourceError)
     145bool ArgumentCoder<ResourceError>::decode(ArgumentDecoder* decoder, ResourceError& resourceError)
    139146{
    140147    String domain;
     148    if (!decoder->decode(domain))
     149        return false;
     150
    141151    int errorCode;
     152    if (!decoder->decode(errorCode))
     153        return false;
     154
    142155    String failingURL;
     156    if (!decoder->decode(failingURL))
     157        return false;
     158
    143159    String localizedDescription;
    144     if (!decoder->decode(CoreIPC::Out(domain, errorCode, failingURL, localizedDescription)))
     160    if (!decoder->decode(localizedDescription))
    145161        return false;
    146162
    147163#if USE(CFNETWORK)
    148     WebKit::PlatformCertificateInfo certificate;
     164    PlatformCertificateInfo certificate;
    149165    if (!decoder->decode(certificate))
    150166        return false;
     
    153169    if (!certificateChain.isEmpty()) {
    154170        ASSERT(certificateChain.size() == 1);
    155         resourceError = WebCore::ResourceError(domain, errorCode, failingURL, localizedDescription, WebCore::copyCertificateToData(certificateChain.first()).get());
     171        resourceError = ResourceError(domain, errorCode, failingURL, localizedDescription, copyCertificateToData(certificateChain.first()).get());
    156172        return true;
    157173    }
    158174#endif
    159175
    160     resourceError = WebCore::ResourceError(domain, errorCode, failingURL, localizedDescription);
     176    resourceError = ResourceError(domain, errorCode, failingURL, localizedDescription);
    161177    return true;
    162178}
Note: See TracChangeset for help on using the changeset viewer.