class GallerizeCli::Image

Attributes

directory[R]
file_path[R]
versions[R]

Public Class Methods

generate_version_method(name) click to toggle source
# File lib/gallerize_cli/image.rb, line 11
def generate_version_method(name)
  unless public_method_defined?("#{name}_url")
    define_method("#{name}_url") { self.versions[name].url }
  end
end
new(directory, file_path) click to toggle source
# File lib/gallerize_cli/image.rb, line 29
def initialize(directory, file_path)
  @success = true
  @directory = directory
  @file_path = file_path
  generate_version_methods
end

Public Instance Methods

attributes() click to toggle source
# File lib/gallerize_cli/image.rb, line 19
def attributes
  @attributes ||= fetch_attributes
end
config() click to toggle source
# File lib/gallerize_cli/image.rb, line 51
def config
  directory.config
end
file_name() click to toggle source
# File lib/gallerize_cli/image.rb, line 47
def file_name
  @file_name ||= File.basename(file_path)
end
name() click to toggle source
# File lib/gallerize_cli/image.rb, line 40
def name
  return @name if defined?(@name)
  parts = file_name.split('.')
  parts.pop
  @name = parts.join('.')
end
original_url() click to toggle source
# File lib/gallerize_cli/image.rb, line 23
def original_url
  destination = File.join(directory.images_path, file_name)
  cp(file_path, destination) unless File.exists?(destination)
  destination.gsub(directory.output_path, config.site_url)
end
process() click to toggle source
# File lib/gallerize_cli/image.rb, line 36
def process
  versions.each { |name, version| version.process }
end
valid?() click to toggle source
# File lib/gallerize_cli/image.rb, line 62
def valid?
  versions.collect(&:valid?).include?(false)
end

Private Instance Methods

fetch_attributes() click to toggle source
# File lib/gallerize_cli/image.rb, line 68
def fetch_attributes
  hash = {}
  if config.image_attributes.is_a?(Hash)
    hash = config.image_attributes[file_name] || {}
  end
  OpenStruct.new(hash)
end
generate_version_methods() click to toggle source
# File lib/gallerize_cli/image.rb, line 76
def generate_version_methods
  versions.each do |name, version|
    self.class.generate_version_method(name)
  end
end
success?() click to toggle source
# File lib/gallerize_cli/image.rb, line 82
def success?
  @success
end