Class: RailsHttpLab::EnvironmentsController
- Inherits:
-
ApplicationController
- Object
- ActionController::Base
- ApplicationController
- RailsHttpLab::EnvironmentsController
- Defined in:
- app/controllers/rails_http_lab/environments_controller.rb
Instance Method Summary collapse
Instance Method Details
#index ⇒ Object
5 6 7 |
# File 'app/controllers/rails_http_lab/environments_controller.rb', line 5 def index render json: { environments: RailsHttpLab::Storage::Tree.new.build[:environments] } end |
#show ⇒ Object
9 10 11 12 13 |
# File 'app/controllers/rails_http_lab/environments_controller.rb', line 9 def show doc = storage.read_bru("environments/#{params[:name]}.bru") vars = doc.block("vars")&.pairs || [] render json: { name: params[:name], vars: vars } end |
#update ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 |
# File 'app/controllers/rails_http_lab/environments_controller.rb', line 15 def update pairs = Array(params[:vars]).map { |v| v = v.to_unsafe_h if v.respond_to?(:to_unsafe_h) [v["key"].to_s, v["value"].to_s] } doc = RailsHttpLab::Bruno::Document.new(blocks: [ RailsHttpLab::Bruno::Block.new(name: "vars", mode: :kv, pairs: pairs) ]) storage.write_bru("environments/#{params[:name]}.bru", doc) render json: { ok: true } end |