Class: EacFs::FileInfo

Inherits:
Object show all
Defined in:
lib/eac_fs/file_info.rb

Constant Summary collapse

UNKNOWN_CONTENT_TYPE_STRING =
'application/octet-stream'
UNKNOWN_CONTENT_TYPE =
::ContentType.parse(UNKNOWN_CONTENT_TYPE_STRING)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path) ⇒ Object

Parameters:



18
19
20
# File 'lib/eac_fs/file_info.rb', line 18

common_constructor :path do
  self.path = path.to_pathname
end

Instance Attribute Details

#pathPathname (readonly)

Returns:



# File 'lib/eac_fs/file_info.rb', line 13

Instance Method Details

#descriptionString

Returns:

  • (String)


25
26
27
# File 'lib/eac_fs/file_info.rb', line 25

def description
  magic
end

#magic(*flags) ⇒ String

Returns:

  • (String)


35
36
37
# File 'lib/eac_fs/file_info.rb', line 35

def magic(*flags)
  ::FileMagic.new(*flags).file(path.to_path)
end

#open?Boolean

Returns:

  • (Boolean)


30
31
32
# File 'lib/eac_fs/file_info.rb', line 30

def open?
  ::EacFs::Executables.lsof.command(path).execute.fetch(:exit_code).zero?
end