class ImageServer::Image

Public Class Methods

new(namespace, image_hash, protocol: 'http://', domain: nil, size: nil, format: nil, processing: false, object: nil, default_size: nil) click to toggle source
# File lib/image_server/image.rb, line 4
def initialize(namespace, image_hash, protocol: 'http://', domain: nil, size: nil, format: nil, processing: false, object: nil, default_size: nil)
  @namespace = namespace
  @image_hash = image_hash
  @protocol = protocol
  @domain = domain
  @size = size
  @format = format
  @processing = processing
  @object = object
  @default_size = default_size
end

Public Instance Methods

url(options = {}) click to toggle source
# File lib/image_server/image.rb, line 16
def url(options = {})
  options = options.merge({ processing: @processing })
  image_url_for_version(@default_size, options)
end

Private Instance Methods

image_url_for_version(version, options = {}) click to toggle source
# File lib/image_server/image.rb, line 23
def image_url_for_version(version, options = {})
  options = {
    protocol: @protocol,
    domain: @domain,
    size:   version,
    format: 'jpg',
  }.merge(options)

  ImageServer::Url.from_hash(@namespace, @image_hash, options)
end