class MdsFileUtils::ZipAnalyzer
Constants
- EXTENSION_REGEX
- MAX_MDS_FILE_SIZE
- VALID_COMPOSITE_CONTENTS_REGEX
Public Class Methods
new(path, original_filename=path)
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 10 def initialize(path, original_filename=path) @path = path @original_filename = original_filename end
Public Instance Methods
file_list()
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 32 def file_list @files ||= UnzipmeUnzipper.new(@path).file_list end
file_size()
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 44 def file_size File.size(@path) end
has_valid_extension?()
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 22 def has_valid_extension? return false if @original_filename.blank? @original_filename =~ EXTENSION_REGEX end
is_composite?()
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 27 def is_composite? return false unless valid_zip? file_list.count { | file | file =~ EXTENSION_REGEX } > 0 end
non_mds_data_in_composite?()
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 36 def non_mds_data_in_composite? file_list.count { | entry | !( entry =~ VALID_COMPOSITE_CONTENTS_REGEX) } > 0 end
too_big_for_mds?()
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 40 def too_big_for_mds? file_size > MAX_MDS_FILE_SIZE && !is_composite? end
valid_zip?()
click to toggle source
# File lib/mds_file_utils/zip_analyzer.rb, line 15 def valid_zip? return false if @path.blank? return false unless File.exists?(@path) return false unless has_valid_extension? UnzipmeValidator.new(@path).valid_zip? end