MCPcopy Create free account
hub / github.com/Dispatcharr/Dispatcharr / file_iterator

Method file_iterator

apps/channels/api_views.py:3386–3399  ·  view source on GitHub ↗
(path, start=0, end=None, chunk_size=8192)

Source from the content-addressed store, hash-verified

3384 range_header = request.META.get("HTTP_RANGE", "").strip()
3385
3386 def file_iterator(path, start=0, end=None, chunk_size=8192):
3387 with open(path, "rb") as f:
3388 f.seek(start)
3389 remaining = (end - start + 1) if end is not None else None
3390 while True:
3391 if remaining is not None and remaining <= 0:
3392 break
3393 bytes_to_read = min(chunk_size, remaining) if remaining is not None else chunk_size
3394 data = f.read(bytes_to_read)
3395 if not data:
3396 break
3397 if remaining is not None:
3398 remaining -= len(data)
3399 yield data
3400
3401 if range_header and range_header.startswith("bytes="):
3402 # Parse Range header

Callers

nothing calls this directly

Calls 1

readMethod · 0.80

Tested by

no test coverage detected