All Classes Functions Variables Typedefs Friends Pages
ILinkedAccountsManager.h
1 //------------------------------------------------------------------------------
2 //
3 // Copyright (c) 2013 Glympse Inc. All rights reserved.
4 //
5 //------------------------------------------------------------------------------
6 
7 #ifndef ILINKEDACCOUNTSMANAGER_H__GLYMPSE__
8 #define ILINKEDACCOUNTSMANAGER_H__GLYMPSE__
9 
10 namespace Glympse
11 {
12 
13 /*O*public**/ struct ILinkedAccountsManager : public IEventSink
14 {
21  public: virtual bool isSynced() = 0;
22 
37  public: virtual GEventSink confirm(const GString& type, const GPrimitive& profile) = 0;
38 
53  public: virtual GLinkedAccount link(const GString& type, const GPrimitive& profile) = 0;
54 
71  public: virtual GLinkedAccount link(const GString& type, const GPrimitive& profile, bool force) = 0;
72 
83  public: virtual GLinkedAccount unlink(const GString& type) = 0;
84 
99  public: virtual GLinkedAccount refresh(const GString& type, const GPrimitive& profile) = 0;
100 
110  public: virtual GPrimitive getAccountProperty(const GString& type, const GString& name) = 0;
111 
119  public: virtual void setAccountProperty(const GString& type, const GString& name, const GPrimitive& value) = 0;
120 
128  public: virtual GLinkedAccount getAccount(const GString& type) = 0;
129 
135  public: virtual GArray<GLinkedAccount>::ptr getAccounts() = 0;
136 
144  public: virtual int32 getCount(bool loginEnabled) = 0;
145 
154  public: virtual bool refresh() = 0;
155 
162  public: virtual bool canSend(const GInvite& invite) = 0;
163 };
164 
166 
167 }
168 
169 #endif // !ILINKEDACCOUNTSMANAGER_H__GLYMPSE__