NetworkProxyImportComponent.cpp
Go to the documentation of this file.
1 /*
2  *=BEGIN SONGBIRD GPL
3  *
4  * This file is part of the Songbird web player.
5  *
6  * Copyright(c) 2005-2009 POTI, Inc.
7  * http://www.songbirdnest.com
8  *
9  * This file may be licensed under the terms of of the
10  * GNU General Public License Version 2 (the ``GPL'').
11  *
12  * Software distributed under the License is distributed
13  * on an ``AS IS'' basis, WITHOUT WARRANTY OF ANY KIND, either
14  * express or implied. See the GPL for the specific language
15  * governing rights and limitations.
16  *
17  * You should have received a copy of the GPL along with this
18  * program. If not, go to http://www.gnu.org/licenses/gpl.html
19  * or write to the Free Software Foundation, Inc.,
20  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21  *
22  *=END SONGBIRD GPL
23  */
24 
30 #include "nsIGenericFactory.h"
31 #include "NetworkProxyImport.h"
32 
33 #define NS_GENERIC_FACTORY_SIMPLETON_CONSTRUCTOR( _Interface ) \
34  static _Interface * m_Simpleton = NULL; \
35  static _Interface * _Interface##SimpletonConstructor( void ) \
36  { \
37  NS_IF_ADDREF( m_Simpleton ? m_Simpleton : ( NS_IF_ADDREF( m_Simpleton = new _Interface() ), m_Simpleton ) ); \
38  return m_Simpleton; \
39  } \
40  NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR( _Interface, _Interface##SimpletonConstructor )
41 
43 
44 static NS_IMETHODIMP CNetworkProxyImportFactoryDestructor()
45 {
46  NS_IF_RELEASE(m_Simpleton);
47  return NS_OK;
48 }
49 
50 static nsModuleComponentInfo components[] =
51 {
52  {
56  CNetworkProxyImportConstructor,
57  nsnull,
58  nsnull,
59  CNetworkProxyImportFactoryDestructor
60  },
61 };
62 
63 NS_IMPL_NSGETMODULE(SongbirdNetworkProxyImportComponent, components)
64 
return NS_OK
static CNetworkProxyImport * m_Simpleton
#define SONGBIRD_NetworkProxyImport_CLASSNAME
Songbird NetworkProxyImport Component Definition.
#define NS_GENERIC_FACTORY_SIMPLETON_CONSTRUCTOR(_Interface)
#define SONGBIRD_NetworkProxyImport_CID
#define SONGBIRD_NetworkProxyImport_CONTRACTID
NS_IMPL_NSGETMODULE(SongbirdIdentityServiceComponent, sbIdentityServiceComponent)
static nsModuleComponentInfo components[]