sbDeviceManagerModule.cpp
Go to the documentation of this file.
1 /* vim: set sw=2 :miv */
2 /*
3 //
4 // BEGIN SONGBIRD GPL
5 //
6 // This file is part of the Songbird web player.
7 //
8 // Copyright(c) 2005-2008 POTI, Inc.
9 // http://songbirdnest.com
10 //
11 // This file may be licensed under the terms of of the
12 // GNU General Public License Version 2 (the "GPL").
13 //
14 // Software distributed under the License is distributed
15 // on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either
16 // express or implied. See the GPL for the specific language
17 // governing rights and limitations.
18 //
19 // You should have received a copy of the GPL along with this
20 // program. If not, go to http://www.gnu.org/licenses/gpl.html
21 // or write to the Free Software Foundation, Inc.,
22 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
23 //
24 // END SONGBIRD GPL
25 //
26 */
27 
33 #include <nsCOMPtr.h>
34 #include <nsServiceManagerUtils.h>
35 #include <nsIAppStartupNotifier.h>
36 #include <nsICategoryManager.h>
37 #include <nsIGenericFactory.h>
38 
39 #include "sbDeviceManager.h"
40 
42 
43 // Registration functions for becoming a startup observer
44 static NS_METHOD
45 sbDeviceManagerRegisterSelf(nsIComponentManager* aCompMgr,
46  nsIFile* aPath,
47  const char* registryLocation,
48  const char* componentType,
49  const nsModuleComponentInfo* info)
50 {
51  nsresult rv;
52  nsCOMPtr<nsICategoryManager> categoryManager =
53  do_GetService(NS_CATEGORYMANAGER_CONTRACTID, &rv);
54  NS_ENSURE_SUCCESS(rv, rv);
55 
56  rv = categoryManager->
57  AddCategoryEntry(APPSTARTUP_CATEGORY,
60  PR_TRUE, PR_TRUE, nsnull);
61  return rv;
62 }
63 
64 static NS_METHOD
65 sbDeviceManagerUnregisterSelf(nsIComponentManager* aCompMgr,
66  nsIFile* aPath,
67  const char* registryLocation,
68  const nsModuleComponentInfo* info)
69 {
70  nsresult rv;
71  nsCOMPtr<nsICategoryManager> categoryManager =
72  do_GetService(NS_CATEGORYMANAGER_CONTRACTID, &rv);
73  NS_ENSURE_SUCCESS(rv, rv);
74 
75  rv = categoryManager->DeleteCategoryEntry(APPSTARTUP_CATEGORY,
77  PR_TRUE);
78 
79  return rv;
80 }
81 
82 static nsModuleComponentInfo sbDeviceManagerComponents[] =
83 {
84  {
88  sbDeviceManagerConstructor,
91  }
92 };
93 
94 NS_IMPL_NSGETMODULE(SongbirdDeviceManager2, sbDeviceManagerComponents)
static NS_METHOD sbDeviceManagerRegisterSelf(nsIComponentManager *aCompMgr, nsIFile *aPath, const char *registryLocation, const char *componentType, const nsModuleComponentInfo *info)
_updateCookies aPath
NS_GENERIC_FACTORY_CONSTRUCTOR(sbDeviceManager)
static NS_METHOD sbDeviceManagerUnregisterSelf(nsIComponentManager *aCompMgr, nsIFile *aPath, const char *registryLocation, const nsModuleComponentInfo *info)
#define SONGBIRD_DEVICEMANAGER2_CLASSNAME
#define SONGBIRD_DEVICEMANAGER2_DESCRIPTION
static nsModuleComponentInfo sbDeviceManagerComponents[]
NS_IMPL_NSGETMODULE(SongbirdIdentityServiceComponent, sbIdentityServiceComponent)
#define SONGBIRD_DEVICEMANAGER2_CID
#define SONGBIRD_DEVICEMANAGER2_CONTRACTID