OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 #include "chrome/browser/extensions/api/passwords_private/passwords_private_api.
h" | 5 #include "chrome/browser/extensions/api/passwords_private/passwords_private_api.
h" |
6 | 6 |
7 #include "base/values.h" | 7 #include "base/values.h" |
8 #include "chrome/browser/extensions/api/passwords_private/passwords_private_dele
gate_factory.h" | 8 #include "chrome/browser/extensions/api/passwords_private/passwords_private_dele
gate_factory.h" |
9 #include "chrome/common/extensions/api/passwords_private.h" | 9 #include "chrome/common/extensions/api/passwords_private.h" |
10 #include "components/password_manager/core/common/experiments.h" | 10 #include "components/password_manager/core/common/experiments.h" |
11 #include "content/public/browser/web_contents.h" | 11 #include "content/public/browser/web_contents.h" |
12 #include "extensions/browser/extension_function_registry.h" | 12 #include "extensions/browser/extension_function_registry.h" |
13 | 13 |
14 namespace extensions { | 14 namespace extensions { |
15 | 15 |
16 //////////////////////////////////////////////////////////////////////////////// | 16 //////////////////////////////////////////////////////////////////////////////// |
17 // PasswordsPrivateRemoveSavedPasswordFunction | 17 // PasswordsPrivateRemoveSavedPasswordFunction |
18 | 18 |
19 PasswordsPrivateRemoveSavedPasswordFunction:: | 19 PasswordsPrivateRemoveSavedPasswordFunction:: |
20 ~PasswordsPrivateRemoveSavedPasswordFunction() {} | 20 ~PasswordsPrivateRemoveSavedPasswordFunction() {} |
21 | 21 |
22 ExtensionFunction::ResponseAction | 22 ExtensionFunction::ResponseAction |
23 PasswordsPrivateRemoveSavedPasswordFunction::Run() { | 23 PasswordsPrivateRemoveSavedPasswordFunction::Run() { |
24 scoped_ptr<api::passwords_private::RemoveSavedPassword::Params> | 24 std::unique_ptr<api::passwords_private::RemoveSavedPassword::Params> |
25 parameters = api::passwords_private::RemoveSavedPassword::Params:: | 25 parameters = |
26 Create(*args_); | 26 api::passwords_private::RemoveSavedPassword::Params::Create(*args_); |
27 EXTENSION_FUNCTION_VALIDATE(parameters.get()); | 27 EXTENSION_FUNCTION_VALIDATE(parameters.get()); |
28 | 28 |
29 PasswordsPrivateDelegate* delegate = | 29 PasswordsPrivateDelegate* delegate = |
30 PasswordsPrivateDelegateFactory::GetForBrowserContext(browser_context(), | 30 PasswordsPrivateDelegateFactory::GetForBrowserContext(browser_context(), |
31 true /* create */); | 31 true /* create */); |
32 delegate->RemoveSavedPassword( | 32 delegate->RemoveSavedPassword( |
33 parameters->login_pair.origin_url, | 33 parameters->login_pair.origin_url, |
34 parameters->login_pair.username); | 34 parameters->login_pair.username); |
35 | 35 |
36 return RespondNow(NoArguments()); | 36 return RespondNow(NoArguments()); |
37 } | 37 } |
38 | 38 |
39 //////////////////////////////////////////////////////////////////////////////// | 39 //////////////////////////////////////////////////////////////////////////////// |
40 // PasswordsPrivateRemovePasswordExceptionFunction | 40 // PasswordsPrivateRemovePasswordExceptionFunction |
41 | 41 |
42 PasswordsPrivateRemovePasswordExceptionFunction:: | 42 PasswordsPrivateRemovePasswordExceptionFunction:: |
43 ~PasswordsPrivateRemovePasswordExceptionFunction() {} | 43 ~PasswordsPrivateRemovePasswordExceptionFunction() {} |
44 | 44 |
45 ExtensionFunction::ResponseAction | 45 ExtensionFunction::ResponseAction |
46 PasswordsPrivateRemovePasswordExceptionFunction::Run() { | 46 PasswordsPrivateRemovePasswordExceptionFunction::Run() { |
47 scoped_ptr<api::passwords_private::RemovePasswordException::Params> | 47 std::unique_ptr<api::passwords_private::RemovePasswordException::Params> |
48 parameters = api::passwords_private::RemovePasswordException:: | 48 parameters = |
49 Params::Create(*args_); | 49 api::passwords_private::RemovePasswordException::Params::Create( |
| 50 *args_); |
50 EXTENSION_FUNCTION_VALIDATE(parameters.get()); | 51 EXTENSION_FUNCTION_VALIDATE(parameters.get()); |
51 | 52 |
52 PasswordsPrivateDelegate* delegate = | 53 PasswordsPrivateDelegate* delegate = |
53 PasswordsPrivateDelegateFactory::GetForBrowserContext(browser_context(), | 54 PasswordsPrivateDelegateFactory::GetForBrowserContext(browser_context(), |
54 true /* create */); | 55 true /* create */); |
55 delegate->RemovePasswordException(parameters->exception_url); | 56 delegate->RemovePasswordException(parameters->exception_url); |
56 | 57 |
57 return RespondNow(NoArguments()); | 58 return RespondNow(NoArguments()); |
58 } | 59 } |
59 | 60 |
60 //////////////////////////////////////////////////////////////////////////////// | 61 //////////////////////////////////////////////////////////////////////////////// |
61 // PasswordsPrivateRequestPlaintextPasswordFunction | 62 // PasswordsPrivateRequestPlaintextPasswordFunction |
62 | 63 |
63 PasswordsPrivateRequestPlaintextPasswordFunction:: | 64 PasswordsPrivateRequestPlaintextPasswordFunction:: |
64 ~PasswordsPrivateRequestPlaintextPasswordFunction() {} | 65 ~PasswordsPrivateRequestPlaintextPasswordFunction() {} |
65 | 66 |
66 ExtensionFunction::ResponseAction | 67 ExtensionFunction::ResponseAction |
67 PasswordsPrivateRequestPlaintextPasswordFunction::Run() { | 68 PasswordsPrivateRequestPlaintextPasswordFunction::Run() { |
68 scoped_ptr<api::passwords_private::RequestPlaintextPassword::Params> | 69 std::unique_ptr<api::passwords_private::RequestPlaintextPassword::Params> |
69 parameters = api::passwords_private::RequestPlaintextPassword::Params:: | 70 parameters = |
70 Create(*args_); | 71 api::passwords_private::RequestPlaintextPassword::Params::Create( |
| 72 *args_); |
71 EXTENSION_FUNCTION_VALIDATE(parameters.get()); | 73 EXTENSION_FUNCTION_VALIDATE(parameters.get()); |
72 | 74 |
73 PasswordsPrivateDelegate* delegate = | 75 PasswordsPrivateDelegate* delegate = |
74 PasswordsPrivateDelegateFactory::GetForBrowserContext(browser_context(), | 76 PasswordsPrivateDelegateFactory::GetForBrowserContext(browser_context(), |
75 true /* create */); | 77 true /* create */); |
76 | 78 |
77 delegate->RequestShowPassword(parameters->login_pair.origin_url, | 79 delegate->RequestShowPassword(parameters->login_pair.origin_url, |
78 parameters->login_pair.username, | 80 parameters->login_pair.username, |
79 GetSenderWebContents()); | 81 GetSenderWebContents()); |
80 | 82 |
81 // No response given from this API function; instead, listeners wait for the | 83 // No response given from this API function; instead, listeners wait for the |
82 // chrome.passwordsPrivate.onPlaintextPasswordRetrieved event to fire. | 84 // chrome.passwordsPrivate.onPlaintextPasswordRetrieved event to fire. |
83 return RespondNow(NoArguments()); | 85 return RespondNow(NoArguments()); |
84 } | 86 } |
85 | 87 |
86 } // namespace extensions | 88 } // namespace extensions |
OLD | NEW |