Skip to content
Snippets Groups Projects
Commit abe43ce7 authored by Mateus Rambo Strey's avatar Mateus Rambo Strey
Browse files

fix tempfile of chunks controller

parent 19509839
No related branches found
No related tags found
No related merge requests found
......@@ -41,10 +41,12 @@ class V1::LearningObjects::ChunksController < ApplicationController
##
# Move the temporary Sinatra upload to the chunk file location
def save_file!
return nil unless chunks_params[:file].try(:tempfile).is_a? Tempfile
# Ensure required paths exist
FileUtils.mkpath(chunk_file_directory)
# Move the temporary file upload to the temporary chunk file path
FileUtils.mv(params[:file][:tempfile], chunk_file_path, force: true)
FileUtils.mv(chunks_params[:file].tempfile, chunk_file_path, force: true)
end
##
......@@ -66,31 +68,31 @@ class V1::LearningObjects::ChunksController < ApplicationController
def valid_mime_type?
mime_types = @learning_object.object_type.mime_types.map(&:extension)
return true if mime_types.empty?
mime_types.include? params[:flowFilename].split('.').last
mime_types.include? chunks_params[:flowFilename].split('.').last
end
##
# Determine if this is the last chunk based in parts count.
def last_chunk?
Dir["#{chunk_file_directory}/#{params[:flowFilename]}.part*"].count == params[:flowTotalChunks].to_i
Dir["#{chunk_file_directory}/#{chunks_params[:flowFilename]}.part*"].count == chunks_params[:flowTotalChunks].to_i
end
##
# ./tmp/flow/abc-123/upload.txt.part1
def chunk_file_path
File.join(chunk_file_directory, "#{params[:flowFilename]}.part#{params[:flowChunkNumber]}")
File.join(chunk_file_directory, "#{chunks_params[:flowFilename]}.part#{chunks_params[:flowChunkNumber]}")
end
##
# ./tmp/flow/abc-123
def chunk_file_directory
File.join('tmp', 'flow', params[:flowIdentifier])
File.join('tmp', 'flow', chunks_params[:flowIdentifier])
end
##
# /tmp/flow/upload.txt
def final_file_path
File.join(final_file_directory, params[:flowFilename])
File.join(final_file_directory, chunks_params[:flowFilename])
end
##
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment