Ejemplo n.º 1
0
 public DownloadManager(IDownloadDirectory aDownloadDirectory, IUrlFetcher aUrlFetcher)
 {
     iDownloadDirectory = aDownloadDirectory;
     iMessageQueue = new Channel<Action<IDownloadThread>>(5);
     var urlPoller = new DefaultUrlPoller();
     var pollManager = new PollManager(urlPoller);
     iDownloader = new Downloader(iDownloadDirectory, iMessageQueue, pollManager, aUrlFetcher);
     iDownloadThread = new CommunicatorThread(iDownloader.Run, "DownloadManager");
     iDownloadThread.Start();
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="aDownloadDirectory"></param>
 /// <param name="aMessageQueue">
 /// Message queue holding actions for the thread to perform in sequence.
 /// </param>
 /// <param name="aPollManager">
 /// Performs URL polling to see if an update is available.
 /// </param>
 /// <param name="aUrlFetcher">
 /// Performs URL fetching.
 /// </param>
 public Downloader(
     IDownloadDirectory aDownloadDirectory,
     Channel<Action<IDownloadThread>> aMessageQueue,
     IPollManager aPollManager,
     IUrlFetcher aUrlFetcher)
 {
     iMessageQueue = aMessageQueue;
     iDownloadDirectory = aDownloadDirectory;
     iPollManager = aPollManager;
     iUrlFetcher = aUrlFetcher;
     FailureTimeout = TimeSpan.FromSeconds(10);
 }
Ejemplo n.º 3
0
        public App([NotNull] string appDataPath, [NotNull] ILocalDirectory localDirectory,
                   [NotNull] ILocalMetaData localMetaData,
                   [NotNull] IDownloadDirectory downloadDirectory, [NotNull] IRemoteData remoteData,
                   [NotNull] IRemoteMetaData remoteMetaData,
                   int overrideLatestVersionId)
        {
            if (string.IsNullOrEmpty(appDataPath))
            {
                throw new ArgumentException("Value cannot be null or empty.", "appDataPath");
            }

            if (localDirectory == null)
            {
                throw new ArgumentNullException("localDirectory");
            }

            if (localMetaData == null)
            {
                throw new ArgumentNullException("localMetaData");
            }

            if (downloadDirectory == null)
            {
                throw new ArgumentNullException("downloadDirectory");
            }

            if (remoteData == null)
            {
                throw new ArgumentNullException("remoteData");
            }

            if (remoteMetaData == null)
            {
                throw new ArgumentNullException("remoteMetaData");
            }

            LocalDirectory           = localDirectory;
            LocalMetaData            = localMetaData;
            DownloadDirectory        = downloadDirectory;
            RemoteData               = remoteData;
            RemoteMetaData           = remoteMetaData;
            _overrideLatestVersionId = overrideLatestVersionId;
        }
Ejemplo n.º 4
0
        public App(ILocalDirectory localDirectory, ILocalMetaData localMetaData, ITemporaryDirectory temporaryDirectory,
                   IDownloadDirectory downloadDirectory, IRemoteData remoteData, IRemoteMetaData remoteMetaData,
                   int overrideLatestVersionId)
        {
            Checks.ArgumentNotNull(localDirectory, "localData");
            Checks.ArgumentNotNull(localMetaData, "localMetaData");
            Checks.ArgumentNotNull(temporaryDirectory, "temporaryData");
            Checks.ArgumentNotNull(downloadDirectory, "downloadData");
            Checks.ArgumentNotNull(remoteData, "remoteData");
            Checks.ArgumentNotNull(remoteMetaData, "remoteMetaData");

            LocalDirectory           = localDirectory;
            LocalMetaData            = localMetaData;
            TemporaryDirectory       = temporaryDirectory;
            DownloadDirectory        = downloadDirectory;
            RemoteData               = remoteData;
            RemoteMetaData           = remoteMetaData;
            _overrideLatestVersionId = overrideLatestVersionId;
        }