From cae8db6a25529359dbf7d687594acc40c3af9572 Mon Sep 17 00:00:00 2001 From: vangheem Date: Thu, 1 Mar 2018 14:36:22 -0500 Subject: [PATCH] Store record of previous file data on upload --- CHANGELOG.rst | 3 ++- guillotina/files/dbfile.py | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 9ff879fed..d7544efbc 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,7 +1,8 @@ 2.3.30 (unreleased) ------------------- -- Nothing changed yet. +- Store record of previous file data on upload + [vangheem] 2.3.29 (2018-03-01) diff --git a/guillotina/files/dbfile.py b/guillotina/files/dbfile.py index 758dd2cb5..be13f9574 100644 --- a/guillotina/files/dbfile.py +++ b/guillotina/files/dbfile.py @@ -6,6 +6,8 @@ from guillotina.interfaces import IFileCleanup from zope.interface import implementer +import uuid + @implementer(IDBFile) class DBFile(BaseCloudFile): @@ -19,6 +21,13 @@ def valid(self): async def init_upload(self, context): context._p_register() + + self._old_uri = self.uri + self._old_size = self.size + self._old_filename = self.filename + self._old_md5 = self.md5 + self._old_content_type = self.guess_content_type() + self._current_upload = 0 if self._blob is not None: cleanup = IFileCleanup(context, None) @@ -28,6 +37,7 @@ async def init_upload(self, context): else: self._previous_blob = self._blob blob = Blob(context) + self._uri = uuid.uuid4().hex self._blob = blob async def append_data(self, context, data):