Update change log and spec for wrt-plugins-tizen_0.4.49
[framework/web/wrt-plugins-tizen.git] / src / Contact / ContactFilterValidator.cpp
1 //
2 // Tizen Web Device API
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 // http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 /**
19  * @file        ContactFilterValidator.cpp
20  * @author      Kisub Song (kisubs.song@samsung.com)
21  * @version     0.1
22  * @brief
23  */
24
25 #include "ContactFilterValidator.h"
26
27 namespace DeviceAPI {
28 namespace Contact {
29
30 using namespace DeviceAPI::Tizen;
31
32 static PropertyStructArray properties =
33 {
34                 {"id",                      PrimitiveType_String},
35                 {"personId",                PrimitiveType_String},
36                 {"addressBookId",           PrimitiveType_String},
37                 {"lastUpdated",             PrimitiveType_Time},
38                 {"isFavorite",              PrimitiveType_Boolean},
39                 {"name.prefix",             PrimitiveType_String},
40                 {"name.suffix",             PrimitiveType_String},
41                 {"name.firstName",          PrimitiveType_String},
42                 {"name.middleName",         PrimitiveType_String},
43                 {"name.lastName",           PrimitiveType_String},
44                 {"name.nicknames",          PrimitiveType_String},
45                 {"name.phoneticFirstName",  PrimitiveType_String},
46                 {"name.phoneticMiddleName", PrimitiveType_String},
47                 {"name.phoneticLastName",   PrimitiveType_String},
48                 {"name.displayName",        PrimitiveType_String},
49                 {"addresses.country",       PrimitiveType_String},
50                 {"addresses.region",        PrimitiveType_String},
51                 {"addresses.city",          PrimitiveType_String},
52                 {"addresses.streetAddress", PrimitiveType_String},
53                 {"addresses.additionalInformation",     PrimitiveType_String},
54                 {"addresses.postalCode",    PrimitiveType_String},
55                 {"addresses.isDefault",     PrimitiveType_Boolean},
56                 {"addresses.types",         PrimitiveType_String},
57                 {"photoURI",                PrimitiveType_String},
58                 {"phoneNumbers.number",     PrimitiveType_String},
59                 {"phoneNumbers.isDefault",  PrimitiveType_Boolean},
60                 {"phoneNumbers.types",      PrimitiveType_String},
61                 {"emails.email",            PrimitiveType_String},
62                 {"emails.isDefault",        PrimitiveType_Boolean},
63                 {"emails.types",            PrimitiveType_String},
64                 {"birthday",                PrimitiveType_Time},
65                 {"anniversaries.date",      PrimitiveType_Time},
66                 {"anniversaries.label",     PrimitiveType_String},
67                 {"organizations.name",      PrimitiveType_String},
68                 {"organizations.department",PrimitiveType_String},
69                 {"organizations.title",     PrimitiveType_String},
70                 {"organizations.role",      PrimitiveType_String},
71                 {"organizations.logoURI",   PrimitiveType_String},
72                 {"organizations.assistant",    PrimitiveType_String },
73                 {"organizations.location",     PrimitiveType_String },
74                 {"organizations.description",  PrimitiveType_String },
75                 {"organizations.phoneticName", PrimitiveType_String },
76                 {"organizations.type",         PrimitiveType_String },
77                 {"notes",                   PrimitiveType_String},
78                 {"urls.url",                            PrimitiveType_String},
79                 {"urls.type",                           PrimitiveType_String},
80                 {"ringtoneURI",                         PrimitiveType_String},
81                 {"groupIds",                            PrimitiveType_String},
82                 {0,     PrimitiveType_NoType}
83 };
84
85 FilterValidatorPtr ContactFilterValidatorFactory::getContactFilterValidator()
86 {
87     static FilterValidatorPtr theInstance =
88                 FilterValidatorPtr(new FilterValidator(properties));
89     return theInstance;
90 }
91
92 } // Contact
93 } // DeviceAPI