s3ff 0.10.2 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/s3ff/model_helper.rb +29 -10
- data/lib/s3ff/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 4bd380626001b2b203f6924a3b66d6e89bf28c7e
         | 
| 4 | 
            +
              data.tar.gz: 0cd8675ecdd614a797e39062e46b9f97ae795000
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 8c1ed0e0a858f87395cbd48fcb03b33f09ef844404f8701a971a23377d0d36721c32134d44eccb9d2b10222fa96b56728f350df9156eb2545ab523763d97561e
         | 
| 7 | 
            +
              data.tar.gz: f61cbbea7b9c342d5005a6f1f90e7c7db2fe312892d7f54dc1e624de76abeb5572b6e006dab901d0d11e37e6e680ccbf4bec4c2404102317ab18239f5289b4ce
         | 
    
        data/lib/s3ff/model_helper.rb
    CHANGED
    
    | @@ -1,19 +1,34 @@ | |
| 1 1 | 
             
            module S3FF
         | 
| 2 2 | 
             
              module ModelHelper
         | 
| 3 | 
            -
                def download_from_direct_url_with_delay(attr_name)
         | 
| 3 | 
            +
                def download_from_direct_url_with_delay(attr_name, nil_direct_url_after_save: false)
         | 
| 4 4 | 
             
                  if self.respond_to?(:delay)
         | 
| 5 | 
            -
                    self. | 
| 5 | 
            +
                    has_db_column = self.column_names.include?("#{attr_name}_direct_url") rescue false
         | 
| 6 6 |  | 
| 7 | 
            -
             | 
| 8 | 
            -
             | 
| 9 | 
            -
                      end
         | 
| 7 | 
            +
                    if has_db_column
         | 
| 8 | 
            +
                      self.class_eval <<-EOM
         | 
| 10 9 |  | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 10 | 
            +
                        after_save :delay_s3ff_download_direct_url, if: -> { #{attr_name}_direct_url.present? && #{attr_name}_direct_url_changed? }
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                      EOM
         | 
| 13 | 
            +
                    else
         | 
| 14 | 
            +
                      self.class_eval <<-EOM
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                        def #{attr_name}_direct_url
         | 
| 17 | 
            +
                          @#{attr_name}_direct_url
         | 
| 18 | 
            +
                        end
         | 
| 15 19 |  | 
| 16 | 
            -
             | 
| 20 | 
            +
                        def #{attr_name}_direct_url=(val)
         | 
| 21 | 
            +
                          #{"return if val.blank?" if nil_direct_url_after_save}
         | 
| 22 | 
            +
                          self.updated_at = Time.now if val != @#{attr_name}_direct_url
         | 
| 23 | 
            +
                          @#{attr_name}_direct_url = val
         | 
| 24 | 
            +
                        end
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                        after_save :delay_s3ff_download_direct_url, if: proc { #{attr_name}_direct_url.present? }
         | 
| 27 | 
            +
             | 
| 28 | 
            +
                      EOM
         | 
| 29 | 
            +
                    end
         | 
| 30 | 
            +
             | 
| 31 | 
            +
                    self.class_eval <<-EOM
         | 
| 17 32 |  | 
| 18 33 | 
             
                      def delay_s3ff_download_direct_url
         | 
| 19 34 | 
             
                        self.class.delay.s3ff_download_direct_url(id, #{attr_name}_direct_url)
         | 
| @@ -24,11 +39,14 @@ module S3FF | |
| 24 39 | 
             
                          find(instance_id).update(
         | 
| 25 40 | 
             
                            #{attr_name}: file,
         | 
| 26 41 | 
             
                            #{attr_name}_file_name: File.basename(#{attr_name}_direct_url),
         | 
| 42 | 
            +
                            #{"#{attr_name}_direct_url: nil," if nil_direct_url_after_save}
         | 
| 27 43 | 
             
                          )
         | 
| 28 44 | 
             
                        end
         | 
| 29 45 | 
             
                      end
         | 
| 30 46 | 
             
                    EOM
         | 
| 31 47 | 
             
                  elsif self.respond_to?(:handle_asynchronously)
         | 
| 48 | 
            +
             | 
| 49 | 
            +
                    # handle_asynchronously requires db column anyways
         | 
| 32 50 | 
             
                    self.class_eval <<-EOM
         | 
| 33 51 | 
             
                      after_save :s3ff_download_direct_url, if: -> { #{attr_name}_direct_url.present? && #{attr_name}_direct_url_changed? }
         | 
| 34 52 |  | 
| @@ -37,6 +55,7 @@ module S3FF | |
| 37 55 | 
             
                          update(
         | 
| 38 56 | 
             
                            #{attr_name}: file,
         | 
| 39 57 | 
             
                            #{attr_name}_file_name: File.basename(#{attr_name}_direct_url),
         | 
| 58 | 
            +
                            #{"#{attr_name}_direct_url: nil," if nil_direct_url_after_save}
         | 
| 40 59 | 
             
                          )
         | 
| 41 60 | 
             
                        end
         | 
| 42 61 | 
             
                      end
         | 
    
        data/lib/s3ff/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: s3ff
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.11.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Chew Choon Keat
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2014-11- | 
| 11 | 
            +
            date: 2014-11-28 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: s3_file_field
         |