Module: Stateoscope
- Defined in:
- lib/stateoscope.rb,
lib/stateoscope/graph.rb,
lib/stateoscope/errors.rb,
lib/stateoscope/adapter.rb,
lib/stateoscope/railtie.rb,
lib/stateoscope/version.rb,
lib/stateoscope/visualizer.rb,
lib/stateoscope/adapter/aasm.rb,
lib/stateoscope/adapter/base.rb,
lib/stateoscope/adapter_registry.rb
Defined Under Namespace
Modules: Adapter
Classes: AdapterRegistry, Graph, Railtie, Visualizer
Constant Summary
collapse
- Error =
Class.new(StandardError)
- AbstractMethodError =
Class.new(Error)
- MissingAdapterError =
Class.new(Error)
- VERSION =
'0.1.3'
Class Method Summary
collapse
Class Method Details
.filename_for(adapter, output_format) ⇒ Object
28
29
30
|
# File 'lib/stateoscope.rb', line 28
def self.filename_for(adapter, output_format)
"#{adapter.full_state_machine_name}-#{Time.now.utc.strftime('%Y%m%d%H%M%S')}.#{output_format}"
end
|
.visualize(klass, options = {}) ⇒ Object
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/stateoscope.rb', line 13
def self.visualize(klass, options = {})
adapter = Adapter.new_for(klass, options[:state_machine_name])
adapter.build_graph
visualizer = Visualizer.new(adapter.graph)
visualizer.parse_graph(options[:current_state])
output_format = options.fetch(:format, 'pdf')
filename = filename_for(adapter, output_format)
filename = File.join(options[:dir], filename) if options[:dir].present?
visualizer.output(filename, output_format)
filename
end
|