Change post-processing to be deferred only for large media types (#19617)

local
Eugen Rochko 2 years ago committed by GitHub
parent c68e6b52d9
commit 15bae3e0e4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      app/controllers/api/v2/media_controller.rb
  2. 4
      app/models/media_attachment.rb

@ -3,7 +3,7 @@
class Api::V2::MediaController < Api::V1::MediaController
def create
@media_attachment = current_account.media_attachments.create!({ delay_processing: true }.merge(media_attachment_params))
render json: @media_attachment, serializer: REST::MediaAttachmentSerializer, status: 202
render json: @media_attachment, serializer: REST::MediaAttachmentSerializer, status: @media_attachment.not_processed? ? 202 : 200
rescue Paperclip::Errors::NotIdentifiedByImageMagickError
render json: file_type_error, status: 422
rescue Paperclip::Error

@ -248,11 +248,11 @@ class MediaAttachment < ApplicationRecord
attr_writer :delay_processing
def delay_processing?
@delay_processing
@delay_processing && larger_media_format?
end
def delay_processing_for_attachment?(attachment_name)
@delay_processing && attachment_name == :file
delay_processing? && attachment_name == :file
end
after_commit :enqueue_processing, on: :create

Loading…
Cancel
Save