sbIMetadataLookupData.idl
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 "nsISupports.idl"
31 #include "sbIJobProgress.idl"
32 
33 interface nsISimpleEnumerator;
34 interface nsIArray;
35 interface sbIMutablePropertyArray;
36 
37 [scriptable, uuid(5ae0b558-1dd2-11b2-8046-b8cfcbe7f3a9)]
39 {
40  // properties of the album itself, e.g. artist name, album name, genre,
41  // etc. These are standard SBProperties.* as well as provider-specific
42  // ones which should be namespaced to the provider, e.g.
43  // http://freedb.org/#discId
44  readonly attribute sbIMutablePropertyArray properties;
45 
46  // an nsIArray of sbIMutablePropertyArray items to hold the track properties
47  readonly attribute nsIArray tracks;
48 };
49 
56 [scriptable, uuid(d2f510f2-1dd1-11b2-ad78-991e90cdfe90)]
58 {
59  const unsigned short JOB_DISC_LOOKUP = 1;
60  const unsigned short JOB_ALBUM_DETAIL_LOOKUP = 2;
61  // Not yet implemented
62  // const unsigned short JOB_DISC_SUBMIT = 3;
63 
64  // One of the above JOB_* types
65  readonly attribute unsigned short mlJobType;
66 
67  // The # of results found if any
68  readonly attribute unsigned short mlNumResults;
69 
73  void init(in unsigned short jobType, in unsigned short status);
74 
78  void appendResult(in sbIMetadataAlbumDetail aAlbum);
79 
83  void changeStatus(in unsigned short status);
84 
90 };
91 
const unsigned short JOB_ALBUM_DETAIL_LOOKUP
nsISimpleEnumerator getMetadataResults()
Returns an enumerator of all results found by this lookup job.
readonly attribute nsIArray tracks
Generic interface for exposing long running jobs to the UI.
var uuid
const unsigned short JOB_DISC_LOOKUP
readonly attribute sbIMutablePropertyArray properties
An interface to carry around arrays of nsIProperty instances Note that implementations of the interfa...
void changeStatus(in unsigned short status)
Change the status of the job and notify listeners.
void init(in unsigned short jobType, in unsigned short status)
Initialise the job type and state of the job.
readonly attribute unsigned short mlJobType
void appendResult(in sbIMetadataAlbumDetail aAlbum)
Append a result.
readonly attribute unsigned short status
Current status of the job.
readonly attribute unsigned short mlNumResults