2 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 #ifndef TIZEN_APIS_CALL_CONVERTER_H_
19 #define TIZEN_APIS_CALL_CONVERTER_H_
24 #include <JavaScriptCore/JavaScript.h>
25 #include <CommonsJavaScript/Converter.h>
26 #include <API/Call/CallHistoryEntryProperties.h>
30 class Converter : public WrtDeviceApis::CommonsJavaScript::Converter
33 using WrtDeviceApis::CommonsJavaScript::Converter::toJSValueRef;
36 explicit Converter(JSContextRef context);
38 std::vector<unsigned long> toVectorOfULongs(const JSValueRef& arg);
40 Api::Call::CallHistoryEntryList toVectorOfCallHistoryEntryProperties(const JSValueRef& arg);
42 Api::Call::stringArrayPtr toCallHistoryEntryStringArray(const JSValueRef &jsValue);
44 Api::Call::CallHistoryEntryPropertiesPtr toCallHistoryEntryProperties(const JSValueRef &jsValue);
46 JSValueRef toJSValueRef(const Api::Call::CallHistoryEntryListPtr &arg, JSContextRef context);
48 JSValueRef toJSValueRef(const Api::Call::stringArrayPtr &arg, JSContextRef context);
51 bool initializeAllowedProperties();
52 static std::vector<std::string> m_allowedCallHistoryEntryProperties;
55 typedef WrtDeviceApis::CommonsJavaScript::ConverterFactory<Converter> ConverterFactory;
56 typedef ConverterFactory::ConverterType ConverterPtr;