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.
5 #include "extensions/common/api/bluetooth/bluetooth_manifest_data.h"
7 #include "extensions/common/api/bluetooth/bluetooth_manifest_permission.h"
8 #include "extensions/common/manifest_constants.h"
10 namespace extensions
{
12 BluetoothManifestData::BluetoothManifestData(
13 scoped_ptr
<BluetoothManifestPermission
> permission
)
14 : permission_(permission
.Pass()) {
18 BluetoothManifestData::~BluetoothManifestData() {}
21 BluetoothManifestData
* BluetoothManifestData::Get(const Extension
* extension
) {
22 return static_cast<BluetoothManifestData
*>(
23 extension
->GetManifestData(manifest_keys::kBluetooth
));
27 bool BluetoothManifestData::CheckRequest(
28 const Extension
* extension
,
29 const BluetoothPermissionRequest
& request
) {
30 const BluetoothManifestData
* data
= BluetoothManifestData::Get(extension
);
31 return data
&& data
->permission()->CheckRequest(extension
, request
);
35 bool BluetoothManifestData::CheckSocketPermitted(
36 const Extension
* extension
) {
37 const BluetoothManifestData
* data
= BluetoothManifestData::Get(extension
);
38 return data
&& data
->permission()->CheckSocketPermitted(extension
);
42 bool BluetoothManifestData::CheckLowEnergyPermitted(
43 const Extension
* extension
) {
44 const BluetoothManifestData
* data
= BluetoothManifestData::Get(extension
);
45 return data
&& data
->permission()->CheckLowEnergyPermitted(extension
);
49 scoped_ptr
<BluetoothManifestData
> BluetoothManifestData::FromValue(
50 const base::Value
& value
,
51 base::string16
* error
) {
52 scoped_ptr
<BluetoothManifestPermission
> permission
=
53 BluetoothManifestPermission::FromValue(value
, error
);
55 return scoped_ptr
<BluetoothManifestData
>();
57 return scoped_ptr
<BluetoothManifestData
>(
58 new BluetoothManifestData(permission
.Pass())).Pass();
61 BluetoothPermissionRequest::BluetoothPermissionRequest(
62 const std::string
& uuid
)
65 BluetoothPermissionRequest::~BluetoothPermissionRequest() {}
67 } // namespace extensions