mutable/retrieve.py: clean up control flow to avoid dropping errors
authorBrian Warner <warner@lothar.com>
Sun, 8 Jan 2012 02:12:51 +0000 (18:12 -0800)
committerBrian Warner <warner@lothar.com>
Sun, 8 Jan 2012 22:12:48 +0000 (14:12 -0800)
commit893eea849ba7cf788295679875c319ff509aaba8
tree4e79a1b95f0823a29ff0844fc307e494b29ef6d7
parentc56839478ef395f6b2bcaedee1fe2aeae0d75903
mutable/retrieve.py: clean up control flow to avoid dropping errors

* replace DeferredList with gatherResults, simplify result handling
* use BadShareError to signal recoverable problems in either fetch or
  validate, catch after _validate_block
* _validate_block is thus not responsible for noticing fetch problems
* rename _validation_or_decoding_failed() to _handle_bad_share()
* _get_needed_hashes() returns two Deferreds, instead of a hard-to-unpack
  DeferredList
src/allmydata/mutable/retrieve.py