diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-02-25 14:40:18 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-02-25 14:40:18 +0000 |
| commit | 3880a5f71b1ffde3779b3cad3519e150341bfda7 (patch) | |
| tree | 2d6de19d1a5c042610796a7d4b63783c77c2faf3 /src/MetalinkParserController.h | |
| parent | fa6fd758afc1dea263a43c3e21ed7b1b8ad0773c (diff) | |
2010-02-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added Metalink4 support. Currently, name attribute of
metalink::metaurl is ignored and multi-file torrent cannot be used
with Metalink4.
* doc/aria2c.1.txt
* src/DownloadHandlerConstants.cc
* src/ExpatMetalinkProcessor.cc
* src/Makefile.am
* src/Metalink2RequestGroup.cc
* src/MetalinkEntry.cc
* src/MetalinkEntry.h
* src/MetalinkParserController.cc
* src/MetalinkParserController.h
* src/MetalinkParserState.h
* src/MetalinkParserStateImpl.cc
* src/MetalinkParserStateImpl.h
* src/MetalinkParserStateMachine.cc
* src/MetalinkParserStateMachine.h
* src/MetalinkParserStateV3Impl.cc
* src/MetalinkParserStateV3Impl.h
* src/MetalinkParserStateV4Impl.cc
* src/MetalinkParserStateV4Impl.h
* src/MetalinkResource.cc
* src/MetalinkResource.h
* src/Metalinker.cc
* src/RequestGroup.cc
* src/RequestGroup.h
* src/XML2SAXMetalinkProcessor.cc
* src/messageDigest.cc
* src/util.cc
* src/util.h
* test/Makefile.am
* test/MetalinkEntryTest.cc
* test/MetalinkParserControllerTest.cc
* test/MetalinkProcessorTest.cc
* test/MetalinkerTest.cc
* test/UtilTest.cc
* test/metalink4-attrs.xml
* test/metalink4-dirtraversal.xml
* test/metalink4.xml
Diffstat (limited to 'src/MetalinkParserController.h')
| -rw-r--r-- | src/MetalinkParserController.h | 51 |
1 files changed, 35 insertions, 16 deletions
diff --git a/src/MetalinkParserController.h b/src/MetalinkParserController.h index 78343cde..2dd94843 100644 --- a/src/MetalinkParserController.h +++ b/src/MetalinkParserController.h @@ -36,11 +36,13 @@ #define _D_METALINK_PARSER_CONTROLLER_H_ #include "common.h" -#include "SharedHandle.h" + #include <string> #include <utility> #include <deque> +#include "SharedHandle.h" + namespace aria2 { class Metalinker; @@ -64,11 +66,16 @@ private: #ifdef ENABLE_MESSAGE_DIGEST SharedHandle<Checksum> _tChecksum; - SharedHandle<ChunkChecksum> _tChunkChecksum; + SharedHandle<ChunkChecksum> _tChunkChecksumV4; // Metalink4Spec + + std::deque<std::string> _tempChunkChecksumsV4; // Metalink4Spec + + SharedHandle<ChunkChecksum> _tChunkChecksum; // Metalink3Spec + + std::deque<std::pair<size_t, std::string> > _tempChunkChecksums;//Metalink3Spec + + std::pair<size_t, std::string> _tempHashPair; // Metalink3Spec - std::deque<std::pair<size_t, std::string> > _tempChunkChecksums; - - std::pair<size_t, std::string> _tempHashPair; #endif // ENABLE_MESSAGE_DIGEST SharedHandle<Signature> _tSignature; @@ -110,7 +117,7 @@ public: void setLocationOfResource(const std::string& location); - void setPreferenceOfResource(int preference); + void setPriorityOfResource(int priority); void setMaxConnectionsOfResource(int maxConnections); @@ -127,24 +134,36 @@ public: void commitChecksumTransaction(); void cancelChecksumTransaction(); - - void newChunkChecksumTransaction(); - void setTypeOfChunkChecksum(const std::string& type); + void newChunkChecksumTransactionV4(); // Metalink4Spec + + void setTypeOfChunkChecksumV4(const std::string& type); // Metalink4Spec + + void setLengthOfChunkChecksumV4(size_t length); // Metalink4Spec + + void addHashOfChunkChecksumV4(const std::string& md); // Metalink4Spec + + void commitChunkChecksumTransactionV4(); // Metalink4Spec + + void cancelChunkChecksumTransactionV4(); // Metalink4Spec + + void newChunkChecksumTransaction(); // Metalink3Spec + + void setTypeOfChunkChecksum(const std::string& type); // Metalink3Spec - void setLengthOfChunkChecksum(size_t length); + void setLengthOfChunkChecksum(size_t length); // Metalink3Spec - void addHashOfChunkChecksum(size_t order, const std::string& md); + void addHashOfChunkChecksum(size_t order, const std::string& md);// Metalink3Spec - void createNewHashOfChunkChecksum(size_t order); + void createNewHashOfChunkChecksum(size_t order); // Metalink3Spec - void setMessageDigestOfChunkChecksum(const std::string& md); + void setMessageDigestOfChunkChecksum(const std::string& md); // Metalink3Spec - void addHashOfChunkChecksum(); + void addHashOfChunkChecksum(); // Metalink3Spec - void commitChunkChecksumTransaction(); + void commitChunkChecksumTransaction(); // Metalink3Spec - void cancelChunkChecksumTransaction(); + void cancelChunkChecksumTransaction(); // Metalink3Spec void newSignatureTransaction(); |
