OLD | NEW |
(Empty) | |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #ifndef FetchAPIRequestStructTraits_h |
| 6 #define FetchAPIRequestStructTraits_h |
| 7 |
| 8 #include "public/platform/WebURLRequest.h" |
| 9 #include "public/platform/modules/fetch/fetch_api_request.mojom-blink.h" |
| 10 #include "wtf/text/WTFString.h" |
| 11 |
| 12 namespace blink { |
| 13 class KURL; |
| 14 } |
| 15 |
| 16 namespace mojo { |
| 17 |
| 18 template <> |
| 19 struct EnumTraits<blink::mojom::FetchCredentialsMode, |
| 20 blink::WebURLRequest::FetchCredentialsMode> { |
| 21 static blink::mojom::FetchCredentialsMode ToMojom( |
| 22 blink::WebURLRequest::FetchCredentialsMode input); |
| 23 |
| 24 static bool FromMojom(blink::mojom::FetchCredentialsMode input, |
| 25 blink::WebURLRequest::FetchCredentialsMode* out); |
| 26 }; |
| 27 |
| 28 template <> |
| 29 struct EnumTraits<blink::mojom::FetchRedirectMode, |
| 30 blink::WebURLRequest::FetchRedirectMode> { |
| 31 static blink::mojom::FetchRedirectMode ToMojom( |
| 32 blink::WebURLRequest::FetchRedirectMode input); |
| 33 |
| 34 static bool FromMojom(blink::mojom::FetchRedirectMode input, |
| 35 blink::WebURLRequest::FetchRedirectMode* out); |
| 36 }; |
| 37 |
| 38 template <> |
| 39 struct EnumTraits<blink::mojom::FetchRequestMode, |
| 40 blink::WebURLRequest::FetchRequestMode> { |
| 41 static blink::mojom::FetchRequestMode ToMojom( |
| 42 blink::WebURLRequest::FetchRequestMode input); |
| 43 |
| 44 static bool FromMojom(blink::mojom::FetchRequestMode input, |
| 45 blink::WebURLRequest::FetchRequestMode* out); |
| 46 }; |
| 47 |
| 48 template <> |
| 49 struct EnumTraits<blink::mojom::RequestContextFrameType, |
| 50 blink::WebURLRequest::FrameType> { |
| 51 static blink::mojom::RequestContextFrameType ToMojom( |
| 52 blink::WebURLRequest::FrameType input); |
| 53 |
| 54 static bool FromMojom(blink::mojom::RequestContextFrameType input, |
| 55 blink::WebURLRequest::FrameType* out); |
| 56 }; |
| 57 |
| 58 template <> |
| 59 struct EnumTraits<blink::mojom::RequestContextType, |
| 60 blink::WebURLRequest::RequestContext> { |
| 61 static blink::mojom::RequestContextType ToMojom( |
| 62 blink::WebURLRequest::RequestContext input); |
| 63 |
| 64 static bool FromMojom(blink::mojom::RequestContextType input, |
| 65 blink::WebURLRequest::RequestContext* out); |
| 66 }; |
| 67 |
| 68 template <> |
| 69 struct StructTraits<blink::mojom::FetchAPIRequestDataView, |
| 70 blink::WebServiceWorkerRequest> { |
| 71 static void* SetUpContext(const blink::WebServiceWorkerRequest&); |
| 72 static void TearDownContext(const blink::WebServiceWorkerRequest&, |
| 73 void* context); |
| 74 |
| 75 static blink::WebURLRequest::FetchRequestMode mode( |
| 76 const blink::WebServiceWorkerRequest& request) { |
| 77 return request.mode(); |
| 78 } |
| 79 |
| 80 static bool is_main_resource_load( |
| 81 const blink::WebServiceWorkerRequest& request) { |
| 82 return request.isMainResourceLoad(); |
| 83 } |
| 84 |
| 85 static blink::WebURLRequest::RequestContext request_context_type( |
| 86 const blink::WebServiceWorkerRequest& request) { |
| 87 return request.requestContext(); |
| 88 } |
| 89 |
| 90 static blink::WebURLRequest::FrameType frame_type( |
| 91 const blink::WebServiceWorkerRequest& request) { |
| 92 return request.frameType(); |
| 93 } |
| 94 |
| 95 static blink::KURL url(const blink::WebServiceWorkerRequest&); |
| 96 |
| 97 static WTF::String method(const blink::WebServiceWorkerRequest&); |
| 98 |
| 99 static const WTF::HashMap<WTF::String, WTF::String>& headers( |
| 100 const blink::WebServiceWorkerRequest&, |
| 101 void* context); |
| 102 |
| 103 static WTF::String blob_uuid(const blink::WebServiceWorkerRequest&); |
| 104 |
| 105 static uint64_t blob_size(const blink::WebServiceWorkerRequest&); |
| 106 |
| 107 static const blink::Referrer& referrer(const blink::WebServiceWorkerRequest&); |
| 108 |
| 109 static blink::WebURLRequest::FetchCredentialsMode credentials_mode( |
| 110 const blink::WebServiceWorkerRequest& request) { |
| 111 return request.credentialsMode(); |
| 112 } |
| 113 |
| 114 static blink::WebURLRequest::FetchRedirectMode redirect_mode( |
| 115 const blink::WebServiceWorkerRequest& request) { |
| 116 return request.redirectMode(); |
| 117 } |
| 118 |
| 119 static WTF::String client_id(const blink::WebServiceWorkerRequest&); |
| 120 |
| 121 static bool is_reload(const blink::WebServiceWorkerRequest& request) { |
| 122 return request.isReload(); |
| 123 } |
| 124 |
| 125 // The |fetch_type| is not used by Blink yet. |
| 126 static blink::mojom::blink::ServiceWorkerFetchType fetch_type( |
| 127 const blink::WebServiceWorkerRequest& request) { |
| 128 return blink::mojom::blink::ServiceWorkerFetchType::FETCH; |
| 129 } |
| 130 |
| 131 static bool Read(blink::mojom::FetchAPIRequestDataView, |
| 132 blink::WebServiceWorkerRequest* output); |
| 133 }; |
| 134 |
| 135 } // namespace mojo |
| 136 |
| 137 #endif // FetchAPIRequestStructTraits_h |
OLD | NEW |