sbRemoteWebMediaItem.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 
27 #include "sbRemoteWebMediaItem.h"
28 #include "sbRemotePlayer.h"
30 
31 #include <prlog.h>
32 #include <sbClassInfoUtils.h>
33 
34 /*
35  * To log this module, set the following environment variable:
36  * NSPR_LOG_MODULES=sbRemoteWebMediaItem:5
37  * LOG_ITEM defined in sbRemoteMediaItem.h/.cpp
38  */
39 #undef LOG
40 #define LOG(args) LOG_ITEM(args)
41 
42 const static char* sPublicWProperties[] = {""};
43 
44 const static char* sPublicRProperties[] =
45 {
46  // sbILibraryResource
47  "site:guid",
48  "site:created",
49  "site:updated",
50 
51  // sbIMediaItem
52  // omitting library since we don't want the user to get back
53  // to the original library
54  "site:isMutable",
55  "site:mediaCreated",
56  "site:mediaUpdated",
57  "site:contentLength",
58  "site:contentType",
59 
60  // nsIClassInfo
61  "classinfo:classDescription",
62  "classinfo:contractID",
63  "classinfo:classID",
64  "classinfo:implementationLanguage",
65  "classinfo:flags"
66 };
67 
68 const static char* sPublicMethods[] =
69 {
70  // sbILibraryResource
71  "site:getProperty",
72  "site:equals"
73 
74  // sbIMediaItem
75  // none applicable
76 };
77 
80  nsIClassInfo )
81 
88 
89 SB_IMPL_CLASSINFO_INTERFACES_ONLY(sbRemoteWebMediaItem)
90 
91 // Try using the 'main' Library resource first.
92 SB_IMPL_SECURITYCHECKEDCOMP_INIT_LIBRES(sbRemoteWebMediaItem,
94  (mRemotePlayer, mMediaItem) )
95 
96 sbRemoteWebMediaItem::sbRemoteWebMediaItem( sbRemotePlayer* aRemotePlayer,
97  sbIMediaItem* aMediaItem ) :
98  sbRemoteMediaItem(aRemotePlayer, aMediaItem)
99 {
100  LOG_ITEM(("sbRemoteWebMediaItem::sbRemoteWebMediaItem()"));
101 }
102 
104 {
105  LOG_ITEM(("sbRemoteWebMediaItem::~sbRemoteWebMediaItem()"));
106 }
107 
static const char * sPublicWProperties[]
nsISecurityCheckedComponent
static const char * sPublicRProperties[]
A marker interface for objects that aggregate the security mixin.
General interface to data resources.
NS_INTERFACE_MAP_END NS_IMPL_CI_INTERFACE_GETTER5(sbLocalDatabaseMediaItem, nsIClassInfo, nsISupportsWeakReference, nsIRequestObserver, sbILibraryResource, sbIMediaItem) sbLocalDatabaseMediaItem
#define SB_IMPL_SECURITYCHECKEDCOMP_INIT_LIBRES(_class, _libres, _libresArgs)
Definition: sbRemoteAPI.h:94
static const char * sPublicMethods[]
Interface that defines a single item of media in the system.
NS_IMPL_ISUPPORTS_INHERITED1(sbRemoteWebMediaItem, sbRemoteMediaItem, nsIClassInfo) NS_IMPL_CI_INTERFACE_GETTER5(sbRemoteWebMediaItem
#define SB_IMPL_CLASSINFO_INTERFACES_ONLY(_class)
#define LOG_ITEM(args)