12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/test/chromedriver/chrome/chrome_android_impl.h"
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
7868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "chrome/test/chromedriver/chrome/device_manager.h"
85f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#include "chrome/test/chromedriver/chrome/devtools_client.h"
9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/test/chromedriver/chrome/devtools_http_client.h"
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/test/chromedriver/chrome/status.h"
1168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#include "chrome/test/chromedriver/net/port_server.h"
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)ChromeAndroidImpl::ChromeAndroidImpl(
145f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    scoped_ptr<DevToolsHttpClient> http_client,
155f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    scoped_ptr<DevToolsClient> websocket_client,
1690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    ScopedVector<DevToolsEventListener>& devtools_event_listeners,
1768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)    scoped_ptr<PortReservation> port_reservation,
1858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    scoped_ptr<Device> device)
195f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    : ChromeImpl(http_client.Pass(),
205f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)                 websocket_client.Pass(),
2168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                 devtools_event_listeners,
2268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                 port_reservation.Pass()),
23868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      device_(device.Pass()) {}
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)ChromeAndroidImpl::~ChromeAndroidImpl() {}
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)std::string ChromeAndroidImpl::GetOperatingSystemName() {
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return "ANDROID";
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
3168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)Status ChromeAndroidImpl::QuitImpl() {
32a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  return device_->TearDown();
332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
35