diff options
Diffstat (limited to 'app/services/packages/debian/extract_changes_metadata_service.rb')
-rw-r--r-- | app/services/packages/debian/extract_changes_metadata_service.rb | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/app/services/packages/debian/extract_changes_metadata_service.rb b/app/services/packages/debian/extract_changes_metadata_service.rb index fdca8c88fdc..5f06f46de58 100644 --- a/app/services/packages/debian/extract_changes_metadata_service.rb +++ b/app/services/packages/debian/extract_changes_metadata_service.rb @@ -26,10 +26,9 @@ module Packages private def metadata - strong_memoize(:metadata) do - ::Packages::Debian::ExtractMetadataService.new(@package_file).execute - end + ::Packages::Debian::ExtractMetadataService.new(@package_file).execute end + strong_memoize_attr :metadata def file_type metadata[:file_type] @@ -40,20 +39,19 @@ module Packages end def files - strong_memoize(:files) do - raise ExtractionError, "is not a changes file" unless file_type == :changes - raise ExtractionError, "Files field is missing" if fields['Files'].blank? - raise ExtractionError, "Checksums-Sha1 field is missing" if fields['Checksums-Sha1'].blank? - raise ExtractionError, "Checksums-Sha256 field is missing" if fields['Checksums-Sha256'].blank? - - init_entries_from_files - entries_from_checksums_sha1 - entries_from_checksums_sha256 - entries_from_package_files - - @entries - end + raise ExtractionError, "is not a changes file" unless file_type == :changes + raise ExtractionError, "Files field is missing" if fields['Files'].blank? + raise ExtractionError, "Checksums-Sha1 field is missing" if fields['Checksums-Sha1'].blank? + raise ExtractionError, "Checksums-Sha256 field is missing" if fields['Checksums-Sha256'].blank? + + init_entries_from_files + entries_from_checksums_sha1 + entries_from_checksums_sha256 + entries_from_package_files + + @entries end + strong_memoize_attr :files def init_entries_from_files each_lines_for('Files') do |line| |