class Decko::Swagger
hacky first go at swagger generation.
In decko, it really just converts yaml to ruby and back again.
But it's useful for generating decko swagger docs.
Attributes
yaml_dir[RW]
Public Class Methods
new(yaml_dir=nil)
click to toggle source
# File lib/decko/swagger.rb, line 10 def initialize yaml_dir=nil @yaml_dir = yaml_dir end
Public Instance Methods
gem_input_dir()
click to toggle source
# File lib/decko/swagger.rb, line 23 def gem_input_dir File.join gem_swagger_dir, "input_yml" end
gem_swag()
click to toggle source
# File lib/decko/swagger.rb, line 27 def gem_swag read_yml :layout, gem_input_dir end
gem_swagger_dir()
click to toggle source
# File lib/decko/swagger.rb, line 19 def gem_swagger_dir File.join Decko.gem_root, "lib/decko/swagger" end
merge_swag(filename, dir=nil)
click to toggle source
# File lib/decko/swagger.rb, line 31 def merge_swag filename, dir=nil yaml = read_yml filename, dir gem_swag.deep_merge yaml end
output_file(filename=nil, dir=nil)
click to toggle source
# File lib/decko/swagger.rb, line 36 def output_file filename=nil, dir=nil filename ||= "output.yml" dir ||= yaml_dir || gem_input_dir File.join dir, filename end
output_to_file(hash, filename=nil, dir=nil)
click to toggle source
# File lib/decko/swagger.rb, line 42 def output_to_file hash, filename=nil, dir=nil File.write output_file(filename, dir), hash.to_yaml end
read_yml(filename, dir=nil)
click to toggle source
# File lib/decko/swagger.rb, line 14 def read_yml filename, dir=nil dir ||= yaml_dir || gem_input_dir YAML.load_file File.join(dir, "#{filename}.yml") end