Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "ECF BitTorrent Provider"

(BitTorrent Data Model: Changing the name)
(BitTorrent Plug-in Data Model)
Line 9: Line 9:
 
===org.eclipse.bittorrent===
 
===org.eclipse.bittorrent===
 
*Host - reads in a Torrent connects to peers to begin seeding or downloading
 
*Host - reads in a Torrent connects to peers to begin seeding or downloading
 +
Contains:
 +
:exactly one Torrent
  
 
*Torrent - a representation of the metainfo stored within a ''.torrent'' file
 
*Torrent - a representation of the metainfo stored within a ''.torrent'' file
 +
  
 
===org.eclipse.bittorrent.internal.encode===
 
===org.eclipse.bittorrent.internal.encode===
Line 18: Line 21:
  
 
*Encode - converts or alters information for use
 
*Encode - converts or alters information for use
 +
  
 
===org.eclipse.bittorrent.internal.net===
 
===org.eclipse.bittorrent.internal.net===
 
*ConnectionPool - a thread pool that manages ConnectionThreads
 
*ConnectionPool - a thread pool that manages ConnectionThreads
 +
Contains:
 +
:one or more ConnectionThreads
  
 
*ConnectionThread - creates a PeerConnection to talk to a peer
 
*ConnectionThread - creates a PeerConnection to talk to a peer
 +
Contains:
 +
:exactly one PeerConnection
  
 
*PeerConnection - connects to a peer and exchanges information
 
*PeerConnection - connects to a peer and exchanges information
 +
Contains:
 +
:exactly one Host
 +
  
 
===org.eclipse.bittorrent.internal.torrent===
 
===org.eclipse.bittorrent.internal.torrent===
 
*DataFile - a representation of a file on the user's system for read/write operations
 
*DataFile - a representation of a file on the user's system for read/write operations
 +
Contains:
 +
:one or more Pieces
  
 
*Piece - a piece of data that is needed to complete a download
 
*Piece - a piece of data that is needed to complete a download
 +
Contains:
 +
:contains one or more DataFiles
  
 
== External Links ==
 
== External Links ==

Revision as of 18:26, 7 June 2006

Project Lead: Remy Chi Jian Suen

Mentor(s): Wayne Beaton, Scott Lewis, and Chris Aniszczyk

The goal if this project is to create an implementation of the file sharing API provided by the Eclipse Communication Framework using the BitTorrent protocol.

BitTorrent Plug-in Data Model

org.eclipse.bittorrent

  • Host - reads in a Torrent connects to peers to begin seeding or downloading

Contains:

exactly one Torrent
  • Torrent - a representation of the metainfo stored within a .torrent file


org.eclipse.bittorrent.internal.encode

  • BEecodedDictionary - holds the key-value pairs stored within a bencoded string.
  • Decode - decodes information such as the contents of a torrent file
  • Encode - converts or alters information for use


org.eclipse.bittorrent.internal.net

  • ConnectionPool - a thread pool that manages ConnectionThreads

Contains:

one or more ConnectionThreads
  • ConnectionThread - creates a PeerConnection to talk to a peer

Contains:

exactly one PeerConnection
  • PeerConnection - connects to a peer and exchanges information

Contains:

exactly one Host


org.eclipse.bittorrent.internal.torrent

  • DataFile - a representation of a file on the user's system for read/write operations

Contains:

one or more Pieces
  • Piece - a piece of data that is needed to complete a download

Contains:

contains one or more DataFiles

External Links

Eclipse Communication Framework Website

BitTorrent Specification

Back to the top