merge with master
[apps/osp/Internet.git] / src / IntInternetEntry.cpp
1 //\r
2 \r
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.\r
4 //\r
5 // Licensed under the Flora License, Version 1.0 (the License);\r
6 // you may not use this file except in compliance with the License.\r
7 // You may obtain a copy of the License at\r
8 //\r
9 //     http://floralicense.org/license/\r
10 //\r
11 // Unless required by applicable law or agreed to in writing, software\r
12 // distributed under the License is distributed on an AS IS BASIS,\r
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
14 // See the License for the specific language governing permissions and\r
15 // limitations under the License.\r
16 //\r
17 \r
18 /**\r
19  * This file contains the Tizen application entry point.\r
20  */\r
21 #include "IntInternetApp.h"\r
22 \r
23 using namespace Tizen::Base;\r
24 using namespace Tizen::Base::Collection;\r
25 \r
26 #ifdef __cplusplus\r
27 extern "C"\r
28 {\r
29 #endif // __cplusplus\r
30 \r
31 _EXPORT_ int OspMain(int argc, char* pArgv[]);\r
32 #ifdef _PROFILE\r
33 extern void start_profile(void);\r
34 extern void end_profile(void);\r
35 #else\r
36 #define start_profile()\r
37 #define end_profile()\r
38 #endif\r
39 \r
40 /**\r
41  * The entry function of Tizen application called by the operating system.\r
42  */\r
43 int\r
44 OspMain(int argc, char* pArgv[])\r
45 {\r
46         result r = E_SUCCESS;\r
47 \r
48         AppLogDebug("Application started.");\r
49         ArrayList* pArgs = new(std::nothrow) ArrayList();\r
50         pArgs->Construct();\r
51         for (int i = 0; i < argc; i++)\r
52                 pArgs->Add(*(new(std::nothrow) String(pArgv[i])));\r
53 \r
54         start_profile();\r
55         r = Tizen::App::UiApp::Execute(InternetApp::CreateInstance, pArgs);\r
56         if (IsFailed(r))\r
57         {\r
58                 AppLogException("Application execution failed-[%s].", GetErrorMessage(r));\r
59                 r &= 0x0000FFFF;\r
60         }\r
61         end_profile();\r
62 \r
63         pArgs->RemoveAll(true);\r
64         delete pArgs;\r
65         pArgs = null;\r
66         AppLogDebug("Application finished.");\r
67 \r
68         return static_cast< int >(r);\r
69 }\r
70 #ifdef __cplusplus\r
71 }\r
72 #endif // __cplusplus\r