class MountableFileServer::Metadata
Attributes
content_type[R]
height[R]
size[R]
width[R]
Public Class Methods
for_path(path)
click to toggle source
# File lib/mountable_file_server/metadata.rb, line 30 def self.for_path(path) parameters = {} parameters[:content_type] = `file --brief --mime-type #{path}`.strip parameters[:size] = File.size(path) if ['image/png', 'image/jpeg', 'image/gif', 'image/tiff'].include?(parameters[:content_type]) dimensions = Dimensions.dimensions(path) parameters[:width] = dimensions[0] parameters[:height] = dimensions[1] end new(**parameters) end
new(size:, content_type:, width: nil, height: nil)
click to toggle source
# File lib/mountable_file_server/metadata.rb, line 7 def initialize(size:, content_type:, width: nil, height: nil) @size = size @content_type = content_type @width = width @height = height end
Public Instance Methods
to_h()
click to toggle source
# File lib/mountable_file_server/metadata.rb, line 14 def to_h hash = { size: size, content_type: content_type } if width && height hash = hash.merge({ height: height, width: width }) end hash end