Sha256: 35395231c95e5f1302d2fe800e58d0cdb8569af588dce8dbafc045e27d8cd082

Contents?: true

Size: 713 Bytes

Versions: 10

Compression:

Stored size: 713 Bytes

Contents

require 'httpthumbnailer/thumbnailer'

class ThumbnailSpecs < Array
	class BadThubnailSpecFormat < ArgumentError
	end

	def self.from_uri(specs)
		ts = ThumbnailSpecs.new
		specs.split('/').each do |spec|
			method, width, height, format, *options = *spec.split(',')
			raise BadThubnailSpecFormat, "missing argument in: #{spec}" unless method and width and height and format

			width = width.to_i
			height = height.to_i

			opts = {}
			options.each do |option|
				key, value = option.split(':')
				raise BadThubnailSpecFormat, "missing option key or value in: #{option}" unless key and value
				opts[key] = value
			end

			ts << ThumbnailSpec.new(method, width, height, format, opts)
		end
		ts
	end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
httpthumbnailer-0.0.13 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.12 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.11 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.10 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.9 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.8 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.7 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.6 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.5 lib/httpthumbnailer/thumbnail_specs.rb
httpthumbnailer-0.0.4 lib/httpthumbnailer/thumbnail_specs.rb