tizen 2.3.1 release
[framework/web/wearable/wrt-plugins-tizen.git] / src / Common / JSStringRefWrapper.h
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 #ifndef _JS_STRING_REF_WRAPPER_H_
19 #define _JS_STRING_REF_WRAPPER_H_
20
21 #include <string>
22 #include <JavaScriptCore/JavaScript.h>
23
24 namespace DeviceAPI {
25 namespace Common {
26
27 class JSStringRefWrapper
28 {
29 public:
30         JSStringRefWrapper(JSStringRefWrapper &obj);
31         JSStringRefWrapper(JSStringRef ref);
32         JSStringRefWrapper(const std::string str);
33         JSStringRefWrapper(const char * str);
34         virtual ~JSStringRefWrapper();
35
36         JSStringRefWrapper & operator=(const JSStringRefWrapper &obj);
37
38         JSStringRef get() const;
39
40 private:
41         JSStringRef m_ref;
42 };
43
44 } // Common
45 } // DeviceAPI
46
47 #endif // _JS_STRING_REF_WRAPPER_H_