← Back to team overview

linuxdcpp-team team mailing list archive

[Branch ~dcplusplus-team/dcplusplus/trunk] Rev 3299: no "force attempt" for HTTP DLs after all

 

------------------------------------------------------------
revno: 3299
committer: poy <poy@xxxxxxxxxx>
branch nick: trunk
timestamp: Sun 2013-05-19 17:26:34 +0200
message:
  no "force attempt" for HTTP DLs after all
modified:
  dcpp/HttpManager.cpp
  dcpp/HttpManager.h
  win32/TransferView.cpp
  win32/TransferView.h


--
lp:dcplusplus
https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk

Your team Dcplusplus-team is subscribed to branch lp:dcplusplus.
To unsubscribe from this branch go to https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk/+edit-subscription
=== modified file 'dcpp/HttpManager.cpp'
--- dcpp/HttpManager.cpp	2013-05-19 14:35:33 +0000
+++ dcpp/HttpManager.cpp	2013-05-19 15:26:34 +0000
@@ -68,29 +68,6 @@
 	}
 }
 
-void HttpManager::force(const string& url) {
-	HttpConnection* c = nullptr;
-
-	{
-		Lock l(cs);
-		for(auto& conn: conns) {
-			if(conn.c->getUrl() == url) {
-				if(conn.remove && !conn.success) {
-					conn.remove = 0;
-					c = conn.c;
-				}
-				break;
-			}
-		}
-	}
-
-	if(c) {
-		fire(HttpManagerListener::Removed(), c);
-		fire(HttpManagerListener::Added(), c);
-		c->download();
-	}
-}
-
 void HttpManager::shutdown() {
 	TimerManager::getInstance()->removeListener(this);
 
@@ -107,7 +84,7 @@
 	auto c = new HttpConnection();
 	{
 		Lock l(cs);
-		Conn conn { c, stream ? stream : new StringOutputStream(), !stream, false, 0 };
+		Conn conn { c, stream ? stream : new StringOutputStream(), !stream, 0 };
 		conns.push_back(move(conn));
 	}
 	c->addListener(this);
@@ -177,9 +154,7 @@
 	OutputStream* stream;
 	{
 		Lock l(cs);
-		auto conn = findConn(c);
-		conn->success = true;
-		stream = conn->stream;
+		stream = findConn(c)->stream;
 	}
 	stream->flush();
 	fire(HttpManagerListener::Complete(), c, stream);

=== modified file 'dcpp/HttpManager.h'
--- dcpp/HttpManager.h	2013-05-19 14:35:33 +0000
+++ dcpp/HttpManager.h	2013-05-19 15:26:34 +0000
@@ -49,12 +49,11 @@
 	HttpConnection* download(string url, const StringMap& postData, OutputStream* stream = nullptr);
 
 	void disconnect(const string& url);
-	void force(const string& url);
 
 	void shutdown();
 
 private:
-	struct Conn { HttpConnection* c; OutputStream* stream; bool manageStream; bool success; uint64_t remove; };
+	struct Conn { HttpConnection* c; OutputStream* stream; bool manageStream; uint64_t remove; };
 
 	friend class Singleton<HttpManager>;
 

=== modified file 'win32/TransferView.cpp'
--- win32/TransferView.cpp	2013-05-16 21:03:53 +0000
+++ win32/TransferView.cpp	2013-05-19 15:26:34 +0000
@@ -441,10 +441,6 @@
 	}
 }
 
-void TransferView::HttpInfo::force() {
-	HttpManager::getInstance()->force(path);
-}
-
 void TransferView::HttpInfo::disconnect() {
 	HttpManager::getInstance()->disconnect(path);
 }
@@ -485,12 +481,17 @@
 		appendUserItems(mdi, menu.get(), false);
 
 		set<TransferInfo*> files;
+		auto onlyHttp = true;
 		for(auto i: sel) {
 			auto& transfer = transfers->getData(i)->transfer();
-			if(!dynamic_cast<HttpInfo*>(&transfer) && !transfer.getText(COLUMN_FILE).empty()) {
-				files.insert(&transfer);
+			if(!dynamic_cast<HttpInfo*>(&transfer)) {
+				onlyHttp = false;
+				if(!transfer.getText(COLUMN_FILE).empty()) {
+					files.insert(&transfer);
+				}
 			}
 		}
+
 		if(files.size() == 1) {
 			menu->appendSeparator();
 			transfer = *files.begin();
@@ -515,9 +516,11 @@
 		}
 		menu->appendShellMenu(paths);
 
-		menu->appendSeparator();
-		menu->appendItem(T_("&Force attempt"), [this] { handleForce(); });
-		menu->appendSeparator();
+		if(!onlyHttp) {
+			menu->appendSeparator();
+			menu->appendItem(T_("&Force attempt"), [this] { handleForce(); });
+			menu->appendSeparator();
+		}
 		menu->appendItem(T_("&Disconnect"), [this] { handleDisconnect(); });
 
 		WinUtil::addCopyMenu(menu.get(), transfers);

=== modified file 'win32/TransferView.h'
--- win32/TransferView.h	2013-05-16 21:03:53 +0000
+++ win32/TransferView.h	2013-05-19 15:26:34 +0000
@@ -160,7 +160,6 @@
 
 		void update(const UpdateInfo& ui);
 
-		virtual void force();
 		virtual void disconnect();
 
 		Status status;