Class: HQ::Transform::TransformScript
- Inherits:
-
Tools::BaseScript
- Object
- Tools::BaseScript
- HQ::Transform::TransformScript
- Defined in:
- lib/hq/transform/transform-script.rb
Instance Attribute Summary collapse
-
#logger ⇒ Object
Returns the value of attribute logger.
-
#transform_backend ⇒ Object
Returns the value of attribute transform_backend.
Instance Method Summary collapse
-
#initialize ⇒ TransformScript
constructor
A new instance of TransformScript.
- #main ⇒ Object
- #perform_transform ⇒ Object
- #process_args ⇒ Object
Constructor Details
#initialize ⇒ TransformScript
Returns a new instance of TransformScript.
15 16 17 18 19 20 21 22 23 |
# File 'lib/hq/transform/transform-script.rb', line 15 def initialize @logger = Logger.new @logger.hostname = "local" @logger.add_auto "debug" @transform_backend = RubyBackend.new end |
Instance Attribute Details
#logger ⇒ Object
Returns the value of attribute logger.
12 13 14 |
# File 'lib/hq/transform/transform-script.rb', line 12 def logger @logger end |
#transform_backend ⇒ Object
Returns the value of attribute transform_backend.
13 14 15 |
# File 'lib/hq/transform/transform-script.rb', line 13 def transform_backend @transform_backend end |
Instance Method Details
#main ⇒ Object
25 26 27 28 |
# File 'lib/hq/transform/transform-script.rb', line 25 def main process_args perform_transform end |
#perform_transform ⇒ Object
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/hq/transform/transform-script.rb', line 57 def perform_transform transformer = Engine::Transformer.new transformer.parent = self transformer.schema_file = @opts[:schema] transformer.rules_dir = @opts[:rules] transformer.include_dir = @opts[:include] transformer.input_dir = @opts[:input] transformer.output_dir = @opts[:output] result = transformer.rebuild raise "Error" \ unless result[:success] end |
#process_args ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/hq/transform/transform-script.rb', line 30 def process_args @opts, @args = Tools::Getopt.process @args, [ { :name => :input, :required => true }, { :name => :rules, :required => true }, { :name => :include, :required => true }, { :name => :schema, :required => true }, { :name => :output, :required => true } ] @args.empty? \ or raise "Extra args on command line" end |