2be836ed49d63a290cf367ffa28a384af5a0ab31
[profile/ivi/wrt-plugins-tizen.git] / src / platform / Tizen / Account / AccountManager.h
1 /*
2  * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17
18 /**
19  * @file        AccountManager.h
20  * @author      Jihwa Park (jh7979.park@samsung.com)
21  * @author      Sangtai Kim
22  * @version     0.1
23  */
24
25 #ifndef _TIZEN__ACCOUNTMANAGER_H_
26 #define _TIZEN__ACCOUNTMANAGER_H_
27
28 #include <vector>
29 #include <list>
30 #include <dpl/mutex.h>
31 #include "AccountService.h"
32 #include "API/Account/IAccountManager.h"
33
34 //using namespace TizenApis::Api::Account;
35 //using namespace WrtDeviceApis::Commons;
36 //using namespace WrtDeviceApis::CommonsJavaScript;
37
38 namespace TizenApis {
39 namespace Platform {
40 namespace Account{
41 class AccountManager : public IAccountManager
42 {
43         public:
44                 AccountManager();
45                 virtual ~AccountManager();
46
47         protected:
48                 virtual void OnRequestReceived(const IEventGetAccountServicesPtr &event);
49                 virtual void OnRequestReceived(const IEventAddAccountPtr &event);
50                 virtual void OnRequestReceived(const IEventDeleteAccountPtr &event);
51                 virtual void OnRequestReceived(const IEventFindAccountsPtr &account);
52                 virtual void OnRequestReceived(const IEventUpdateAccountPtr &account);
53                 virtual void OnRequestReceived(const IEventGetAccountByIdPtr &account);
54                 virtual void OnRequestReceived(const IEventGetServiceTypeByIdPtr &account);
55                 virtual void OnRequestReceived(const IEventGetProviderByIdPtr &account);
56                 virtual void OnRequestReceived(const IEventFindProvidersPtr &account);
57                 virtual void OnRequestReceived(const IEventFindServiceTypesPtr &event);
58
59
60         private:
61                 static int m_instanceCount;
62                 DPL::Mutex m_constructorMutex;
63 };
64
65 }
66 }
67 }
68 #endif