1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #ifndef nsAppDirectoryServiceDefs_h___
8 #define nsAppDirectoryServiceDefs_h___
10 //========================================================================================
12 // Defines property names for directories available from standard
13 // nsIDirectoryServiceProviders. These keys are not guaranteed to exist because
14 // the nsIDirectoryServiceProviders which provide them are optional.
16 // Keys whose definition ends in "DIR" or "FILE" return a single nsIFile (or
17 // subclass). Keys whose definition ends in "LIST" return an nsISimpleEnumerator
18 // which enumerates a list of file objects.
20 // System and XPCOM level properties are defined in nsDirectoryServiceDefs.h.
22 //========================================================================================
24 // --------------------------------------------------------------------------------------
25 // Files and directories which exist on a per-product basis
26 // --------------------------------------------------------------------------------------
28 #define NS_APP_APPLICATION_REGISTRY_FILE "AppRegF"
29 #define NS_APP_APPLICATION_REGISTRY_DIR "AppRegD"
31 #define NS_APP_DEFAULTS_50_DIR "DefRt" // The root dir of all defaults dirs
32 #define NS_APP_PREF_DEFAULTS_50_DIR "PrfDef"
34 #define NS_APP_USER_PROFILES_ROOT_DIR \
35 "DefProfRt" // The dir where user profile dirs live.
36 #define NS_APP_USER_PROFILES_LOCAL_ROOT_DIR \
37 "DefProfLRt" // The dir where user profile temp dirs live.
39 #define NS_APP_RES_DIR "ARes"
40 #define NS_APP_CHROME_DIR "AChrom"
42 #define NS_APP_CHROME_DIR_LIST "AChromDL"
44 // --------------------------------------------------------------------------------------
45 // Files and directories which exist on a per-profile basis
46 // These locations are typically provided by the profile mgr
47 // --------------------------------------------------------------------------------------
49 // In a shared profile environment, prefixing a profile-relative
50 // key with NS_SHARED returns a location that is shared by
51 // other users of the profile. Without this prefix, the consumer
52 // has exclusive access to this location.
54 #define NS_SHARED "SHARED"
56 #define NS_APP_PREFS_50_DIR "PrefD" // Directory which contains user prefs
57 #define NS_APP_PREFS_50_FILE "PrefF"
58 #define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
59 #define NS_APP_PREFS_OVERRIDE_DIR \
60 "PrefDOverride" // Directory for per-profile defaults
62 #define NS_APP_USER_PROFILE_50_DIR "ProfD"
63 #define NS_APP_USER_PROFILE_LOCAL_50_DIR "ProfLD"
65 #define NS_APP_USER_CHROME_DIR "UChrm"
67 #define NS_APP_USER_PANELS_50_FILE "UPnls"
68 #define NS_APP_CACHE_PARENT_DIR "cachePDir"
70 #define NS_APP_INSTALL_CLEANUP_DIR \
71 "XPIClnupD" // location of xpicleanup.dat xpicleanup.exe
73 #define NS_APP_INDEXEDDB_PARENT_DIR "indexedDBPDir"
75 #define NS_APP_PERMISSION_PARENT_DIR "permissionDBPDir"
77 #endif // nsAppDirectoryServiceDefs_h___