66 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| module Hbc::Artifact; end
 | |
| 
 | |
| require "hbc/artifact/app"
 | |
| require "hbc/artifact/artifact" # generic 'artifact' stanza
 | |
| require "hbc/artifact/binary"
 | |
| require "hbc/artifact/colorpicker"
 | |
| require "hbc/artifact/font"
 | |
| require "hbc/artifact/input_method"
 | |
| require "hbc/artifact/installer"
 | |
| require "hbc/artifact/internet_plugin"
 | |
| require "hbc/artifact/audio_unit_plugin"
 | |
| require "hbc/artifact/vst_plugin"
 | |
| require "hbc/artifact/vst3_plugin"
 | |
| require "hbc/artifact/nested_container"
 | |
| require "hbc/artifact/pkg"
 | |
| require "hbc/artifact/postflight_block"
 | |
| require "hbc/artifact/preflight_block"
 | |
| require "hbc/artifact/prefpane"
 | |
| require "hbc/artifact/qlplugin"
 | |
| require "hbc/artifact/screen_saver"
 | |
| require "hbc/artifact/service"
 | |
| require "hbc/artifact/stage_only"
 | |
| require "hbc/artifact/suite"
 | |
| require "hbc/artifact/uninstall"
 | |
| require "hbc/artifact/zap"
 | |
| 
 | |
| module Hbc::Artifact
 | |
|   # NOTE: order is important here, since we want to extract nested containers
 | |
|   #       before we handle any other artifacts
 | |
|   def self.artifacts
 | |
|     [
 | |
|       Hbc::Artifact::PreflightBlock,
 | |
|       Hbc::Artifact::NestedContainer,
 | |
|       Hbc::Artifact::Installer,
 | |
|       Hbc::Artifact::App,
 | |
|       Hbc::Artifact::Suite,
 | |
|       Hbc::Artifact::Artifact, # generic 'artifact' stanza
 | |
|       Hbc::Artifact::Colorpicker,
 | |
|       Hbc::Artifact::Pkg,
 | |
|       Hbc::Artifact::Prefpane,
 | |
|       Hbc::Artifact::Qlplugin,
 | |
|       Hbc::Artifact::Font,
 | |
|       Hbc::Artifact::Service,
 | |
|       Hbc::Artifact::StageOnly,
 | |
|       Hbc::Artifact::Binary,
 | |
|       Hbc::Artifact::InputMethod,
 | |
|       Hbc::Artifact::InternetPlugin,
 | |
|       Hbc::Artifact::AudioUnitPlugin,
 | |
|       Hbc::Artifact::VstPlugin,
 | |
|       Hbc::Artifact::Vst3Plugin,
 | |
|       Hbc::Artifact::ScreenSaver,
 | |
|       Hbc::Artifact::Uninstall,
 | |
|       Hbc::Artifact::PostflightBlock,
 | |
|       Hbc::Artifact::Zap,
 | |
|     ]
 | |
|   end
 | |
| 
 | |
|   def self.for_cask(cask)
 | |
|     odebug "Determining which artifacts are present in Cask #{cask}"
 | |
|     artifacts.select do |artifact|
 | |
|       odebug "Checking for artifact class #{artifact}"
 | |
|       artifact.me?(cask)
 | |
|     end
 | |
|   end
 | |
| end
 | 
