Class: GrassCookbook::RecipeDsl

Inherits:
Object
  • Object
show all
Defined in:
lib/grassgis/cookbook.rb

Overview

DSL to define recipes

Instance Method Summary collapse

Constructor Details

#initialize(id) ⇒ RecipeDsl

Returns a new instance of RecipeDsl.



276
277
278
279
280
281
282
283
284
285
286
# File 'lib/grassgis/cookbook.rb', line 276

def initialize(id)
  @id = id.to_sym
  @required_raster_maps = []
  @required_vector_maps = []
  @required_files = []
  @generated_raster_maps = []
  @generated_vector_maps = []
  @generated_files = []
  @generated_parameters = []
  @description = nil
end

Instance Method Details

#description(text) ⇒ Object



288
289
290
# File 'lib/grassgis/cookbook.rb', line 288

def description(text)
  @description = GrassGis::Support.unindent(text)
end

#generated_files(*files) ⇒ Object



312
313
314
# File 'lib/grassgis/cookbook.rb', line 312

def generated_files(*files)
  @generated_files += files
end

#generated_parameters(*parameters) ⇒ Object



316
317
318
# File 'lib/grassgis/cookbook.rb', line 316

def generated_parameters(*parameters)
  @generated_parameters += parameters
end

#generated_raster_maps(*maps) ⇒ Object



308
309
310
# File 'lib/grassgis/cookbook.rb', line 308

def generated_raster_maps(*maps)
  @generated_raster_maps += maps
end

#generated_vector_maps(*maps) ⇒ Object



304
305
306
# File 'lib/grassgis/cookbook.rb', line 304

def generated_vector_maps(*maps)
  @generated_vector_maps += maps
end

#process(&blk) ⇒ Object



320
321
322
# File 'lib/grassgis/cookbook.rb', line 320

def process(&blk)
  @process = blk
end

#recipeObject



324
325
326
327
328
329
330
331
332
333
334
335
# File 'lib/grassgis/cookbook.rb', line 324

def recipe
  Recipe.new(
    id: @id,
    required_maps: @required_maps,
    required_files: @required_files,
    generated_raster_maps: @generated_raster_maps,
    generated_vector_maps: @generated_vector_maps,
    generated_files: @generated_files,
    generated_parameters: @generated_parameters,
    &@process
  )
end

#required_files(*files) ⇒ Object



300
301
302
# File 'lib/grassgis/cookbook.rb', line 300

def required_files(*files)
  @required_files += files
end

#required_raster_maps(*maps) ⇒ Object



292
293
294
# File 'lib/grassgis/cookbook.rb', line 292

def required_raster_maps(*maps)
  @required_raster_maps += maps
end

#required_vector_maps(*maps) ⇒ Object



296
297
298
# File 'lib/grassgis/cookbook.rb', line 296

def required_vector_maps(*maps)
  @required_vector_maps += maps
end