Class: Epuber::Lockfile

Inherits:
Object
  • Object
show all
Defined in:
lib/epuber/lockfile.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data = {}) ⇒ Lockfile

Returns a new instance of Lockfile.

Parameters:

  • data (Hash) (defaults to: {})


12
13
14
# File 'lib/epuber/lockfile.rb', line 12

def initialize(data = {})
  @internal_data = data
end

Instance Attribute Details

#defined_from_fileObject

Returns the value of attribute defined_from_file.



8
9
10
# File 'lib/epuber/lockfile.rb', line 8

def defined_from_file
  @defined_from_file
end

Class Method Details

.from_file(file_path) ⇒ self

Returns:

  • (self)


18
19
20
21
22
23
24
25
26
27
28
# File 'lib/epuber/lockfile.rb', line 18

def self.from_file(file_path)
  if File.exists?(file_path)
    hash = YAML.load(File.read(file_path))
  else
    hash = {}
  end

  inst = self.new(hash)
  inst.defined_from_file = file_path
  inst
end

Instance Method Details

#versionEpuber::Version

Returns:



43
44
45
# File 'lib/epuber/lockfile.rb', line 43

def version
  @internal_data['version']
end

#version=(new_version) ⇒ Epuber::Version

Parameters:

Returns:



51
52
53
# File 'lib/epuber/lockfile.rb', line 51

def version=(new_version)
  @internal_data['version'] = new_version
end

#write_to_fileObject

Returns nil.

Returns:

  • nil



32
33
34
35
36
37
38
# File 'lib/epuber/lockfile.rb', line 32

def write_to_file
  return if defined_from_file.nil?

  File.open(defined_from_file, 'w') do |f|
    f.write(YAML.dump(@internal_data))
  end
end