Class: Statemachine::Generate::Java::JavaStatemachine
- Inherits:
-
Object
- Object
- Statemachine::Generate::Java::JavaStatemachine
- Includes:
- Util
- Defined in:
- lib/statemachine/generate/java/java_statemachine.rb
Constant Summary collapse
- HEADER1 =
"// This file was generated by the Ruby Statemachine Library (http://slagyr.github.com/statemachine)."
- HEADER2 =
"// Generated at "
Instance Method Summary collapse
- #generate! ⇒ Object
-
#initialize(sm, options) ⇒ JavaStatemachine
constructor
A new instance of JavaStatemachine.
Methods included from Util
#endl, #establish_directory, #say, #timestamp
Constructor Details
#initialize(sm, options) ⇒ JavaStatemachine
Returns a new instance of JavaStatemachine.
25 26 27 28 29 30 31 32 33 34 |
# File 'lib/statemachine/generate/java/java_statemachine.rb', line 25 def initialize(sm, ) @sm = sm @output_dir = [:output] @classname = [:name] @context_classname = "#{@classname}Context" @package = [:package] raise "Please specify an output directory. (:output => 'where/you/want/your/code')" if @output_dir.nil? raise "Output dir '#{@output_dir}' doesn't exist." if !File.exist?(@output_dir) raise "Please specify a name for the statemachine. (:name => 'SomeName')" if @classname.nil? end |
Instance Method Details
#generate! ⇒ Object
36 37 38 39 40 41 |
# File 'lib/statemachine/generate/java/java_statemachine.rb', line 36 def generate! explore_sm create_file(src_file(@classname), build_statemachine_src) create_file(src_file(@context_classname), build_context_src) say "Statemachine generated." end |