Skip to content
Jacksgong edited this page Aug 9, 2016 · 10 revisions

Welcome to the FileDownloader wiki!

The catalog at the right sidebar.

  • If you want the FileDownloadService runs in the main process to reduce I/O by IPC, configure the process.non-separate in filedownloader.properties.

Code Quick view:

Message:

  • Model: MessageSnapshot.java、SmallMessageSnapshot.java、LargeMessageSnapshot.java
  • Factory: MessageSnapshotTaker.java
  • ThreadPool: MessageSnapshotThreadPool.java
  • Driver: MessageSnapshotFlow.java
  • Upper transmit architecture: FileDownloadMessageStation.java、FileDownloadMessenger.java

Data

  • Internal Data: FileDownloadModel.java
  • Internal Database: FileDownloadDBHelper.java、FileDownloadDBOpenHelper.java

Working Component

  • Event Manager: FileDownloadMgr.java
  • Task-Runner: FileDownloadRunnable.java
  • Network-Thread-Pool: FileDownloadThreadPool.java
  • Running-Task: FileDownloadList.java
  • Launcher-directly-thread-pool and controller: FileDownloadTaskLaunder.java
  • Service-communicator: IFileDownloadServiceProxy.java、FileDownloadServiceProxy.java、FileDownloadServiceSharedTransmit.java、FileDownloadServiceUIGuard.java
  • Implemented-task: FileDownloadTask.java

Host Component

  • Host: FileDownloadService.SharedMainProcessServiceFileDownloadService.SeparateProcessService

Visible Layer

  • Atom Task: BaseDownloadTask.java
  • Entrance: FileDownloader.java
  • Listener: FileDownloadListener.java、FileDownloadLargeFileListener.java、FileDownloadSampleListener.java、FileDownloadConnectListener.java、FileDownloadNotificationListener.java、BaseDownloadTask.FinishListener
  • Utils: FileDownloadUtils.java、FileDownloadProperties.java
  • Global Monitor: FileDownloadMonitor.java
  • Notification: FileDownloadNotificationHelper.java、BaseNotificationItem.java
  • Exception: FileDownloadGiveUpRetryException.java、FileDownloadHttpException.java、FileDownloadOutOfSpaceException.java
  • Status: FileDownloadStatus.java
  • Header: FileDownloadHeader.java
  • Helper: FileDownloadQueueSet.java