sync with tizen_2.0
[platform/framework/native/appfw.git] / src / system / FSys_EnvironmentImpl.cpp
1 //
2 // Open Service Platform
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        FSys_EnvironmentImpl.cpp
20  * @brief       This is the implementation file for %_EnvironmentImpl class.
21  */
22
23 #include <FBaseSysLog.h>
24
25 #include "FSys_EnvironmentImpl.h"
26
27 using namespace Tizen::Base;
28
29 namespace Tizen { namespace System
30 {
31
32 static const wchar_t _MEDIA_PATH[] = L"/opt/usr/media/";
33 static const wchar_t _MEDIA_IMAGES_PATH[] = L"/opt/usr/media/Images/";
34 static const wchar_t _MEDIA_SOUNDS_PATH[] = L"/opt/usr/media/Sounds/";
35 static const wchar_t _MEDIA_VIDEOS_PATH[] = L"/opt/usr/media/Videos/";
36 static const wchar_t _MEDIA_CAMERA_PATH[] = L"/opt/usr/media/Camera/";
37 static const wchar_t _MEDIA_DOWNLOADS_PATH[] = L"/opt/usr/media/Downloads/";
38 static const wchar_t _MEDIA_OTHERS_PATH[] = L"/opt/usr/media/Others/";
39
40 static const wchar_t _EXTERNAL_MMC_PATH[] = L"/opt/storage/sdcard/";
41 static const wchar_t _EXTERNAL_MMC_IMAGES_PATH[] = L"/opt/storage/sdcard/Images/";
42 static const wchar_t _EXTERNAL_MMC_SOUNDS_PATH[] = L"/opt/storage/sdcard/Sounds/";
43 static const wchar_t _EXTERNAL_MMC_VIDEOS_PATH[] = L"/opt/storage/sdcard/Videos/";
44 static const wchar_t _EXTERNAL_MMC_CAMERA_PATH[] = L"/opt/storage/sdcard/Camera/";
45 static const wchar_t _EXTERNAL_MMC_DOWNLOADS_PATH[] = L"/opt/storage/sdcard/Downloads/";
46 static const wchar_t _EXTERNAL_MMC_OTHERS_PATH[] = L"/opt/storage/sdcard/Others/";
47
48 static const wchar_t _APPLICATIONS_PATH[] = L"/opt/usr/apps/";
49 static const wchar_t _EXTERNAL_APPLICATIONS_PATH[] = L"/opt/storage/sdcard/app2sd/";
50
51 static const wchar_t _COMPAT_SHARED_PATH[] = L"/opt/usr/share/.osp-compat/";
52
53 _EnvironmentImpl::_EnvironmentImpl(void)
54 {
55 }
56
57 _EnvironmentImpl::~_EnvironmentImpl(void)
58 {
59 }
60
61 String
62 _EnvironmentImpl::GetMediaPath(void)
63 {
64         static String mediaPath(_MEDIA_PATH);
65     return mediaPath;
66 }
67
68 String
69 _EnvironmentImpl::GetDefaultDownloadPath(void)
70 {
71         static String downloadPath(_MEDIA_DOWNLOADS_PATH);
72     return downloadPath;
73 }
74
75 String
76 _EnvironmentImpl::GetExternalStoragePath(void)
77 {
78         static String externalStoragePath(_EXTERNAL_MMC_PATH);
79         return externalStoragePath;
80 }
81
82 String
83 _EnvironmentImpl::GetOspCompatSharedPath(void)
84 {
85         static String ospCompatSharedPath(_COMPAT_SHARED_PATH);
86         return ospCompatSharedPath;
87 }
88
89 String
90 _EnvironmentImpl::GetPredefinedPath(PredefinedDirectoryType dirType)
91 {
92         switch (dirType)
93         {
94                 case PREDEFINED_DIRECTORY_IMAGES:
95                 {
96                          String path(_MEDIA_IMAGES_PATH);
97                         return path;
98                 }
99                 case PREDEFINED_DIRECTORY_SOUNDS:
100                 {
101                         static String path(_MEDIA_SOUNDS_PATH);
102                         return path;
103                 }
104                 case PREDEFINED_DIRECTORY_VIDEOS:
105                 {
106                         static String path(_MEDIA_VIDEOS_PATH);
107                         return path;
108                 }
109                 case PREDEFINED_DIRECTORY_CAMERA:
110                 {
111                         static String path(_MEDIA_CAMERA_PATH);
112                         return path;
113                 }
114                 case PREDEFINED_DIRECTORY_DOWNLOADS:
115                 {
116                         static String path(_MEDIA_DOWNLOADS_PATH);
117                         return path;
118                 }
119                 case PREDEFINED_DIRECTORY_OTHERS:
120                 {
121                         static String path(_MEDIA_OTHERS_PATH);
122                         return path;
123                 }
124                 case PREDEFINED_DIRECTORY_EXTERNAL_IMAGES:
125                 {
126                         static String path(_EXTERNAL_MMC_IMAGES_PATH);
127                         return path;
128                 }
129                 case PREDEFINED_DIRECTORY_EXTERNAL_SOUNDS:
130                 {
131                         static String path(_EXTERNAL_MMC_SOUNDS_PATH);
132                         return path;
133                 }
134                 case PREDEFINED_DIRECTORY_EXTERNAL_VIDEOS:
135                 {
136                         static String path(_EXTERNAL_MMC_VIDEOS_PATH);
137                         return path;
138                 }
139                 case PREDEFINED_DIRECTORY_EXTERNAL_CAMERA:
140                 {
141                         static String path(_EXTERNAL_MMC_CAMERA_PATH);
142                         return path;
143                 }
144                 case PREDEFINED_DIRECTORY_EXTERNAL_DOWNLOADS:
145                 {
146                         static String path(_EXTERNAL_MMC_DOWNLOADS_PATH);
147                         return path;
148                 }
149                 case PREDEFINED_DIRECTORY_EXTERNAL_OTHERS:
150                 {
151                         static String path(_EXTERNAL_MMC_OTHERS_PATH);
152                         return path;
153                 }
154                 case PREDEFINED_DIRECTORY_APPLICATIONS:
155                 {
156                         static String path(_APPLICATIONS_PATH);
157                         return path;
158                 }
159                 case PREDEFINED_DIRECTORY_EXTERNAL_APPLICATIONS:
160                 {
161                         static String path(_EXTERNAL_APPLICATIONS_PATH);
162                         return path;
163                 }
164                 default:
165                         return String(L"");
166         }
167 }
168
169 }} // Tizen::System
170