class MiddlemanHeadless::Asset
Public Class Methods
new(data, interface)
click to toggle source
# File lib/middleman-headless/interface.rb, line 211 def initialize(data, interface) @data = data @interface = interface end
Public Instance Methods
content_type()
click to toggle source
# File lib/middleman-headless/interface.rb, line 224 def content_type @data[:content_type] end
extension()
click to toggle source
# File lib/middleman-headless/interface.rb, line 228 def extension MIME::Types[content_type].first.preferred_extension end
key()
click to toggle source
# File lib/middleman-headless/interface.rb, line 216 def key @data[:key] end
name()
click to toggle source
# File lib/middleman-headless/interface.rb, line 220 def name @data[:name] end
url(options={})
click to toggle source
# File lib/middleman-headless/interface.rb, line 232 def url(options={}) opts = options.length > 0 ? "?#{options.to_query}" : '' addr = "#{@interface.options.address}/content/file/#{key}#{opts}" if @interface.options[:download_assets] && @interface.build data = { addr: addr, ext: extension, name: name.parameterize } "hldl://#{Base64.urlsafe_encode64(JSON.generate(data))}/" else addr end end