public SaveTrackMetadataJob () : base (Catalog.GetString ("Saving Metadata to File"))
{
SetResources (Resource.Cpu, Resource.Disk, Resource.Database);
IsBackground = true;
var db_ids = ServiceManager.Get<SaveTrackMetadataService> ().Sources.
Select (s => s.DbId.ToString ()).ToArray ();
string range = String.Join (",", db_ids);
string condition = String.Format (
@"(DateUpdatedStamp > LastSyncedStamp OR
(DateUpdatedStamp IS NOT NULL AND LastSyncedStamp IS NULL))
AND PrimarySourceID IN ({0})
AND Uri LIKE '{1}%'", range, "file:");
CountCommand = new HyenaSqliteCommand (
"SELECT COUNT(*) FROM CoreTracks WHERE " + condition);
SelectCommand = DatabaseTrackInfo.Provider.CreateFetchCommand (condition + " LIMIT 1");
}