فهرست منبع

Cleanup AbstractCommand take 2

Decided to keep the 'if(' -> 'if (' stuff, as I formatted the whole file
and so it is internally consistent within the file. Also, too much
hassle.
Nils Maier 11 سال پیش
والد
کامیت
8cada49765
5فایلهای تغییر یافته به همراه540 افزوده شده و 453 حذف شده
  1. 495 432
      src/AbstractCommand.cc
  2. 38 19
      src/AbstractCommand.h
  3. 1 1
      src/ConnectCommand.cc
  4. 1 1
      src/ConnectCommand.h
  5. 5 0
      src/RequestGroup.h

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 495 - 432
src/AbstractCommand.cc


+ 38 - 19
src/AbstractCommand.h

@@ -62,7 +62,8 @@ class AsyncNameResolver;
 class AsyncNameResolverMan;
 #endif // ENABLE_ASYNC_DNS
 
-class AbstractCommand : public Command {
+class AbstractCommand : public Command
+{
 private:
   std::shared_ptr<Request> req_;
   std::shared_ptr<FileEntry> fileEntry_;
@@ -78,7 +79,7 @@ private:
   RequestGroup* requestGroup_;
   DownloadEngine* e_;
 
-  std::vector<std::shared_ptr<Segment> > segments_;
+  std::vector<std::shared_ptr<Segment>> segments_;
 
   Timer checkPoint_;
   Timer serverStatTimer_;
@@ -90,8 +91,11 @@ private:
   bool incNumConnection_;
 
   int32_t calculateMinSplitSize() const;
+
   void useFasterRequest(const std::shared_ptr<Request>& fasterRequest);
 
+  bool shouldProcess() const;
+
 public:
   RequestGroup* getRequestGroup() const
   {
@@ -140,7 +144,7 @@ public:
     return socketRecvBuffer_;
   }
 
-  const std::vector<std::shared_ptr<Segment> >& getSegments() const
+  const std::vector<std::shared_ptr<Segment>>& getSegments() const
   {
     return segments_;
   }
@@ -150,26 +154,32 @@ public:
   // return empty string. In this case, call this function with same
   // arguments until resolved address is returned.  Exception is
   // thrown on error. port is used for retrieving cached addresses.
-  std::string resolveHostname
-  (std::vector<std::string>& addrs, const std::string& hostname, uint16_t port);
+  std::string resolveHostname(std::vector<std::string>& addrs,
+                              const std::string& hostname,
+                              uint16_t port);
 
   void tryReserved();
 
   void setReadCheckSocket(const std::shared_ptr<SocketCore>& socket);
+
   void setWriteCheckSocket(const std::shared_ptr<SocketCore>& socket);
+
   void disableReadCheckSocket();
+
   void disableWriteCheckSocket();
 
   /**
    * If pred == true, calls setReadCheckSocket(socket). Otherwise, calls
    * disableReadCheckSocket().
    */
-  void setReadCheckSocketIf(const std::shared_ptr<SocketCore>& socket, bool pred);
+  void setReadCheckSocketIf(const std::shared_ptr<SocketCore>& socket,
+                            bool pred);
   /**
    * If pred == true, calls setWriteCheckSocket(socket). Otherwise, calls
    * disableWriteCheckSocket().
    */
-  void setWriteCheckSocketIf(const std::shared_ptr<SocketCore>& socket, bool pred);
+  void setWriteCheckSocketIf(const std::shared_ptr<SocketCore>& socket,
+                             bool pred);
 
   // Swaps socket_ with socket. This disables current read and write
   // check.
@@ -180,7 +190,10 @@ public:
     return timeout_;
   }
 
-  void setTimeout(time_t timeout) { timeout_ = timeout; }
+  void setTimeout(time_t timeout)
+  {
+    timeout_ = timeout;
+  }
 
   void prepareForNextAction(std::unique_ptr<CheckIntegrityEntry> checkEntry);
 
@@ -189,11 +202,10 @@ public:
   // InitiateConnectionCommandFactory and it is pushed to
   // DownloadEngine and returns false. If no addresses left, DlRetryEx
   // exception is thrown.
-  bool checkIfConnectionEstablished
-  (const std::shared_ptr<SocketCore>& socket,
-   const std::string& connectedHostname,
-   const std::string& connectedAddr,
-   uint16_t connectedPort);
+  bool checkIfConnectionEstablished(const std::shared_ptr<SocketCore>& socket,
+                                    const std::string& connectedHostname,
+                                    const std::string& connectedAddr,
+                                    uint16_t connectedPort);
 
   /*
    * Returns true if proxy for the procol indicated by Request::getProtocol()
@@ -225,33 +237,40 @@ public:
   void checkSocketRecvBuffer();
 
   void addCommandSelf();
+
 protected:
   virtual bool prepareForRetry(time_t wait);
+
   virtual void onAbort();
+
   virtual bool executeInternal() = 0;
+
   // Returns true if the derived class wants to execute
   // executeInternal() unconditionally
-  virtual bool noCheck()
+  virtual bool noCheck() const
   {
     return false;
   }
 
 public:
-  AbstractCommand(cuid_t cuid, const std::shared_ptr<Request>& req,
+  AbstractCommand(cuid_t cuid,
+                  const std::shared_ptr<Request>& req,
                   const std::shared_ptr<FileEntry>& fileEntry,
-                  RequestGroup* requestGroup, DownloadEngine* e,
+                  RequestGroup* requestGroup,
+                  DownloadEngine* e,
                   const std::shared_ptr<SocketCore>& s = nullptr,
-                  const std::shared_ptr<SocketRecvBuffer>& socketRecvBuffer = nullptr,
+                  const std::shared_ptr<SocketRecvBuffer>& socketRecvBuffer =
+                      nullptr,
                   bool incNumConnection = true);
 
   virtual ~AbstractCommand();
+
   virtual bool execute() CXX11_OVERRIDE;
 };
 
 // Returns proxy URI for given protocol.  If no proxy URI is defined,
 // then returns an empty string.
-std::string getProxyUri
-(const std::string& protocol, const Option* option);
+std::string getProxyUri(const std::string& protocol, const Option* option);
 
 } // namespace aria2
 

+ 1 - 1
src/ConnectCommand.cc

@@ -115,7 +115,7 @@ bool ConnectCommand::executeInternal()
   return true;
 }
 
-bool ConnectCommand::noCheck()
+bool ConnectCommand::noCheck() const
 {
   return backupConnectionInfo_ && !backupConnectionInfo_->ipaddr.empty();
 }

+ 1 - 1
src/ConnectCommand.h

@@ -58,7 +58,7 @@ public:
   const std::shared_ptr<Request>& getProxyRequest() const;
 protected:
   virtual bool executeInternal() CXX11_OVERRIDE;
-  virtual bool noCheck() CXX11_OVERRIDE;
+  virtual bool noCheck() const CXX11_OVERRIDE;
 private:
   std::shared_ptr<Request> proxyRequest_;
   std::shared_ptr<BackupConnectInfo> backupConnectionInfo_;

+ 5 - 0
src/RequestGroup.h

@@ -241,6 +241,11 @@ public:
 
   int64_t getCompletedLength() const;
 
+  inline int64_t getPendingLength() const
+  {
+    return getTotalLength() - getCompletedLength();
+  }
+
   /**
    * Compares expected filename with specified actualFilename.
    * The expected filename refers to FileEntry::getBasename() of the first

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است