Skip to content

Commit

Permalink
Add refresh_values option to get_field to turn off the calling to Rba…
Browse files Browse the repository at this point in the history
  • Loading branch information
lfu committed Apr 27, 2016
1 parent 880f717 commit 428e6b0
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions app/models/miq_request_workflow.rb
Expand Up @@ -284,34 +284,34 @@ def provisioning_tab_list
tab_list
end

def get_all_dialogs
@dialogs[:dialogs].each_key { |d| get_dialog(d) }
def get_all_dialogs(refresh_values = true)
@dialogs[:dialogs].each_key { |d| get_dialog(d, refresh_values) }
@dialogs[:dialogs]
end

def get_dialog(dialog_name)
def get_dialog(dialog_name, refresh_values = true)
dialog = @dialogs.fetch_path(:dialogs, dialog_name.to_sym)
return {} unless dialog

get_all_fields(dialog_name)
get_all_fields(dialog_name, refresh_values)
dialog
end

def get_all_fields(dialog_name)
def get_all_fields(dialog_name, refresh_values = true)
dialog = @dialogs.fetch_path(:dialogs, dialog_name.to_sym)
return {} unless dialog

dialog[:fields].each_key { |f| get_field(f, dialog_name) }
dialog[:fields].each_key { |f| get_field(f, dialog_name, refresh_values) }
dialog[:fields]
end

def get_field(field_name, dialog_name = nil)
def get_field(field_name, dialog_name = nil, refresh_values = true)
field_name = field_name.to_sym
dialog_name = find_dialog_from_field_name(field_name) if dialog_name.nil?
field = @dialogs.fetch_path(:dialogs, dialog_name.to_sym, :fields, field_name)
return {} unless field

if field.key?(:values_from)
if field.key?(:values_from) && refresh_values
options = field[:values_from][:options] || {}
options[:prov_field_name] = field_name
field[:values] = send(field[:values_from][:method], options)
Expand Down

0 comments on commit 428e6b0

Please sign in to comment.