1// Copyright 2014 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#include "extensions/browser/api/bluetooth_low_energy/bluetooth_low_energy_notify_session.h"
6
7#include "base/lazy_instance.h"
8
9namespace extensions {
10
11static base::LazyInstance<BrowserContextKeyedAPIFactory<
12    ApiResourceManager<BluetoothLowEnergyNotifySession> > > g_factory =
13    LAZY_INSTANCE_INITIALIZER;
14
15template <>
16BrowserContextKeyedAPIFactory<
17    ApiResourceManager<BluetoothLowEnergyNotifySession> >*
18ApiResourceManager<BluetoothLowEnergyNotifySession>::GetFactoryInstance() {
19  return g_factory.Pointer();
20}
21
22BluetoothLowEnergyNotifySession::BluetoothLowEnergyNotifySession(
23    bool persistent,
24    const std::string& owner_extension_id,
25    scoped_ptr<device::BluetoothGattNotifySession> session)
26    : ApiResource(owner_extension_id),
27      persistent_(persistent),
28      session_(session.release()) {
29}
30
31BluetoothLowEnergyNotifySession::~BluetoothLowEnergyNotifySession() {
32}
33
34device::BluetoothGattNotifySession*
35BluetoothLowEnergyNotifySession::GetSession() const {
36  return session_.get();
37}
38
39bool BluetoothLowEnergyNotifySession::IsPersistent() const {
40  return persistent_;
41}
42
43}  // namespace extensions
44