Skip to content

Commit 967f28f

Browse files
committed
testing file read vs pil read and convert
1 parent cc4d5c6 commit 967f28f

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

app/storage_manager.py

+6
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,12 @@ def get_image(self, uuid: list[str]) -> Image.Image:
2828
raise StorageManagerException("Not Found")
2929
return Image.open(os.path.join(self.path_for_uuid(uuid), "file"))
3030

31+
def read_file(self, uuid: list[str]) -> bytes:
32+
if not self.uuid_exists(uuid):
33+
raise StorageManagerException("Not Found")
34+
with open(os.path.join(self.path_for_uuid(uuid), "file"), "rb") as f:
35+
return f.read()
36+
3137

3238
def get_storage_manager() -> StorageManager:
3339
return StorageManager()

app/views.py

+15-3
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,23 @@ async def post_image(
6262
@router_api.get("/image/{client_id}/{uuid}")
6363
async def get_image(client_id: str, uuid: str) -> Response:
6464
try:
65+
logger.debug("start file")
66+
get_storage_manager().read_file([client_id, uuid])
67+
logger.debug("finished file")
68+
logger.debug("start image")
6569
image = get_storage_manager().get_image([client_id, uuid])
70+
logger.debug("image 0")
71+
form = image.format
72+
assert form is not None
73+
logger.debug("image 1")
6674
img_stream = io.BytesIO()
67-
assert image.format is not None
68-
image.save(img_stream, image.format, quality="keep")
69-
return Response(content=img_stream.getvalue(), media_type=Image.MIME[image.format])
75+
logger.debug("image 2")
76+
image.save(img_stream, form, quality="keep")
77+
logger.debug("image 3")
78+
image.tobytes()
79+
image_bytes = img_stream.getvalue()
80+
logger.debug("finished image")
81+
return Response(content=image_bytes, media_type=Image.MIME[form])
7082
except StorageManagerException as e:
7183
raise HTTPException(
7284
status_code=status.HTTP_404_NOT_FOUND,

0 commit comments

Comments
 (0)