OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef EXTENSIONS_COMMON_MANIFEST_HANDLERS_OAUTH2_MANIFEST_HANDLER_H_ | 5 #ifndef EXTENSIONS_COMMON_MANIFEST_HANDLERS_OAUTH2_MANIFEST_HANDLER_H_ |
6 #define EXTENSIONS_COMMON_MANIFEST_HANDLERS_OAUTH2_MANIFEST_HANDLER_H_ | 6 #define EXTENSIONS_COMMON_MANIFEST_HANDLERS_OAUTH2_MANIFEST_HANDLER_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "extensions/common/extension.h" | 12 #include "extensions/common/extension.h" |
13 #include "extensions/common/manifest_handler.h" | 13 #include "extensions/common/manifest_handler.h" |
14 | 14 |
15 namespace extensions { | 15 namespace extensions { |
16 | 16 |
17 // OAuth2 info included in the extension. | 17 // OAuth2 info included in the extension. |
18 struct OAuth2Info : public Extension::ManifestData { | 18 struct OAuth2Info : public Extension::ManifestData { |
19 OAuth2Info(); | 19 OAuth2Info(); |
20 virtual ~OAuth2Info(); | 20 ~OAuth2Info() override; |
21 | 21 |
22 std::string client_id; | 22 std::string client_id; |
23 std::vector<std::string> scopes; | 23 std::vector<std::string> scopes; |
24 | 24 |
25 // Indicates that approval UI can be skipped for a set of whitelisted apps. | 25 // Indicates that approval UI can be skipped for a set of whitelisted apps. |
26 bool auto_approve; | 26 bool auto_approve; |
27 | 27 |
28 static const OAuth2Info& GetOAuth2Info(const Extension* extension); | 28 static const OAuth2Info& GetOAuth2Info(const Extension* extension); |
29 }; | 29 }; |
30 | 30 |
31 // Parses the "oauth2" manifest key. | 31 // Parses the "oauth2" manifest key. |
32 class OAuth2ManifestHandler : public ManifestHandler { | 32 class OAuth2ManifestHandler : public ManifestHandler { |
33 public: | 33 public: |
34 OAuth2ManifestHandler(); | 34 OAuth2ManifestHandler(); |
35 virtual ~OAuth2ManifestHandler(); | 35 ~OAuth2ManifestHandler() override; |
36 | 36 |
37 virtual bool Parse(Extension* extension, | 37 bool Parse(Extension* extension, base::string16* error) override; |
38 base::string16* error) override; | |
39 | 38 |
40 private: | 39 private: |
41 virtual const std::vector<std::string> Keys() const override; | 40 const std::vector<std::string> Keys() const override; |
42 | 41 |
43 DISALLOW_COPY_AND_ASSIGN(OAuth2ManifestHandler); | 42 DISALLOW_COPY_AND_ASSIGN(OAuth2ManifestHandler); |
44 }; | 43 }; |
45 | 44 |
46 } // namespace extensions | 45 } // namespace extensions |
47 | 46 |
48 #endif // EXTENSIONS_COMMON_MANIFEST_HANDLERS_OAUTH2_MANIFEST_HANDLER_H_ | 47 #endif // EXTENSIONS_COMMON_MANIFEST_HANDLERS_OAUTH2_MANIFEST_HANDLER_H_ |
OLD | NEW |