<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aria2/src/FileAllocationCommand.cc, branch release-1.6.2</title>
<subtitle>Aria2 download utility with uTP support</subtitle>
<id>http://x-nagi.com/cgit/aria2/atom?h=release-1.6.2</id>
<link rel='self' href='http://x-nagi.com/cgit/aria2/atom?h=release-1.6.2'/>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/'/>
<updated>2009-06-28T10:37:15Z</updated>
<entry>
<title>2009-06-28  Tatsuhiro Tsujikawa  &lt;t-tujikawa@users.sourceforge.net&gt;</title>
<updated>2009-06-28T10:37:15Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2009-06-28T10:37:15Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=5699b675268658ea958f7c2306e19849dff9bc41'/>
<id>urn:sha1:5699b675268658ea958f7c2306e19849dff9bc41</id>
<content type='text'>
	Rewritten DownloadContext and removed SingleFileDownloadContext
	and BtContext and its derived classes. BitTorrent specific
	attributes are now set by DownloadContext::setAttribute() with key
	bittorrent::BITTORRENT.
	* src/AbstractBtMessage.cc
	* src/AbstractBtMessage.h
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/AbstractProxyRequestCommand.cc
	* src/AbstractProxyResponseCommand.cc
	* src/ActivePeerConnectionCommand.cc
	* src/ActivePeerConnectionCommand.h
	* src/AnnounceList.cc
	* src/BtCheckIntegrityEntry.cc
	* src/BtConstants.h
	* src/BtContext.h: Removed
	* src/BtDependency.cc
	* src/BtExtendedMessage.cc
	* src/BtPieceMessage.cc
	* src/BtPieceMessage.h
	* src/BtPostDownloadHandler.cc
	* src/BtRegistry.cc
	* src/BtRegistry.h
	* src/BtSetup.cc
	* src/CheckIntegrityCommand.cc
	* src/CheckIntegrityEntry.cc
	* src/ChecksumCheckIntegrityEntry.cc
	* src/ConsoleStatCalc.cc
	* src/ContentTypeRequestGroupCriteria.cc
	* src/DHTGetPeersCommand.cc
	* src/DHTGetPeersCommand.h
	* src/DHTPeerLookupTask.cc
	* src/DHTPeerLookupTask.h
	* src/DHTTaskFactory.h
	* src/DHTTaskFactoryImpl.cc
	* src/DHTTaskFactoryImpl.h
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtAnnounce.h
	* src/DefaultBtContext.cc: Removed
	* src/DefaultBtContext.h: Removed
	* src/DefaultBtInteractive.cc
	* src/DefaultBtInteractive.h
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultBtMessageDispatcher.h
	* src/DefaultBtMessageFactory.cc
	* src/DefaultBtMessageFactory.h
	* src/DefaultBtMessageReceiver.cc
	* src/DefaultBtMessageReceiver.h
	* src/DefaultBtProgressInfoFile.cc
	* src/DefaultBtRequestFactory.cc
	* src/DefaultBtRequestFactory.h
	* src/DefaultExtensionMessageFactory.cc
	* src/DefaultExtensionMessageFactory.h
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/DefaultPieceStorage.cc
	* src/DefaultSegmentManFactory.cc
	* src/DiskAdaptor.cc
	* src/DiskAdaptor.h
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/DownloadEngine.cc
	* src/DownloadEngineFactory.cc
	* src/DownloadHandler.cc
	* src/DownloadResult.h
	* src/FileAllocationCommand.cc
	* src/FileAllocationDispatcherCommand.cc
	* src/FileAllocationEntry.cc
	* src/FileEntry.h
	* src/FillRequestGroupCommand.cc
	* src/FtpDownloadCommand.cc
	* src/FtpFinishDownloadCommand.cc
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/FtpTunnelRequestCommand.cc
	* src/FtpTunnelResponseCommand.cc
	* src/HandshakeExtensionMessage.cc
	* src/HandshakeExtensionMessage.h
	* src/HaveEraseCommand.cc
	* src/HttpDownloadCommand.cc
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpProxyRequestCommand.cc
	* src/HttpProxyResponseCommand.cc
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpRequestCommand.cc
	* src/HttpResponseCommand.cc
	* src/HttpServerBodyCommand.cc
	* src/HttpServerCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/InitiateConnectionCommandFactory.cc
	* src/InitiatorMSEHandshakeCommand.cc
	* src/InitiatorMSEHandshakeCommand.h
	* src/IteratableChecksumValidator.cc
	* src/IteratableChecksumValidator.h
	* src/IteratableChunkChecksumValidator.cc
	* src/MSEHandshake.cc
	* src/MSEHandshake.h
	* src/Makefile.am
	* src/Makefile.in
	* src/Metalink2RequestGroup.cc
	* src/MetalinkPostDownloadHandler.cc
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/MultiFileAllocationIterator.cc
	* src/MultiUrlRequestInfo.cc
	* src/PeerChokeCommand.cc
	* src/PeerChokeCommand.h
	* src/PeerInitiateConnectionCommand.cc
	* src/PeerInitiateConnectionCommand.h
	* src/PeerInteractionCommand.cc
	* src/PeerInteractionCommand.h
	* src/PeerReceiveHandshakeCommand.cc
	* src/PieceHashCheckIntegrityEntry.cc
	* src/RealtimeCommand.cc
	* src/ReceiverMSEHandshakeCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupEntry.cc
	* src/RequestGroupMan.cc
	* src/SeedCheckCommand.cc
	* src/SeedCheckCommand.h
	* src/SegmentMan.cc
	* src/ShareRatioSeedCriteria.h
	* src/SingleFileDownloadContext.cc: Removed
	* src/SingleFileDownloadContext.h: Removed
	* src/SleepCommand.cc
	* src/StreamCheckIntegrityEntry.cc
	* src/TrackerWatcherCommand.cc
	* src/TrackerWatcherCommand.h
	* src/UnknownLengthPieceStorage.cc
	* src/Util.cc
	* src/Util.h
	* src/XmlRpcMethodImpl.cc
	* src/bittorrent_helper.cc
	* src/bittorrent_helper.h
	* src/download_helper.cc
	* src/main.cc
	* src/option_processing.cc
	* test/BitfieldManTest.cc
	* test/BittorrentHelperTest.cc
	* test/BtCancelMessageTest.cc
	* test/BtChokeMessageTest.cc
	* test/BtDependencyTest.cc
	* test/BtPieceMessageTest.cc
	* test/BtPostDownloadHandlerTest.cc
	* test/BtRegistryTest.cc
	* test/BtRejectMessageTest.cc
	* test/BtRequestMessageTest.cc
	* test/DHTPeerAnnounceStorageTest.cc
	* test/DefaultBtAnnounceTest.cc
	* test/DefaultBtContextTest.cc: Removed
	* test/DefaultBtMessageDispatcherTest.cc
	* test/DefaultBtMessageFactoryTest.cc
	* test/DefaultBtProgressInfoFileTest.cc
	* test/DefaultBtRequestFactoryTest.cc
	* test/DefaultExtensionMessageFactoryTest.cc
	* test/DefaultPeerStorageTest.cc
	* test/DefaultPieceStorageTest.cc
	* test/DirectDiskAdaptorTest.cc
	* test/DownloadContextTest.cc
	* test/DownloadHandlerFactoryTest.cc
	* test/DownloadHelperTest.cc
	* test/HandshakeExtensionMessageTest.cc
	* test/HttpRequestTest.cc
	* test/HttpResponseTest.cc
	* test/IteratableChecksumValidatorTest.cc
	* test/IteratableChunkChecksumValidatorTest.cc
	* test/MSEHandshakeTest.cc
	* test/Makefile.am
	* test/Makefile.in
	* test/Metalink2RequestGroupTest.cc
	* test/MetalinkPostDownloadHandlerTest.cc
	* test/MockBtContext.h: Removed
	* test/MockDHTTaskFactory.h
	* test/MockDownloadContext.h: Removed
	* test/MockPieceStorage.h
	* test/MultiDiskAdaptorTest.cc
	* test/MultiFileAllocationIteratorTest.cc
	* test/RequestGroupManTest.cc
	* test/RequestGroupTest.cc
	* test/SegmentManTest.cc
	* test/ShareRatioSeedCriteriaTest.cc
	* test/SingleFileDownloadContextTest.cc: Removed
	* test/UtilTest.cc
	* test/XmlRpcMethodTest.cc


</content>
</entry>
<entry>
<title>2009-01-24  Tatsuhiro Tsujikawa  &lt;t-tujikawa@users.sourceforge.net&gt;</title>
<updated>2009-01-24T09:49:37Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2009-01-24T09:49:37Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=a20aa3c7e544c0fc32fb1d8a5f04b24cfd026267'/>
<id>urn:sha1:a20aa3c7e544c0fc32fb1d8a5f04b24cfd026267</id>
<content type='text'>
	Rewritten FileAllocationDispatcherCommand using brand new
	SequentialDispatcherCommand.
	* src/DownloadEngineFactory.cc
	* src/FileAllocationCommand.cc
	* src/FileAllocationDispatcherCommand.cc
	* src/FileAllocationDispatcherCommand.h
	* src/Makefile.am
	* src/SequentialDispatcherCommand.h


</content>
</entry>
<entry>
<title>2009-01-24  Tatsuhiro Tsujikawa  &lt;t-tujikawa@users.sourceforge.net&gt;</title>
<updated>2009-01-24T09:00:36Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2009-01-24T09:00:36Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=8ca9db9f3ee007d40b85339f81a39ea3c1a22616'/>
<id>urn:sha1:8ca9db9f3ee007d40b85339f81a39ea3c1a22616</id>
<content type='text'>
	Replaced FileAllocationMan with
	SequentialPicker&lt;FileAllocationEntry&gt;.
	* src/BtCheckIntegrityEntry.cc
	* src/ConsoleStatCalc.cc
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/DownloadEngineFactory.cc
	* src/FileAllocationCommand.cc
	* src/FileAllocationDispatcherCommand.cc
	* src/FileAllocationMan.h
	* src/Makefile.am
	* src/SequentialPicker.h
	* src/StatCalc.h
	* src/StreamCheckIntegrityEntry.cc
	* test/Makefile.am
	* test/SequentialPickerTest.cc


</content>
</entry>
<entry>
<title>2008-05-11  Tatsuhiro Tsujikawa  &lt;tujikawa at rednoah dot com&gt;</title>
<updated>2008-05-11T09:36:39Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2008-05-11T09:36:39Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=825cfe7715fee70e08a76f87cf2803602d3c5fed'/>
<id>urn:sha1:825cfe7715fee70e08a76f87cf2803602d3c5fed</id>
<content type='text'>
	Pass std::deque&lt;Command*&gt; by reference to avoid unnecessary coping.
	* src/AbstractCommand.cc
	* src/BtCheckIntegrityEntry.cc
	* src/BtCheckIntegrityEntry.h
	* src/BtFileAllocationEntry.cc
	* src/BtFileAllocationEntry.h
	* src/BtSetup.cc
	* src/BtSetup.h
	* src/CheckIntegrityCommand.cc
	* src/CheckIntegrityEntry.h
	* src/ChecksumCheckIntegrityEntry.cc
	* src/ChecksumCheckIntegrityEntry.h
	* src/DHTSetup.cc
	* src/DHTSetup.h
	* src/DownloadEngine.cc
	* src/FileAllocationCommand.cc
	* src/FileAllocationEntry.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/StreamCheckIntegrityEntry.cc
	* src/StreamCheckIntegrityEntry.h
	* src/StreamFileAllocationEntry.cc
	* src/StreamFileAllocationEntry.h
	* src/TrackerWatcherCommand.cc
	* src/a2functional.h


</content>
</entry>
<entry>
<title>2008-04-27  Tatsuhiro Tsujikawa  &lt;tujikawa at rednoah dot com&gt;</title>
<updated>2008-04-27T02:22:14Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2008-04-27T02:22:14Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=1ef99931e131343f069a4b74edfc06196d72d85b'/>
<id>urn:sha1:1ef99931e131343f069a4b74edfc06196d72d85b</id>
<content type='text'>
	Rewritten Exception class. Throw exception object, not its pointer and
	catch by reference, so that remove problematic delete operator for
	catched exception.
	* src/Exception.cc
	* src/Exception.h
	* test/ExceptionTest.cc
	* src/*: All files throwing/catching exception.
	* test/*: All files throwing/catching exception.


</content>
</entry>
<entry>
<title>2008-04-20  Tatsuhiro Tsujikawa  &lt;tujikawa at rednoah dot com&gt;</title>
<updated>2008-04-20T05:42:15Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2008-04-20T05:42:15Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=c1c5e7369f77a1125b12ac58b8b30378858d9317'/>
<id>urn:sha1:c1c5e7369f77a1125b12ac58b8b30378858d9317</id>
<content type='text'>
	Eliminates the time lag between sequential downloads and 
commands in
	the same RequestGroup.
	In old implementation, aria2 occasionally waits 1 seconds before
	executing next command or RequestGroup.
	This is really a waste of time, and new implementation 
eliminates
	this unnecessary time lag.
	* src/AbstractCommand.cc
	* src/AutoSaveCommand.cc
	* src/CheckIntegrityCommand.cc
	* src/Command.{cc, h}
	* src/DownloadEngine.{cc, h}
	* src/DownloadEngineFactory.cc
	* src/FileAllocationCommand.cc
	* src/FileAllocationDispatcherCommand.cc
	* src/FillRequestGroupCommand.cc
	* src/FtpInitiateConnectionCommand.cc
	* src/HaveEraseCommand.cc
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpResponseCommand.cc
	* src/RealtimeCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroupMan.cc
	* src/StreamFileAllocationEntry.cc
	* src/TimeBasedCommand.{cc, h}
	* src/TimedHaltCommand.cc


</content>
</entry>
<entry>
<title>2008-02-24  Tatsuhiro Tsujikawa  &lt;tujikawa at rednoah dot com&gt;</title>
<updated>2008-02-24T09:43:31Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2008-02-24T09:43:31Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=5a4d691aedc422e04938db811f09ef7dcf1777c4'/>
<id>urn:sha1:5a4d691aedc422e04938db811f09ef7dcf1777c4</id>
<content type='text'>
	Rewritten itos and uitos using template. llitos and ullitos are
	replaced with itos and uitos respectively.
	* src/Util.{h, cc}
	* test/UtilTest.cc


</content>
</entry>
<entry>
<title>2008-02-08  Tatsuhiro Tsujikawa  &lt;tujikawa at rednoah dot com&gt;</title>
<updated>2008-02-08T15:53:45Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2008-02-08T15:53:45Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=1b7c1982896dba1d38e1fe84ba9660996607f5f9'/>
<id>urn:sha1:1b7c1982896dba1d38e1fe84ba9660996607f5f9</id>
<content type='text'>
	Removed "using namespace std;" from all sources. Appended std:: 
prefix to c++
	standard classes.
	Included string.h where mem* function are used.


</content>
</entry>
<entry>
<title>2007-11-28  Tatsuhiro Tsujikawa  &lt;tujikawa at rednoah dot com&gt;</title>
<updated>2007-11-28T14:22:28Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2007-11-28T14:22:28Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=5a2f398eca68b2b0330ddcec2b222bf76875f82f'/>
<id>urn:sha1:5a2f398eca68b2b0330ddcec2b222bf76875f82f</id>
<content type='text'>
	Added direct I/O support. The current implementation uses O_DIRECT,
	which is not posix standard and is tested on linux 2.6.21.
	Currently only file allocation uses direct I/O.
	* src/SingleFileAllocationIterator.{h, cc}
	* test/SingleFileAllocationIteratorTest.cc
	* src/MultiFileAllocationIterator.{h, cc}
	* test/MultiFileAllocationIteratorTest.cc
	* src/BinaryStream.h
	* src/DiskWriter.h
	* src/AbstractDiskWriter.{h, cc}
	* src/ByteArrayDiskWriter.h
	* src/DiskAdaptor.h
	* src/AbstractSingleDiskAdaptor.{h, cc}
	* src/MultiDiskAdaptor.{h, cc}
	* src/FileAllocationEntry.cc
	* src/Util.{h, cc}
	* src/OptionHandlerFactory.cc
	* src/prefs.h
	* src/version_usage.cc
	* src/option_processing.cc

	Moved FileAllocationMan::markCurrentFileAllocationEntryDone() to
	handleException.
	* src/MultiFileAllocationIterator.cc

	Added EINTR handling
	* src/SocketCore.cc


</content>
</entry>
<entry>
<title>2007-10-12  Tatsuhiro Tsujikawa  &lt;tujikawa at rednoah dot com&gt;</title>
<updated>2007-10-11T16:58:24Z</updated>
<author>
<name>Tatsuhiro Tsujikawa</name>
<email>tatsuhiro.t@gmail.com</email>
</author>
<published>2007-10-11T16:58:24Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/aria2/commit/?id=048a2cf59737f761876e81a77e8d064c45c752d7'/>
<id>urn:sha1:048a2cf59737f761876e81a77e8d064c45c752d7</id>
<content type='text'>
	Implemented BitTorrent/http/ftp integrated download.
	I've rewritten lots of files and now some headers have forward
	class declarations to reduce compile time.
	The implementation is extremely alpha stage, I recommend to use this
	for testing purpose only.


</content>
</entry>
</feed>
