Commit graph

334 commits

Author SHA1 Message Date
ThomasV
8620019f92 Merge pull request #1222 from kyuupichan/if_notification
Put interface notification handling in its own function.
2015-05-21 15:05:07 +02:00
ThomasV
5bd22d2378 follow-up to bd781d600b: use pipe 2015-05-21 12:50:26 +02:00
Neil Booth
c9a30eb5f2 Put interface notification handling in its own function. 2015-05-21 17:45:37 +09:00
Neil Booth
bd781d600b Have queues passed to the network constructor.
This is somewhat cleaner as the proxy's pipe and network setup
was awkwardly interleaved.  It also means network's constructor
is free to use both; currently some code is working around the
fact that the response queue doesn't exist in the constructor.
2015-05-21 12:49:39 +09:00
ThomasV
2104e96a66 network: use get_nowait on one of the two queues 2015-05-19 10:22:25 +02:00
Neil Booth
63733ccd2a No need for thread to handle requests
Handle requests in the main loop.
Remove unused lock.
interface.py was reworked and send_request() no longer throws.
2015-05-19 14:29:10 +09:00
ThomasV
e33bc2473b network: don't store unanswered request if result is in cache 2015-05-17 09:00:36 +02:00
ThomasV
6d0bc5d9b3 fix: nodes retry 2015-05-17 08:41:01 +02:00
ThomasV
44f06de796 network: when interface is disconnected, clear cache and resend unanswered requests 2015-05-15 14:47:59 +02:00
ThomasV
a1d1999545 move interfaces maintenance to its own function 2015-05-08 20:13:18 +02:00
ThomasV
f2c2f9d738 network: fix confusion between addresses and cached responses 2015-05-08 17:59:33 +02:00
ThomasV
233fd8ed77 revert 175bfae9e6. store last known height in wallet instead 2015-05-08 13:43:42 +02:00
ThomasV
ffda5cd866 Merge pull request #1187 from kyuupichan/local_height
Move away from requiring network and blockchain objects to be able to re...
2015-05-06 17:45:42 +02:00
Neil Booth
c07e956127 Pass the response_queue to the constructor, not start().
Removes an unnecessary Thread base-class override.  The python
documentation also strongly discourages overriding anything other
than run().
2015-05-05 20:37:25 +09:00
Neil Booth
9cf2eff16b Make is_connected into a member function. No change in logic. 2015-05-05 20:00:10 +09:00
Neil Booth
175bfae9e6 Move away from requiring network and blockchain objects to be able to request local height.
We store it in the config object instead of in the blockchain object.
The blockchain object now refers to its config, and calls refresh_height() to update it.
The network objects also refer to the config rather than the blockchain.

This is the first of many small steps to untangle the verifier from stored state and so
permit the history tab to work in offline mode.  The refactoring will simultaneously clean
up a lot of accumulated cruft.
2015-05-03 15:19:29 +09:00
ThomasV
cdd5d6e130 fix #1136 2015-04-09 19:05:11 +02:00
ThomasV
911a60c02d separate timeouts for server and nodes retry 2015-04-02 15:12:01 +02:00
ThomasV
98cc9c53d1 do not write config file from network class 2015-04-02 10:50:09 +02:00
ThomasV
a805afa900 save recent_servers in separate file 2015-04-02 10:12:51 +02:00
ThomasV
cf0fcac9fa fix deserialize_server bug 2015-03-28 19:17:07 +01:00
ThomasV
a4cb70649d fix synchronizer hanging when not connected. 2015-03-14 08:43:43 +01:00
ThomasV
72688a5cfa clean implementation of daemon threads 2015-03-13 23:04:29 +01:00
ThomasV
9e4eda24b5 fix #1082 2015-03-13 12:00:08 +01:00
ThomasV
f32f1183fc print_error methods. request timeout for interface 2015-03-12 21:39:05 +01:00
ThomasV
1569cd0420 serialize/deserialize methods for servers 2015-03-12 18:06:28 +01:00
ThomasV
c4d0314817 network: separate interface management from reconnection logic 2015-03-12 17:44:16 +01:00
ThomasV
799a08514b move proxy logic to network.py. reload socket module if proxy is disabled 2015-03-12 12:56:06 +01:00
ThomasV
0947eb7960 should test proxy_str. fixes issue #1073 2015-03-10 09:05:44 +01:00
ThomasV
73d8ba24d9 fix network connection issues 2015-03-07 22:47:25 +01:00
ThomasV
e9b06f494d abort set_parameters if changes are not allowed by config 2015-03-01 07:27:05 +01:00
ThomasV
7a9141e509 deserialize network.proxy to prevent variability 2015-02-28 20:04:03 +01:00
ThomasV
510934d545 do not store protocol explicitly 2015-02-28 15:37:50 +01:00
ThomasV
f489466709 fix: notify proxy when switching server 2015-02-28 14:08:58 +01:00
ThomasV
761871b900 sanitize server and protocol 2015-02-25 17:14:31 +01:00
ThomasV
e389745491 remove appdata_dir and data_dir 2015-02-18 18:48:32 +01:00
ThomasV
03a88743a3 fix typo: stdout 2015-02-11 21:05:33 +01:00
ThomasV
3c6cfc8b70 disable server selector if server is passed from cmd line 2015-01-29 13:35:19 +01:00
ThomasV
8ca17a3e70 print traceback is an exception occurs in network.process_request 2015-01-29 11:32:58 +01:00
ThomasV
30763a6555 fix config: serialize/deserialize proxy 2015-01-29 11:21:17 +01:00
Tafelpoot
d9c5250a6f removed trailing whitespace and fixed indentation in history widget 2014-10-21 19:05:51 +02:00
ThomasV
b8f971fcd6 force reconnect after delay 2014-09-16 12:21:01 +02:00
ThomasV
90590f70ab reconnect to main server after timeout 2014-09-14 14:27:39 +02:00
Eagle[TM]
a7cd8b5e9f Update default server list 2014-08-19 14:41:27 +02:00
ThomasV
854f49fbed fix number of interfaces being opened 2014-08-17 11:48:46 +02:00
ThomasV
ecdb90b0b7 re-use pending_servers to avoid sending unnecessary notifications 2014-08-04 11:29:58 +02:00
ThomasV
642258ebaa notify about interfaces 2014-07-30 11:27:52 +02:00
ThomasV
858ff86660 network: disconnected retry interval 2014-07-30 10:43:15 +02:00
ThomasV
ec5478c328 don't use pending_servers 2014-07-30 10:19:15 +02:00
ThomasV
517f649532 fix: missing break 2014-07-29 17:53:31 +02:00