Seaside
Seaside copied to clipboard
`WAExternalFileUploadCallback` logic should be moved to the adaptors
The request handling logic that is now in WAExternalFileUploadCallback should be moved to the adaptor framework. This is also where 'normal' WAFile instances are created in the request conversion. This will probably also enable to create a WAFile or WAExternalFile instance depending on if the request contains the file or the metadata of the file location. We might then be able to transparently work with external file upload callbacks, only loading the file contents when it was explicitly asked for.
Where do I find WAExternalFileUploadCallback?
It's in Seaside-ExternalFileUpload package. See here for more info on what it is.
I'll take care of it. I was fixing a bug and noticed it could be done more elegantly, which is what this issue is about to remind me.
I have a working hack wich I'm currently discussing with Sven. What I have in mind should:
- allow a proxy server to handle the file upload
- enable Seaside (or Zinc, depending on what Sven thinks) to write the upload to a temporary file on disk
On 2. I think it's better to have Zinc (or the whatever the server is) do it rather than Seaside. In order to avoid loading everything into memory Seaside would have to operate on a stream. I think making this portable is too much work.