def validate_rpc_request(action, arguments)
unless actions.include?(action)
DDL.validation_fail!(:PLMC29, "Attempted to call action %{action} for %{plugin} but it's not declared in the DDL", :debug, :action => action, :plugin => @pluginname)
end
input = action_interface(action)[:input] || {}
input.keys.each do |key|
unless input[key][:optional]
unless arguments.keys.include?(key)
DDL.validation_fail!(:PLMC30, "Action '%{action}' needs a '%{key}' argument", :debug, :action => action, :key => key)
end
end
if arguments.keys.include?(key)
validate_input_argument(input, key, arguments[key])
end
end
true
end