summaryrefslogtreecommitdiff
path: root/src/MetalinkParserController.h
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-02-25 14:40:18 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-02-25 14:40:18 +0000
commit3880a5f71b1ffde3779b3cad3519e150341bfda7 (patch)
tree2d6de19d1a5c042610796a7d4b63783c77c2faf3 /src/MetalinkParserController.h
parentfa6fd758afc1dea263a43c3e21ed7b1b8ad0773c (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.h51
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();