Sha256: f1d19c0c44a903661086dcb0c2922428777fc484974f0c69f0d52cbd61bcea07

Contents?: true

Size: 1.62 KB

Versions: 4

Compression:

Stored size: 1.62 KB

Contents

require File.dirname(__FILE__) + '/remote_file_task'

module AsProject
  class SWFMillError < StandardError; end

  class SWFMill < RemoteFileTask
    attr_accessor :name,
                  :simple,
                  :input,
                  :output,
                  :version

    def initialize(name, do_not_define=false)
      @simple = true
      @input = nil
      @output = nil
      @options = []
      @version = '0.2.12' 
      @win_url = "http://www.swfmill.org/releases/swfmill-#{version}-win32.zip"
      @win_extracted_file = "/swfmill-#{version}-win32/swfmill.exe"
#      @osx_url = "http://www.swfmill.org/releases/swfmill-0.2.12-macosx.tar.gz"
#      @osx_extracted_file = nil
#      @unix_url = nil
#      @unix_extracted_file = nil
      super(name, true)
      define unless do_not_define
    end
    
    def remote_task_name
      return "swfmill-#{version}"
    end
    
    def define
      super
      
      if(@input.nil?)
        raise Error.new('SWFMill task requires that input be set')
      end
      
      if(@output.nil?)
        raise Error.new('SWFMill task requires that output be set')
      end
      file input
      file output => [input] do |f|
        user_task.execute(option_list.join(' '))
#        sh %{swfmill #{option_list}}
      end

      desc "#{name} using SWFMill"
      task name => [input, output]
      
      CLEAN.add(output)

      self
    end

    def option_list
      result = @options.dup
      result << "simple" if simple
      result << input if input
      result << output if output
      return result
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
asproject-0.1.34 lib/tasks/swfmill.rb
asproject-0.1.35 lib/tasks/swfmill.rb
asproject-0.1.36 lib/tasks/swfmill.rb
asproject-0.1.37 lib/tasks/swfmill.rb