diff --git a/neo/client/app.py b/neo/client/app.py index fb96fdf89c432d9b7c2545c96a306a1ecc108d2e..d52208551614d85ac75e5ee66da07564cc9014d2 100644 --- a/neo/client/app.py +++ b/neo/client/app.py @@ -439,7 +439,35 @@ class Application(object): @profiler_decorator def _load(self, oid, serial=None, tid=None, cache=0): - """Internal method which manage load ,loadSerial and loadBefore.""" + """ + Internal method which manage load, loadSerial and loadBefore. + OID and TID (serial) parameters are expected packed. + oid + OID of object to get. + serial + If given, the exact serial at which OID is desired. + tid should be None. + tid + If given, the excluded upper bound serial at which OID is desired. + serial should be None. + cache + Store data in cache for future lookups. + + Return value: (3-tuple) + - Object data (None if object creation was undone). + - Serial of given data. + - Next serial at which object exists, or None. Only set when tid + parameter is not None. + + Exceptions: + NEOStorageError + technical problem + NEOStorageNotFoundError + object exists but no data satisfies given parameters + object doesn't exist + """ + # TODO: + # - rename parameters (here and in handlers & packet definitions) cell_list = self._getCellListForOID(oid, readable=True) if len(cell_list) == 0: # No cells available, so why are we running ?