21 #include <unity/scopes/CannedQuery.h>
22 #include <unity/scopes/PreviewWidget.h>
23 #include <unity/scopes/Result.h>
24 #include <unity/util/NonCopyable.h>
36 class OnlineAccountClientImpl;
41 class OnlineAccountClientTest;
93 std::string
const& service_type,
94 std::string
const& provider_name,
163 std::unique_ptr<internal::OnlineAccountClientImpl> p;
165 friend class testing::OnlineAccountClientTest;
A simple interface for integrating online accounts access and monitoring into scopes.
Definition: OnlineAccountClient.h:50
Simply return to the scope with no further action.
Definition: OnlineAccountClient.h:134
std::string client_secret
"ClientSecret" / "ConsumerSecret" OAuth (1 / 2) parameter.
Definition: OnlineAccountClient.h:66
std::string access_token
"AccessToken" OAuth parameter.
Definition: OnlineAccountClient.h:67
void set_service_update_callback(ServiceUpdateCallback callback)
Set the callback function to be invoked when a service status changes.
Definition: OnlineAccountClient.cpp:40
std::string error
Error message (empty if no error occurred).
Definition: OnlineAccountClient.h:69
The attributes of a result returned by a Scope.
Definition: Result.h:50
Definition: OnlineAccountClient.h:39
PostLoginAction
Indicates what action to take when the login process completes.
Definition: OnlineAccountClient.h:131
unsigned int account_id
A unique ID of the online account parenting this service.
Definition: OnlineAccountClient.h:62
std::string token_secret
"TokenSecret" OAuth parameter.
Definition: OnlineAccountClient.h:68
Top-level namespace for all things Unity-related.
Definition: Version.h:49
An external main loop already exists and is running.
Definition: OnlineAccountClient.h:80
Definition: ActionMetadata.h:31
MainLoopSelect
Indicates whether an external main loop already exists, or one should be created internally.
Definition: OnlineAccountClient.h:78
OnlineAccountClient(std::string const &service_name, std::string const &service_type, std::string const &provider_name, MainLoopSelect main_loop_select=CreateInternalMainLoop)
Create OnlineAccountClient for the specified account service.
Definition: OnlineAccountClient.cpp:28
An external main loop does not exist.
Definition: OnlineAccountClient.h:81
Parameters of a search query.
Definition: CannedQuery.h:49
void register_account_login_item(Result &result, CannedQuery const &query, PostLoginAction login_passed_action, PostLoginAction login_failed_action)
Register a result item that requires the user to be logged in.
Definition: OnlineAccountClient.cpp:55
bool service_enabled
True if this service is enabled.
Definition: OnlineAccountClient.h:63
std::function< void(ServiceStatus const &)> ServiceUpdateCallback
Function signature for the service update callback.
Definition: OnlineAccountClient.h:105
Invalidate the scope results.
Definition: OnlineAccountClient.h:135
An action unknown to the run-time was used.
Definition: OnlineAccountClient.h:133
Continue with regular result / widget activation.
Definition: OnlineAccountClient.h:136
bool service_authenticated
True if this service is authenticated.
Definition: OnlineAccountClient.h:64
void refresh_service_statuses()
Refresh all service statuses.
Definition: OnlineAccountClient.cpp:45
A container for details about a service's status and authorization parameters.
Definition: OnlineAccountClient.h:60
Dummy end marker.
Definition: OnlineAccountClient.h:137
std::string client_id
"ConsumerKey" / "ClientId" OAuth (1 / 2) parameter.
Definition: OnlineAccountClient.h:65
std::vector< ServiceStatus > get_service_statuses()
Get statuses for all services matching the name, type and provider specified on construction.
Definition: OnlineAccountClient.cpp:50