summary refs log tree commit diff
diff options
context:
space:
mode:
authorMark Haines <mark.haines@matrix.org>2014-12-05 16:30:18 +0000
committerMark Haines <mark.haines@matrix.org>2014-12-05 16:31:56 +0000
commita953be097f3431481875dc04662adcc5ba2226a9 (patch)
tree03d162ed95d9799ca6440d7d15d9a34d1cc6b4fd
parentAdd pillow to dependencies (diff)
downloadsynapse-a953be097f3431481875dc04662adcc5ba2226a9.tar.xz
Add a method field to thumbnail storage
-rw-r--r--synapse/storage/media_repository.py15
-rw-r--r--synapse/storage/schema/media_repository.sql4
2 files changed, 12 insertions, 7 deletions
diff --git a/synapse/storage/media_repository.py b/synapse/storage/media_repository.py
index 2d3a2d1ccb..b3f1fc087b 100644
--- a/synapse/storage/media_repository.py
+++ b/synapse/storage/media_repository.py
@@ -50,20 +50,21 @@ class MediaRepositoryStore(SQLBaseStore):
             "local_media_thumbnails",
             {"media_id": media_id},
             (
-                "thumbnail_width", "thumbnail_height",
+                "thumbnail_width", "thumbnail_height", "thumbnail_method",
                 "thumbnail_type", "thumbnail_length",
             )
         )
 
     def store_local_thumbnail(self, media_id, thumbnail_width,
-                              thumbnail_height, thumbnail_type,
-                              thumbnail_length):
+                              thumbnail_height, thumbnail_method,
+                              thumbnail_type, thumbnail_length):
         return self._simple_insert(
             "local_media_thumbnails",
             {
                 "media_id": media_id,
                 "thumbnail_width": thumbnail_width,
                 "thumbnail_height": thumbnail_height,
+                "thumbnail_method": thumbnail_method,
                 "thumbnail_type": thumbnail_type,
                 "thumbnail_length": thumbnail_length,
             }
@@ -101,15 +102,16 @@ class MediaRepositoryStore(SQLBaseStore):
             "remote_media_cache_thumbnails",
             {"origin": origin, "media_id": media_id},
             (
-                "thumbnail_width", "thumbnail_height",
+                "thumbnail_width", "thumbnail_height", "thumbnail_method"
                 "thumbnail_type", "thumbnail_length",
                 "filesystem_id"
             )
         )
 
     def store_remote_media_thumbnail(self, origin, media_id, thumbnail_width,
-                                     thumbnail_height, thumbnail_type,
-                                     thumbnail_length, filesystem_id):
+                                     thumbnail_height, thumbnail_method,
+                                     thumbnail_type, thumbnail_length,
+                                     filesystem_id):
         return self._simple_insert(
             "remote_media_cache_thumbnails",
             {
@@ -117,6 +119,7 @@ class MediaRepositoryStore(SQLBaseStore):
                 "media_id": media_id,
                 "thumbnail_width": thumbnail_width,
                 "thumbnail_height": thumbnail_height,
+                "thumbnail_method": thumbnail_method,
                 "thumbnail_type": thumbnail_type,
                 "thumbnail_length": thumbnail_length,
                 "filesystem_id": filesystem_id,
diff --git a/synapse/storage/schema/media_repository.sql b/synapse/storage/schema/media_repository.sql
index 768752296f..b785fa0208 100644
--- a/synapse/storage/schema/media_repository.sql
+++ b/synapse/storage/schema/media_repository.sql
@@ -28,6 +28,7 @@ CREATE TABLE IF NOT EXISTS local_media_repository_thumbnails (
     thumbnail_width INTEGER, -- The width of the thumbnail in pixels.
     thumbnail_height INTEGER, -- The height of the thumbnail in pixels.
     thumbnail_type TEXT, -- The MIME-type of the thumbnail.
+    thumbnail_method TEXT, -- The method used to make the thumbnail.
     thumbnail_length INTEGER, -- The length of the thumbnail in bytes.
     CONSTRAINT uniqueness UNIQUE (
         media_id, thumbnail_width, thumbnail_height, thumbnail_type
@@ -53,12 +54,13 @@ CREATE TABLE IF NOT EXISTS remote_media_cache_thumbnails (
     media_id TEXT, -- The id used to refer to the media.
     thumbnail_width INTEGER, -- The width of the thumbnail in pixels.
     thumbnail_height INTEGER, -- The height of the thumbnail in pixels.
+    thumbnail_method TEXT, -- The method used to make the thumbnail
     thumbnail_type TEXT, -- The MIME-type of the thumbnail.
     thumbnail_length INTEGER, -- The length of the thumbnail in bytes.
     filesystem_id TEXT, -- The name used to store the media on disk.
     CONSTRAINT uniqueness UNIQUE (
         media_origin, media_id, thumbnail_width, thumbnail_height,
-        thumbnail_type
+        thumbnail_type, thumbnail_type
     )
 );