Sha256: a89def6ab0ed4c8316f5fc3f12e604e27180760c16dfd3b7926803933b7eb3e8

Contents?: true

Size: 972 Bytes

Versions: 6

Compression:

Stored size: 972 Bytes

Contents

require 'sugar-high/array'

require 'rails_artifactor/artifact/file_name/view'

module RailsAssist::Artifact::CRUD
  module Delete
    class ViewHelper
      extend RailsAssist::Artifact::View::FileName
    end
    
    def remove_artifact name, *args
      file = ViewHelper.view_file_name(name, args)       
      return FileUtils.rm_f(file) if File.exist?(file) 
      
      type = args.first  
      type = type[:type] if type.kind_of? Hash
      begin
        file = existing_file_name name, type
        FileUtils.rm_f(file) 
        debug "removed artifact: #{name}"  
        true
      rescue
        debug "artifact to remove not found: #{name}"          
        nil
      end
    end
    alias_method :delete_artifact, :remove_artifact

    def remove_artifacts *names
      type = last_option(names)[:type]
      names.flatten.select_labels.each{|name| remove_artifact(name, type) }
    end
    alias_method :delete_artifacts, :remove_artifacts    
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rails_artifactor-0.5.0 lib/rails_artifactor/base/crud/delete.rb
rails_artifactor-0.4.0 lib/rails_artifactor/base/crud/delete.rb
rails_artifactor-0.3.6 lib/rails_artifactor/base/crud/delete.rb
rails_artifactor-0.3.5 lib/rails_artifactor/base/crud/delete.rb
rails_artifactor-0.3.4 lib/rails_artifactor/base/crud/delete.rb
rails_artifactor-0.3.3 lib/rails_artifactor/base/crud/delete.rb