File tree Expand file tree Collapse file tree 2 files changed +10
-6
lines changed
lib_common/src/d1_common/iter Expand file tree Collapse file tree 2 files changed +10
-6
lines changed Original file line number Diff line number Diff line change @@ -255,10 +255,10 @@ def get_checksum(request, pid):
255255 )
256256
257257 sciobj_model = d1_gmn .app .models .ScienceObject .objects .get (pid__did = pid )
258- with _get_sciobj_iter (sciobj_model ) as sciobj_iter :
259- checksum_obj = d1_common .checksum .create_checksum_object_from_iterator (
260- sciobj_iter , algorithm
261- )
258+ sciobj_iter = _get_sciobj_iter (sciobj_model )
259+ checksum_obj = d1_common .checksum .create_checksum_object_from_iterator (
260+ sciobj_iter , algorithm
261+ )
262262 # Log the access of this object.
263263 # TODO: look into log type other than 'read'
264264 d1_gmn .app .event_log .log_read_event (pid , request )
Original file line number Diff line number Diff line change @@ -46,8 +46,7 @@ def __enter__(self):
4646 return self
4747
4848 def __exit__ (self , type , value , traceback ):
49- if hasattr (self ._stream , "close" ):
50- self ._stream .close ()
49+ self .close ()
5150
5251 def __iter__ (self ):
5352 """Returns: Chunks of ``read()`` on stream.
@@ -59,6 +58,7 @@ def __iter__(self):
5958 while True :
6059 chunk_str = self ._stream .read (self ._chunk_size )
6160 if not chunk_str :
61+ self .close ()
6262 break
6363 yield chunk_str
6464
@@ -78,3 +78,7 @@ def size(self):
7878 size = self ._stream .seek (0 , os .SEEK_END )
7979 self ._stream .seek (cur_pos )
8080 return size
81+
82+ def close (self ):
83+ if hasattr (self ._stream , "close" ):
84+ self ._stream .close ()
You can’t perform that action at this time.
0 commit comments