class Mixlib::Install::ArtifactInfo
Constants
- ATTRIBUTES
Public Class Methods
from_json(json, platform_info)
click to toggle source
# File lib/mixlib/install/artifact_info.rb, line 49 def self.from_json(json, platform_info) ArtifactInfo.new(JSON.parse(json, symbolize_names: true).merge(platform_info)) end
from_metadata_map(json)
click to toggle source
# File lib/mixlib/install/artifact_info.rb, line 53 def self.from_metadata_map(json) artifacts = [] JSON.parse(json, symbolize_names: true).each do |p, p_data| p_data.each do |pv, pv_data| pv_data.each do |m, metadata| artifacts << ArtifactInfo.new(metadata.merge( platform: p, platform_version: pv, architecture: m )) end end end artifacts end
new(data)
click to toggle source
# File lib/mixlib/install/artifact_info.rb, line 42 def initialize(data) # Create an instance variable for each attribute ATTRIBUTES.each do |attribute| instance_variable_set("@#{attribute}", data[attribute.to_sym]) end end
Public Instance Methods
appx_artifact?()
click to toggle source
# File lib/mixlib/install/artifact_info.rb, line 80 def appx_artifact? url.end_with?(".appx") end
clone_with(data)
click to toggle source
# File lib/mixlib/install/artifact_info.rb, line 76 def clone_with(data) ArtifactInfo.new(to_hash.merge(data)) end
to_hash()
click to toggle source
# File lib/mixlib/install/artifact_info.rb, line 71 def to_hash # Create a Hash of the instance data Hash[ATTRIBUTES.map { |attribute| [attribute.to_sym, eval(attribute)] }] end