Exemplo n.º 1
0
        public void FetchArtistImages(bool force)
        {
            if (job == null)
            {
                var      config_variable_name = "last_artist_image_scan";
                DateTime last_scan            = DateTime.MinValue;

                if (!force)
                {
                    try {
                        last_scan = DatabaseConfigurationClient.Client.Get <DateTime> (config_variable_name,
                                                                                       DateTime.MinValue);
                    } catch (FormatException) {
                        Log.Warning(String.Format("{0} is malformed, resetting to default value",
                                                  config_variable_name));
                        DatabaseConfigurationClient.Client.Set <DateTime> (config_variable_name,
                                                                           DateTime.MinValue);
                    }
                }

                if (ServiceManager.Get <Network> ().Connected&& !IsThereActiveJob())
                {
                    job = new ArtistImageJob(last_scan);

                    job.Finished += delegate {
                        if (!job.IsCancelRequested && !network_failed)
                        {
                            DatabaseConfigurationClient.Client.Set <DateTime> (config_variable_name, DateTime.Now);
                        }
                        job = null;
                    };
                    job.Start();
                }
            }
        }
        public void FetchArtistImages(bool force)
        {
            if (job == null) {
                var config_variable_name = "last_artist_image_scan";
                DateTime last_scan = DateTime.MinValue;

                if (!force) {
                    try {
                        last_scan = DatabaseConfigurationClient.Client.Get<DateTime> (config_variable_name,
                                                                                      DateTime.MinValue);
                    } catch (FormatException) {
                        Log.Warning (String.Format ("{0} is malformed, resetting to default value",
                                                    config_variable_name));
                        DatabaseConfigurationClient.Client.Set<DateTime> (config_variable_name,
                                                                          DateTime.MinValue);
                    }
                }

                if (ServiceManager.Get<Network> ().Connected && !IsThereActiveJob ()) {
                    job = new ArtistImageJob (last_scan);

                    job.Finished += delegate {
                        if (!job.IsCancelRequested && !network_failed) {
                            DatabaseConfigurationClient.Client.Set<DateTime> (config_variable_name, DateTime.Now);
                        }
                        job = null;
                    };
                    job.Start ();
                }
            }
        }