mirror of https://github.com/aria2/aria2
				
				
				
			2010-06-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made protected member variable private. * src/UTMetadataDataExtensionMessage.cc * src/UTMetadataExtensionMessage.h * src/UTMetadataRejectExtensionMessage.cc * src/UTMetadataRequestExtensionMessage.ccpull/1/head
							parent
							
								
									706230c21f
								
							
						
					
					
						commit
						fd129ba6f4
					
				| 
						 | 
				
			
			@ -1,3 +1,11 @@
 | 
			
		|||
2010-06-12  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
 | 
			
		||||
 | 
			
		||||
	Made protected member variable private.
 | 
			
		||||
	* src/UTMetadataDataExtensionMessage.cc
 | 
			
		||||
	* src/UTMetadataExtensionMessage.h
 | 
			
		||||
	* src/UTMetadataRejectExtensionMessage.cc
 | 
			
		||||
	* src/UTMetadataRequestExtensionMessage.cc
 | 
			
		||||
 | 
			
		||||
2010-06-12  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
 | 
			
		||||
 | 
			
		||||
	Renamed member variables
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -57,28 +57,28 @@ std::string UTMetadataDataExtensionMessage::getPayload()
 | 
			
		|||
{
 | 
			
		||||
  BDE dict = BDE::dict();
 | 
			
		||||
  dict["msg_type"] = 1;
 | 
			
		||||
  dict["piece"] = _index;
 | 
			
		||||
  dict["piece"] = getIndex();
 | 
			
		||||
  dict["total_size"] = _totalSize;
 | 
			
		||||
  return bencode::encode(dict)+_data;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
std::string UTMetadataDataExtensionMessage::toString() const
 | 
			
		||||
{
 | 
			
		||||
  return strconcat("ut_metadata data piece=", util::uitos(_index));
 | 
			
		||||
  return strconcat("ut_metadata data piece=", util::uitos(getIndex()));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void UTMetadataDataExtensionMessage::doReceivedAction()
 | 
			
		||||
{
 | 
			
		||||
  if(_tracker->tracks(_index)) {
 | 
			
		||||
  if(_tracker->tracks(getIndex())) {
 | 
			
		||||
    if(_logger->debug()) {
 | 
			
		||||
      _logger->debug("ut_metadata index=%lu found in tracking list",
 | 
			
		||||
                     static_cast<unsigned long>(_index));
 | 
			
		||||
                     static_cast<unsigned long>(getIndex()));
 | 
			
		||||
    }
 | 
			
		||||
    _tracker->remove(_index);
 | 
			
		||||
    _tracker->remove(getIndex());
 | 
			
		||||
    _pieceStorage->getDiskAdaptor()->writeData
 | 
			
		||||
      (reinterpret_cast<const unsigned char*>(_data.c_str()), _data.size(),
 | 
			
		||||
       _index*METADATA_PIECE_SIZE);
 | 
			
		||||
    _pieceStorage->completePiece(_pieceStorage->getPiece(_index));
 | 
			
		||||
       getIndex()*METADATA_PIECE_SIZE);
 | 
			
		||||
    _pieceStorage->completePiece(_pieceStorage->getPiece(getIndex()));
 | 
			
		||||
    if(_pieceStorage->downloadFinished()) {
 | 
			
		||||
      std::string metadata = util::toString(_pieceStorage->getDiskAdaptor());
 | 
			
		||||
      unsigned char infoHash[INFO_HASH_LENGTH];
 | 
			
		||||
| 
						 | 
				
			
			@ -99,7 +99,7 @@ void UTMetadataDataExtensionMessage::doReceivedAction()
 | 
			
		|||
  } else {
 | 
			
		||||
    if(_logger->debug()) {
 | 
			
		||||
      _logger->debug("ut_metadata index=%lu is not tracked",
 | 
			
		||||
                     static_cast<unsigned long>(_index));
 | 
			
		||||
                     static_cast<unsigned long>(getIndex()));
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -40,7 +40,7 @@
 | 
			
		|||
namespace aria2 {
 | 
			
		||||
 | 
			
		||||
class UTMetadataExtensionMessage:public ExtensionMessage {
 | 
			
		||||
protected:
 | 
			
		||||
private:
 | 
			
		||||
  uint8_t _extensionMessageID;
 | 
			
		||||
 | 
			
		||||
  size_t _index;
 | 
			
		||||
| 
						 | 
				
			
			@ -64,7 +64,7 @@ public:
 | 
			
		|||
    _index = index;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  size_t getIndex()
 | 
			
		||||
  size_t getIndex() const
 | 
			
		||||
  {
 | 
			
		||||
    return _index;
 | 
			
		||||
  }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -49,13 +49,13 @@ std::string UTMetadataRejectExtensionMessage::getPayload()
 | 
			
		|||
{
 | 
			
		||||
  BDE dict = BDE::dict();
 | 
			
		||||
  dict["msg_type"] = 2;
 | 
			
		||||
  dict["piece"] = _index;
 | 
			
		||||
  dict["piece"] = getIndex();
 | 
			
		||||
  return bencode::encode(dict);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
std::string UTMetadataRejectExtensionMessage::toString() const
 | 
			
		||||
{
 | 
			
		||||
  return strconcat("ut_metadata reject piece=", util::uitos(_index));
 | 
			
		||||
  return strconcat("ut_metadata reject piece=", util::uitos(getIndex()));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void UTMetadataRejectExtensionMessage::doReceivedAction()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -59,13 +59,13 @@ std::string UTMetadataRequestExtensionMessage::getPayload()
 | 
			
		|||
{
 | 
			
		||||
  BDE dict = BDE::dict();
 | 
			
		||||
  dict["msg_type"] = 0;
 | 
			
		||||
  dict["piece"] = _index;
 | 
			
		||||
  dict["piece"] = getIndex();
 | 
			
		||||
  return bencode::encode(dict);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
std::string UTMetadataRequestExtensionMessage::toString() const
 | 
			
		||||
{
 | 
			
		||||
  return strconcat("ut_metadata request piece=", util::uitos(_index));
 | 
			
		||||
  return strconcat("ut_metadata request piece=", util::uitos(getIndex()));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void UTMetadataRequestExtensionMessage::doReceivedAction()
 | 
			
		||||
| 
						 | 
				
			
			@ -75,27 +75,29 @@ void UTMetadataRequestExtensionMessage::doReceivedAction()
 | 
			
		|||
  if(!attrs.containsKey(bittorrent::METADATA)) {
 | 
			
		||||
    SharedHandle<UTMetadataRejectExtensionMessage> m
 | 
			
		||||
      (new UTMetadataRejectExtensionMessage(id));
 | 
			
		||||
    m->setIndex(_index);
 | 
			
		||||
    m->setIndex(getIndex());
 | 
			
		||||
    SharedHandle<BtMessage> msg = _messageFactory->createBtExtendedMessage(m);
 | 
			
		||||
    _dispatcher->addMessageToQueue(msg);
 | 
			
		||||
  }else if(_index*METADATA_PIECE_SIZE <
 | 
			
		||||
  }else if(getIndex()*METADATA_PIECE_SIZE <
 | 
			
		||||
           (size_t)attrs[bittorrent::METADATA_SIZE].i()){
 | 
			
		||||
    SharedHandle<UTMetadataDataExtensionMessage> m
 | 
			
		||||
      (new UTMetadataDataExtensionMessage(id));
 | 
			
		||||
    m->setIndex(_index);
 | 
			
		||||
    m->setIndex(getIndex());
 | 
			
		||||
    m->setTotalSize(attrs[bittorrent::METADATA_SIZE].i());
 | 
			
		||||
    const BDE& metadata = attrs[bittorrent::METADATA];
 | 
			
		||||
    std::string::const_iterator begin =
 | 
			
		||||
      metadata.s().begin()+_index*METADATA_PIECE_SIZE;
 | 
			
		||||
      metadata.s().begin()+getIndex()*METADATA_PIECE_SIZE;
 | 
			
		||||
    std::string::const_iterator end =
 | 
			
		||||
      (_index+1)*METADATA_PIECE_SIZE <= metadata.s().size()?
 | 
			
		||||
      metadata.s().begin()+(_index+1)*METADATA_PIECE_SIZE:metadata.s().end();
 | 
			
		||||
      (getIndex()+1)*METADATA_PIECE_SIZE <= metadata.s().size()?
 | 
			
		||||
      metadata.s().begin()+(getIndex()+1)*METADATA_PIECE_SIZE:
 | 
			
		||||
      metadata.s().end();
 | 
			
		||||
    m->setData(std::string(begin, end));
 | 
			
		||||
    SharedHandle<BtMessage> msg = _messageFactory->createBtExtendedMessage(m);
 | 
			
		||||
    _dispatcher->addMessageToQueue(msg);
 | 
			
		||||
  } else {
 | 
			
		||||
    throw DL_ABORT_EX
 | 
			
		||||
      (StringFormat("Metadata piece index is too big. piece=%d", _index).str());
 | 
			
		||||
      (StringFormat
 | 
			
		||||
       ("Metadata piece index is too big. piece=%d", getIndex()).str());
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue