sbiTunesImporterComponent.cpp
Go to the documentation of this file.
1 /*
2  //
3 // BEGIN SONGBIRD GPL
4 //
5 // This file is part of the Songbird web player.
6 //
7 // Copyright(c) 2005-2008 POTI, Inc.
8 // http://songbirdnest.com
9 //
10 // This file may be licensed under the terms of of the
11 // GNU General Public License Version 2 (the "GPL").
12 //
13 // Software distributed under the License is distributed
14 // on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either
15 // express or implied. See the GPL for the specific language
16 // governing rights and limitations.
17 //
18 // You should have received a copy of the GPL along with this
19 // program. If not, go to http://www.gnu.org/licenses/gpl.html
20 // or write to the Free Software Foundation, Inc.,
21 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22 //
23 // END SONGBIRD GPL
24 //
25  */
26 
32 #include <nsCOMPtr.h>
33 #include <nsServiceManagerUtils.h>
34 #include <nsICategoryManager.h>
35 #include <nsIGenericFactory.h>
36 
37 #include "sbiTunesXMLParser.h"
38 #include "sbiTunesImporter.h"
39 
41 
43 
44 #define SB_LIBRARY_IMPORTER_CATEGORY "library-importer"
45 
46 // Registration functions for becoming a startup observer
47 static NS_METHOD sbiTunesImporterRegisterSelf(nsIComponentManager* aCompMgr,
48  nsIFile* aPath,
49  const char* registryLocation,
50  const char* componentType,
51  const nsModuleComponentInfo* info)
52 {
53  nsresult rv;
54  nsCOMPtr<nsICategoryManager> categoryManager =
55  do_GetService(NS_CATEGORYMANAGER_CONTRACTID, &rv);
56  NS_ENSURE_SUCCESS(rv, rv);
57  rv = categoryManager->AddCategoryEntry(SB_LIBRARY_IMPORTER_CATEGORY,
60  PR_TRUE, PR_TRUE, nsnull);
61 
62  return rv;
63 }
64 
65 static NS_METHOD sbiTunesImporterUnregisterSelf(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  rv = categoryManager->DeleteCategoryEntry(SB_LIBRARY_IMPORTER_CATEGORY,
76  PR_TRUE);
77  return rv;
78 }
79 
80 static nsModuleComponentInfo sbiTunesImporter[] =
81 {
82  {
86  sbiTunesXMLParserConstructor
87  },
88  {
92  sbiTunesImporterConstructor,
95  },
96 };
97 
98 NS_IMPL_NSGETMODULE(SongbirdiTunesImporterComponent, sbiTunesImporter)
_updateCookies aPath
#define SBITUNESIMPORTER_CONTRACTID
#define SBITUNESIMPORTER_CID
#define SBITUNESXMLPARSER_CID
#define SBITUNESXMLPARSER_CLASSNAME
#define SB_LIBRARY_IMPORTER_CATEGORY
#define SBITUNESXMLPARSER_CONTRACTID
NS_IMPL_NSGETMODULE(SongbirdIdentityServiceComponent, sbIdentityServiceComponent)
#define SBITUNESIMPORTER_CLASSNAME
NS_GENERIC_FACTORY_CONSTRUCTOR(sbMediaSniffer)
static NS_METHOD sbiTunesImporterRegisterSelf(nsIComponentManager *aCompMgr, nsIFile *aPath, const char *registryLocation, const char *componentType, const nsModuleComponentInfo *info)
static NS_METHOD sbiTunesImporterUnregisterSelf(nsIComponentManager *aCompMgr, nsIFile *aPath, const char *registryLocation, const nsModuleComponentInfo *info)