public override void ProcessCommand()
        {
            logger.Info("Processing CommandRequest_GetCharactersCreators: {0}", AnimeID);

            try
            {
                AniDB_AnimeRepo.Instance.itory             repAnime        = new AniDB_AnimeRepo.Instance.itory();
                AniDB_Character_CreatorRepo.Instance.itory repCharCreators = new AniDB_Character_CreatorRepo.Instance.itory();
                AniDB_Anime anime = null;

                if (ForceRefresh)
                {
                    // redownload anime details from http ap so we can get an update character list
                    anime = JMMService.AnidbProcessor.GetAnimeInfoHTTP(AnimeID, false, false);
                }
                else
                {
                    anime = repAnime.GetByAnimeID(AnimeID);
                }

                if (anime == null)
                {
                    return;
                }

                foreach (AniDB_Anime_Character animeChar in anime.AnimeCharacters)
                {
                    //MainWindow.anidbProcessor.UpdateCharacterInfo(charref.CharID, false);
                    //logger.Trace("Downloading char info: {0}", animeChar.CharID);
                    CommandRequest_GetCharacter cmdChar = new CommandRequest_GetCharacter(animeChar.CharID, ForceRefresh);
                    cmdChar.Save();

                    // for each of the creators for this character
                    foreach (AniDB_Character_Seiyuu aac in repCharCreators.GetByCharID(animeChar.CharID))
                    {
                        CommandRequest_GetCreator cmdCreators = new CommandRequest_GetCreator(aac.SeiyuuID, ForceRefresh);
                        cmdCreators.Save();
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error("Error processing CommandRequest_GetCharactersCreators: {0} - {1}", AnimeID, ex.ToString());
                return;
            }
        }
		public override void ProcessCommand()
		{
			logger.Info("Processing CommandRequest_GetCharactersCreators: {0}", AnimeID);

			try
			{
				AniDB_AnimeRepository repAnime = new AniDB_AnimeRepository();
				AniDB_Character_CreatorRepository repCharCreators = new AniDB_Character_CreatorRepository();
				AniDB_Anime anime = null;

				if (ForceRefresh)
				{
					// redownload anime details from http ap so we can get an update character list
					anime = JMMService.AnidbProcessor.GetAnimeInfoHTTP(AnimeID, false, false);
				}
				else
					anime = repAnime.GetByAnimeID(AnimeID);

				if (anime == null) return;

				foreach (AniDB_Anime_Character animeChar in anime.AnimeCharacters)
				{
					//MainWindow.anidbProcessor.UpdateCharacterInfo(charref.CharID, false);
					//logger.Trace("Downloading char info: {0}", animeChar.CharID);
					CommandRequest_GetCharacter cmdChar = new CommandRequest_GetCharacter(animeChar.CharID, ForceRefresh);
					cmdChar.Save();

					// for each of the creators for this character
					foreach (AniDB_Character_Seiyuu aac in repCharCreators.GetByCharID(animeChar.CharID))
					{
						CommandRequest_GetCreator cmdCreators = new CommandRequest_GetCreator(aac.SeiyuuID, ForceRefresh);
						cmdCreators.Save();
					}
				}

			}
			catch (Exception ex)
			{
				logger.Error("Error processing CommandRequest_GetCharactersCreators: {0} - {1}", AnimeID, ex.ToString());
				return;
			}
		}