Update change log and spec for wrt-plugins-tizen_0.4.12
[framework/web/wrt-plugins-tizen.git] / src / SecureStorage / plugin_config.cpp
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 #include <map>
19 #include <utility>
20 #include <Commons/FunctionDefinition.h>
21 #include <Commons/FunctionDeclaration.h>
22 #include <Commons/Exception.h>
23 #include "plugin_config.h"
24
25 #define SECURE_STORAGE_FEATURE_API_READ "http://tizen.org/privilege/securestorage.read"
26 #define SECURE_STORAGE_FEATURE_API_WRITE "http://tizen.org/privilege/securestorage.write"
27
28 #define SECURE_STORAGE_DEVICE_CAP_READ "securestorage.read"
29 #define SECURE_STORAGE_DEVICE_CAP_WRITE "securestorage.write"
30
31 namespace TizenApis {
32 namespace Tizen1_0 {
33
34 const char* SECURE_STORAGE_FUNC_READ = "SecureStroageReadFunc";
35 const char* SECURE_STORAGE_FUNC_WRITE = "SecureStroageWriteFunc";
36 const char* SECURE_STORAGE_FUNC_READWRITE = "SecureStroageReadWriteFunc";
37
38 static WrtDeviceApis::Commons::FunctionMapping createSecureStorageFunctions();
39
40 static WrtDeviceApis::Commons::FunctionMapping SecureStorageFunctions =
41     createSecureStorageFunctions();
42
43 DEFINE_FUNCTION_GETTER(SecureStorage, SecureStorageFunctions);
44
45 static WrtDeviceApis::Commons::FunctionMapping createSecureStorageFunctions()
46 {
47         using namespace WrtDeviceApis::Commons;
48
49         ACE_CREATE_DEVICE_CAP(DEVICE_CAP_SECURE_STORAGE_READ, SECURE_STORAGE_DEVICE_CAP_READ);
50         ACE_CREATE_DEVICE_CAP(DEVICE_CAP_SECURE_STORAGE_WRITE, SECURE_STORAGE_DEVICE_CAP_WRITE);
51
52
53         ACE_CREATE_DEVICE_CAPS_LIST(EMPTY_DEVICE_LIST);
54
55         ACE_CREATE_DEVICE_CAPS_LIST(DEVICE_LIST_SECURE_STORAGE_READ);
56         ACE_ADD_DEVICE_CAP(DEVICE_LIST_SECURE_STORAGE_READ, DEVICE_CAP_SECURE_STORAGE_READ);
57
58         ACE_CREATE_DEVICE_CAPS_LIST(DEVICE_LIST_SECURE_STORAGE_WRITE);
59         ACE_ADD_DEVICE_CAP(DEVICE_LIST_SECURE_STORAGE_WRITE, DEVICE_CAP_SECURE_STORAGE_WRITE);
60
61
62         ACE_CREATE_DEVICE_CAPS_LIST(DEVICE_LIST_SECURE_STORAGE_READWRITE);
63     ACE_ADD_DEVICE_CAP(DEVICE_LIST_SECURE_STORAGE_READWRITE, DEVICE_CAP_SECURE_STORAGE_READ);
64     ACE_ADD_DEVICE_CAP(DEVICE_LIST_SECURE_STORAGE_READWRITE, DEVICE_CAP_SECURE_STORAGE_WRITE);
65         
66
67         ACE_CREATE_FEATURE(FEATURE_READ, SECURE_STORAGE_FEATURE_API_READ);
68         ACE_CREATE_FEATURE(FEATURE_WRITE, SECURE_STORAGE_FEATURE_API_WRITE);
69
70         ACE_CREATE_FEATURE_LIST(SECURE_STORAGE_FEATURES_SECURE_READWRITE);
71         ACE_ADD_API_FEATURE(SECURE_STORAGE_FEATURES_SECURE_READWRITE, FEATURE_READ);
72         ACE_ADD_API_FEATURE(SECURE_STORAGE_FEATURES_SECURE_READWRITE, FEATURE_WRITE);
73         
74         ACE_CREATE_FEATURE_LIST(SECURE_STORAGE_FEATURES_READ);
75         ACE_ADD_API_FEATURE(SECURE_STORAGE_FEATURES_READ, FEATURE_READ);
76
77         ACE_CREATE_FEATURE_LIST(SECURE_STORAGE_FEATURES_WRITE);
78         ACE_ADD_API_FEATURE(SECURE_STORAGE_FEATURES_WRITE, FEATURE_WRITE);
79
80
81    FunctionMapping SecureStorageFunctions;
82
83         AceFunction secureStorageRead = ACE_CREATE_FUNCTION(
84             FUNCTION_SECURE_STORAGE_READ_FUNCTIONS,
85             SECURE_STORAGE_FUNC_READ,
86             SECURE_STORAGE_FEATURES_READ,
87             DEVICE_LIST_SECURE_STORAGE_READ);
88
89     SecureStorageFunctions.insert(std::make_pair(
90                                SECURE_STORAGE_FUNC_READ,
91                                secureStorageRead));
92
93         AceFunction secureStorageWrite = ACE_CREATE_FUNCTION(
94             FUNCTION_SECURE_STORAGE_WRITE_FUNCTIONS,
95             SECURE_STORAGE_FUNC_WRITE,
96             SECURE_STORAGE_FEATURES_WRITE,
97             DEVICE_LIST_SECURE_STORAGE_WRITE);
98
99     SecureStorageFunctions.insert(std::make_pair(
100                                SECURE_STORAGE_FUNC_WRITE,
101                                secureStorageWrite));
102         
103         AceFunction secureStorageReadWrite = ACE_CREATE_FUNCTION(
104             FUNCTION_SECURE_STORAGE_READWRITE_FUNCTIONS,
105             SECURE_STORAGE_FUNC_READWRITE,
106             SECURE_STORAGE_FEATURES_SECURE_READWRITE,
107             DEVICE_LIST_SECURE_STORAGE_READWRITE);
108
109     SecureStorageFunctions.insert(std::make_pair(
110                                SECURE_STORAGE_FUNC_READWRITE,
111                                secureStorageReadWrite));
112         
113         return SecureStorageFunctions;
114 }
115
116 }
117
118 #undef SECURE_STORAGE_FEATURE_API 
119 #undef SECURE_STORAGE_FEATURE_API_WRITE 
120 #undef SECURE_STORAGE_FEATURE_API_READ
121 #undef SECURE_STORAGE_DEVICE_CAP_WRITE 
122 #undef SECURE_STORAGE_DEVICE_CAP_READ
123