Class: Cuboid::Data::Application

Inherits:
Object
  • Object
show all
Defined in:
lib/cuboid/data/application.rb

Overview

Data for Application.

Author:

Defined Under Namespace

Classes: Error

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#reportObject

Returns the value of attribute report.



18
19
20
# File 'lib/cuboid/data/application.rb', line 18

def report
  @report
end

#runtimeObject

Returns the value of attribute runtime.



17
18
19
# File 'lib/cuboid/data/application.rb', line 17

def runtime
  @runtime
end

Class Method Details

.load(directory) ⇒ Object



37
38
39
40
41
42
# File 'lib/cuboid/data/application.rb', line 37

def self.load( directory )
    application = new
    application.report  = Cuboid::Application.serializer.load( IO.binread( "#{directory}/report" ) )
    application.runtime = Cuboid::Application.serializer.load( IO.binread( "#{directory}/runtime" ) )
    application
end

Instance Method Details

#clearObject



44
45
46
47
# File 'lib/cuboid/data/application.rb', line 44

def clear
    @runtime = nil
    @report  = nil
end

#dump(directory) ⇒ Object



27
28
29
30
31
32
33
34
35
# File 'lib/cuboid/data/application.rb', line 27

def dump( directory )
    FileUtils.mkdir_p( directory )

    d = Cuboid::Application.serializer.dump( @report )
    IO.binwrite( "#{directory}/report", d )

    d = Cuboid::Application.serializer.dump( @runtime )
    IO.binwrite( "#{directory}/runtime", d )
end

#statisticsObject



20
21
22
23
24
25
# File 'lib/cuboid/data/application.rb', line 20

def statistics
    {
      runtime: !!@runtime,
      report:  !!@report
    }
end