sbiTunesDatabaseServices.h
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-2009 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 #ifndef ITUNESDATABASESERVICES_H_
28 #define ITUNESDATABASESERVICES_H_
29 
30 #include <nsStringAPI.h>
31 
32 #include "sbiTunesImporterCommon.h"
33 
35 
41 {
42 public:
47  // Need this so nsCOMPtr's are destructed in cpp
52  nsresult Initialize();
59  nsresult MapID(nsAString const & aiTunesLibID,
60  nsAString const & aiTunesID,
61  nsAString const & aSongbirdID);
68  nsresult GetSBIDFromITID(nsAString const & aiTunesLibID,
69  nsAString const & aiiTunesID,
70  nsAString & aSongbirdID);
75  nsresult RemoveSBIDEntry(nsAString const & aSongbirdID);
76 private:
77  typedef nsCOMPtr<sbIDatabasePreparedStatement> PreparedStatementPtr;
78 
82  sbIDatabaseQueryPtr mDBQuery;
83 
87  PreparedStatementPtr mInsertMapID;
88 
92  PreparedStatementPtr mSelectMapID;
93 
97  PreparedStatementPtr mDeleteMapID;
98 
102  PRBool mResetPending;
103 
104  // Prevent copy/assignment
107 };
108 
109 #endif /* ITUNESDATABASESERVICES_H_ */
nsresult RemoveSBIDEntry(nsAString const &aSongbirdID)
nsresult GetSBIDFromITID(nsAString const &aiTunesLibID, nsAString const &aiiTunesID, nsAString &aSongbirdID)
nsCOMPtr< sbIDatabaseQuery > sbIDatabaseQueryPtr
nsresult MapID(nsAString const &aiTunesLibID, nsAString const &aiTunesID, nsAString const &aSongbirdID)
A prepared database statement.