15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/command_line.h"
6868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "content/child/child_thread.h"
7868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "content/child/socket_stream_dispatcher.h"
8868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "content/child/webkitplatformsupport_impl.h"
968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#include "content/child/websocket_bridge.h"
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/common/content_client.h"
11c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace content {
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)WebKitPlatformSupportImpl::WebKitPlatformSupportImpl() {
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)WebKitPlatformSupportImpl::~WebKitPlatformSupportImpl() {
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
20a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)base::string16 WebKitPlatformSupportImpl::GetLocalizedString(int message_id) {
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return GetContentClient()->GetLocalizedString(message_id);
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)base::StringPiece WebKitPlatformSupportImpl::GetDataResource(
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    int resource_id,
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ui::ScaleFactor scale_factor) {
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return GetContentClient()->GetDataResource(resource_id, scale_factor);
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)webkit_glue::ResourceLoaderBridge*
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)WebKitPlatformSupportImpl::CreateResourceLoader(
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    const webkit_glue::ResourceLoaderBridge::RequestInfo& request_info) {
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  return ChildThread::current()->CreateBridge(request_info);
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)webkit_glue::WebSocketStreamHandleBridge*
3768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)WebKitPlatformSupportImpl::CreateWebSocketStreamBridge(
38f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    blink::WebSocketStreamHandle* handle,
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    webkit_glue::WebSocketStreamHandleDelegate* delegate) {
405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SocketStreamDispatcher* dispatcher =
415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ChildThread::current()->socket_stream_dispatcher();
425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  return dispatcher->CreateBridge(handle, delegate);
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
45f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)blink::WebSocketHandle* WebKitPlatformSupportImpl::createWebSocketHandle() {
4668043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)  return new WebSocketBridge;
4768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)}
4868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}  // namespace content
50