Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="utf-8" />
- <title>Action Controller: Exception caught</title>
- <style>
- body {
- background-color: #FAFAFA;
- color: #333;
- margin: 0px;
- }
- body, p, ol, ul, td {
- font-family: helvetica, verdana, arial, sans-serif;
- font-size: 13px;
- line-height: 18px;
- }
- pre {
- font-size: 11px;
- white-space: pre-wrap;
- }
- pre.box {
- border: 1px solid #EEE;
- padding: 10px;
- margin: 0px;
- width: 958px;
- }
- header {
- color: #F0F0F0;
- background: #C52F24;
- padding: 0.5em 1.5em;
- }
- h1 {
- margin: 0.2em 0;
- line-height: 1.1em;
- font-size: 2em;
- }
- h2 {
- color: #C52F24;
- line-height: 25px;
- }
- .details {
- border: 1px solid #D0D0D0;
- border-radius: 4px;
- margin: 1em 0px;
- display: block;
- width: 978px;
- }
- .summary {
- padding: 8px 15px;
- border-bottom: 1px solid #D0D0D0;
- display: block;
- }
- .details pre {
- margin: 5px;
- border: none;
- }
- #container {
- box-sizing: border-box;
- width: 100%;
- padding: 0 1.5em;
- }
- .source * {
- margin: 0px;
- padding: 0px;
- }
- .source {
- border: 1px solid #D9D9D9;
- background: #ECECEC;
- width: 978px;
- }
- .source pre {
- padding: 10px 0px;
- border: none;
- }
- .source .data {
- font-size: 80%;
- overflow: auto;
- background-color: #FFF;
- }
- .info {
- padding: 0.5em;
- }
- .source .data .line_numbers {
- background-color: #ECECEC;
- color: #AAA;
- padding: 1em .5em;
- border-right: 1px solid #DDD;
- text-align: right;
- }
- .line {
- padding-left: 10px;
- }
- .line:hover {
- background-color: #F6F6F6;
- }
- .line.active {
- background-color: #FFCCCC;
- }
- .hidden {
- display: none;
- }
- a { color: #980905; }
- a:visited { color: #666; }
- a.trace-frames { color: #666; }
- a:hover { color: #C52F24; }
- a.trace-frames.selected { color: #C52F24 }
- </style>
- <script>
- var toggle = function(id) {
- var s = document.getElementById(id).style;
- s.display = s.display == 'none' ? 'block' : 'none';
- return false;
- }
- var show = function(id) {
- document.getElementById(id).style.display = 'block';
- }
- var hide = function(id) {
- document.getElementById(id).style.display = 'none';
- }
- var toggleTrace = function() {
- return toggle('blame_trace');
- }
- var toggleSessionDump = function() {
- return toggle('session_dump');
- }
- var toggleEnvDump = function() {
- return toggle('env_dump');
- }
- </script>
- </head>
- <body>
- <header>
- <h1>
- NoMethodError
- in Api::V1::FeedbacksController#update
- </h1>
- </header>
- <div id="container">
- <h2>undefined method `email' for nil:NilClass</h2>
- <div class="source " id="frame-source-0">
- <div class="info">
- Extracted source (around line <strong>#18</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> recipients.each do |recipient|
- </div><div class="line"> @recipient = recipient
- </div><div class="line active"> mail to: recipient.email, template_name: template
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-1">
- <div class="info">
- Extracted source (around line <strong>#16</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>14</span>
- <span>15</span>
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> @feedback = feedback
- </div><div class="line"> # @teams_count = teams_count
- </div><div class="line active"> recipients.each do |recipient|
- </div><div class="line"> @recipient = recipient
- </div><div class="line"> mail to: recipient.email, template_name: template
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-2">
- <div class="info">
- Extracted source (around line <strong>#16</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>14</span>
- <span>15</span>
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> @feedback = feedback
- </div><div class="line"> # @teams_count = teams_count
- </div><div class="line active"> recipients.each do |recipient|
- </div><div class="line"> @recipient = recipient
- </div><div class="line"> mail to: recipient.email, template_name: template
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-3">
- <div class="info">
- Extracted source (around line <strong>#5</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>3</span>
- <span>4</span>
- <span>5</span>
- <span>6</span>
- <span>7</span>
- <span>8</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def instant_report(feedback, recipients)
- </div><div class="line active"> send_feedback(feedback, recipients, __method__)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def summary(feedback, recipients)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-4">
- <div class="info">
- Extracted source (around line <strong>#198</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>196</span>
- <span>197</span>
- <span>198</span>
- <span>199</span>
- <span>200</span>
- <span>201</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # which is *not* necessarily the same as the action name.
- </div><div class="line"> def process_action(method_name, *args)
- </div><div class="line active"> send_action(method_name, *args)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Actually call the method associated with the action. Override
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-5">
- <div class="info">
- Extracted source (around line <strong>#20</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def process_action(*args)
- </div><div class="line"> run_callbacks(:process_action) do
- </div><div class="line active"> super
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-6">
- <div class="info">
- Extracted source (around line <strong>#88</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>86</span>
- <span>87</span>
- <span>88</span>
- <span>89</span>
- <span>90</span>
- <span>91</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def __run_callbacks__(callbacks, &block)
- </div><div class="line"> if callbacks.empty?
- </div><div class="line active"> yield if block_given?
- </div><div class="line"> else
- </div><div class="line"> runner = callbacks.compile
- </div><div class="line"> e = Filters::Environment.new(self, false, nil, block)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-7">
- <div class="info">
- Extracted source (around line <strong>#778</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>776</span>
- <span>777</span>
- <span>778</span>
- <span>779</span>
- <span>780</span>
- <span>781</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> module_eval <<-RUBY, __FILE__, __LINE__ + 1
- </div><div class="line"> def _run_#{name}_callbacks(&block)
- </div><div class="line active"> __run_callbacks__(_#{name}_callbacks, &block)
- </div><div class="line"> end
- </div><div class="line"> RUBY
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-8">
- <div class="info">
- Extracted source (around line <strong>#81</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>79</span>
- <span>80</span>
- <span>81</span>
- <span>82</span>
- <span>83</span>
- <span>84</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # end
- </div><div class="line"> def run_callbacks(kind, &block)
- </div><div class="line active"> send "_run_#{kind}_callbacks", &block
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-9">
- <div class="info">
- Extracted source (around line <strong>#19</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # process_action callbacks around the normal behavior.
- </div><div class="line"> def process_action(*args)
- </div><div class="line active"> run_callbacks(:process_action) do
- </div><div class="line"> super
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-10">
- <div class="info">
- Extracted source (around line <strong>#137</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>135</span>
- <span>136</span>
- <span>137</span>
- <span>138</span>
- <span>139</span>
- <span>140</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> @_response_body = nil
- </div><div class="line">
- </div><div class="line active"> process_action(action_name, *args)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Delegates to the class' #controller_path
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-11">
- <div class="info">
- Extracted source (around line <strong>#30</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def process(*) #:nodoc:
- </div><div class="line"> old_config, I18n.config = I18n.config, I18nProxy.new(I18n.config, lookup_context)
- </div><div class="line active"> super
- </div><div class="line"> ensure
- </div><div class="line"> I18n.config = old_config
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-12">
- <div class="info">
- Extracted source (around line <strong>#596</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>594</span>
- <span>595</span>
- <span>596</span>
- <span>597</span>
- <span>598</span>
- <span>599</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> lookup_context.skip_default_locale!
- </div><div class="line">
- </div><div class="line active"> super
- </div><div class="line"> @_message = NullMail.new unless @_mail_was_called
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-13">
- <div class="info">
- Extracted source (around line <strong>#164</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>162</span>
- <span>163</span>
- <span>164</span>
- <span>165</span>
- <span>166</span>
- <span>167</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def instrument(name, payload = {})
- </div><div class="line"> if notifier.listening?(name)
- </div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
- </div><div class="line"> else
- </div><div class="line"> yield payload if block_given?
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-14">
- <div class="info">
- Extracted source (around line <strong>#20</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> start name, payload
- </div><div class="line"> begin
- </div><div class="line active"> yield payload
- </div><div class="line"> rescue Exception => e
- </div><div class="line"> payload[:exception] = [e.class.name, e.message]
- </div><div class="line"> raise e
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-15">
- <div class="info">
- Extracted source (around line <strong>#164</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>162</span>
- <span>163</span>
- <span>164</span>
- <span>165</span>
- <span>166</span>
- <span>167</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def instrument(name, payload = {})
- </div><div class="line"> if notifier.listening?(name)
- </div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
- </div><div class="line"> else
- </div><div class="line"> yield payload if block_given?
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-16">
- <div class="info">
- Extracted source (around line <strong>#593</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>591</span>
- <span>592</span>
- <span>593</span>
- <span>594</span>
- <span>595</span>
- <span>596</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> }
- </div><div class="line">
- </div><div class="line active"> ActiveSupport::Notifications.instrument("process.action_mailer", payload) do
- </div><div class="line"> lookup_context.skip_default_locale!
- </div><div class="line">
- </div><div class="line"> super
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-17">
- <div class="info">
- Extracted source (around line <strong>#584</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>582</span>
- <span>583</span>
- <span>584</span>
- <span>585</span>
- <span>586</span>
- <span>587</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> @_mail_was_called = false
- </div><div class="line"> @_message = Mail.new
- </div><div class="line active"> process(method_name, *args) if method_name
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def process(method_name, *args) #:nodoc:
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-18">
- <div class="info">
- Extracted source (around line <strong>#25</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>23</span>
- <span>24</span>
- <span>25</span>
- <span>26</span>
- <span>27</span>
- <span>28</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def __getobj__ #:nodoc:
- </div><div class="line active"> @obj ||= @mailer.send(:new, @mail_method, *@args).message
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def __setobj__(obj) #:nodoc:
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-19">
- <div class="info">
- Extracted source (around line <strong>#25</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>23</span>
- <span>24</span>
- <span>25</span>
- <span>26</span>
- <span>27</span>
- <span>28</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def __getobj__ #:nodoc:
- </div><div class="line active"> @obj ||= @mailer.send(:new, @mail_method, *@args).message
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def __setobj__(obj) #:nodoc:
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-20">
- <div class="info">
- Extracted source (around line <strong>#34</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>32</span>
- <span>33</span>
- <span>34</span>
- <span>35</span>
- <span>36</span>
- <span>37</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # Returns the Mail::Message object
- </div><div class="line"> def message
- </div><div class="line active"> __getobj__
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Enqueues the email to be delivered through Active Job. When the
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-21">
- <div class="info">
- Extracted source (around line <strong>#85</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>83</span>
- <span>84</span>
- <span>85</span>
- <span>86</span>
- <span>87</span>
- <span>88</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> #
- </div><div class="line"> def deliver_now
- </div><div class="line active"> message.deliver
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def deliver! #:nodoc:
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-22">
- <div class="info">
- Extracted source (around line <strong>#10</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>8</span>
- <span>9</span>
- <span>10</span>
- <span>11</span>
- <span>12</span>
- <span>13</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def perform(mailer, mail_method, delivery_method, *args) # :nodoc:
- </div><div class="line active"> mailer.constantize.public_send(mail_method, *args).send(delivery_method)
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-23">
- <div class="info">
- Extracted source (around line <strong>#32</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- <span>34</span>
- <span>35</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> deserialize_arguments_if_needed
- </div><div class="line"> run_callbacks :perform do
- </div><div class="line active"> perform(*arguments)
- </div><div class="line"> end
- </div><div class="line"> rescue => exception
- </div><div class="line"> rescue_with_handler(exception) || raise(exception)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-24">
- <div class="info">
- Extracted source (around line <strong>#117</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>115</span>
- <span>116</span>
- <span>117</span>
- <span>118</span>
- <span>119</span>
- <span>120</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> block = env.run_block
- </div><div class="line active"> env.value = !env.halted && (!block || block.call)
- </div><div class="line"> env
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-25">
- <div class="info">
- Extracted source (around line <strong>#555</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>553</span>
- <span>554</span>
- <span>555</span>
- <span>556</span>
- <span>557</span>
- <span>558</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def compile
- </div><div class="line"> @callbacks || @mutex.synchronize do
- </div><div class="line active"> final_sequence = CallbackSequence.new { |env| Filters::ENDING.call(env) }
- </div><div class="line"> @callbacks ||= @chain.reverse.inject(final_sequence) do |callback_sequence, callback|
- </div><div class="line"> callback.apply callback_sequence
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-26">
- <div class="info">
- Extracted source (around line <strong>#505</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>503</span>
- <span>504</span>
- <span>505</span>
- <span>506</span>
- <span>507</span>
- <span>508</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(*args)
- </div><div class="line"> @before.each { |b| b.call(*args) }
- </div><div class="line active"> value = @call.call(*args)
- </div><div class="line"> @after.each { |a| a.call(*args) }
- </div><div class="line"> value
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-27">
- <div class="info">
- Extracted source (around line <strong>#498</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>496</span>
- <span>497</span>
- <span>498</span>
- <span>499</span>
- <span>500</span>
- <span>501</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> CallbackSequence.new do |*args|
- </div><div class="line"> around.call(*args) {
- </div><div class="line active"> self.call(*args)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-28">
- <div class="info">
- Extracted source (around line <strong>#343</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>341</span>
- <span>342</span>
- <span>343</span>
- <span>344</span>
- <span>345</span>
- <span>346</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> callback_sequence.around do |env, &run|
- </div><div class="line"> user_callback.call(env.target, env.value) {
- </div><div class="line active"> env = run.call env
- </div><div class="line"> env.value
- </div><div class="line"> }
- </div><div class="line"> env
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-29">
- <div class="info">
- Extracted source (around line <strong>#257</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>255</span>
- <span>256</span>
- <span>257</span>
- <span>258</span>
- <span>259</span>
- <span>260</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> self.locale = tmp_locale
- </div><div class="line"> end
- </div><div class="line active"> yield
- </div><div class="line"> ensure
- </div><div class="line"> self.locale = current_locale if tmp_locale
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-30">
- <div class="info">
- Extracted source (around line <strong>#7</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>5</span>
- <span>6</span>
- <span>7</span>
- <span>8</span>
- <span>9</span>
- <span>10</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> included do
- </div><div class="line"> around_perform do |job, block, _|
- </div><div class="line active"> I18n.with_locale(job.locale, &block)
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-31">
- <div class="info">
- Extracted source (around line <strong>#441</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>439</span>
- <span>440</span>
- <span>441</span>
- <span>442</span>
- <span>443</span>
- <span>444</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> return lambda { |target, _, &block|
- </div><div class="line"> raise ArgumentError unless block
- </div><div class="line active"> target.instance_exec(target, block, &filter)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-32">
- <div class="info">
- Extracted source (around line <strong>#441</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>439</span>
- <span>440</span>
- <span>441</span>
- <span>442</span>
- <span>443</span>
- <span>444</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> return lambda { |target, _, &block|
- </div><div class="line"> raise ArgumentError unless block
- </div><div class="line active"> target.instance_exec(target, block, &filter)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-33">
- <div class="info">
- Extracted source (around line <strong>#342</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>340</span>
- <span>341</span>
- <span>342</span>
- <span>343</span>
- <span>344</span>
- <span>345</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def self.simple(callback_sequence, user_callback)
- </div><div class="line"> callback_sequence.around do |env, &run|
- </div><div class="line active"> user_callback.call(env.target, env.value) {
- </div><div class="line"> env = run.call env
- </div><div class="line"> env.value
- </div><div class="line"> }
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-34">
- <div class="info">
- Extracted source (around line <strong>#497</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>495</span>
- <span>496</span>
- <span>497</span>
- <span>498</span>
- <span>499</span>
- <span>500</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def around(&around)
- </div><div class="line"> CallbackSequence.new do |*args|
- </div><div class="line active"> around.call(*args) {
- </div><div class="line"> self.call(*args)
- </div><div class="line"> }
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-35">
- <div class="info">
- Extracted source (around line <strong>#505</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>503</span>
- <span>504</span>
- <span>505</span>
- <span>506</span>
- <span>507</span>
- <span>508</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(*args)
- </div><div class="line"> @before.each { |b| b.call(*args) }
- </div><div class="line active"> value = @call.call(*args)
- </div><div class="line"> @after.each { |a| a.call(*args) }
- </div><div class="line"> value
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-36">
- <div class="info">
- Extracted source (around line <strong>#498</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>496</span>
- <span>497</span>
- <span>498</span>
- <span>499</span>
- <span>500</span>
- <span>501</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> CallbackSequence.new do |*args|
- </div><div class="line"> around.call(*args) {
- </div><div class="line active"> self.call(*args)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-37">
- <div class="info">
- Extracted source (around line <strong>#343</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>341</span>
- <span>342</span>
- <span>343</span>
- <span>344</span>
- <span>345</span>
- <span>346</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> callback_sequence.around do |env, &run|
- </div><div class="line"> user_callback.call(env.target, env.value) {
- </div><div class="line active"> env = run.call env
- </div><div class="line"> env.value
- </div><div class="line"> }
- </div><div class="line"> env
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-38">
- <div class="info">
- Extracted source (around line <strong>#23</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>21</span>
- <span>22</span>
- <span>23</span>
- <span>24</span>
- <span>25</span>
- <span>26</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> ActiveSupport::Notifications.instrument("perform_start.active_job", payload.dup)
- </div><div class="line"> ActiveSupport::Notifications.instrument("perform.active_job", payload) do
- </div><div class="line active"> block.call
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-39">
- <div class="info">
- Extracted source (around line <strong>#164</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>162</span>
- <span>163</span>
- <span>164</span>
- <span>165</span>
- <span>166</span>
- <span>167</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def instrument(name, payload = {})
- </div><div class="line"> if notifier.listening?(name)
- </div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
- </div><div class="line"> else
- </div><div class="line"> yield payload if block_given?
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-40">
- <div class="info">
- Extracted source (around line <strong>#20</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> start name, payload
- </div><div class="line"> begin
- </div><div class="line active"> yield payload
- </div><div class="line"> rescue Exception => e
- </div><div class="line"> payload[:exception] = [e.class.name, e.message]
- </div><div class="line"> raise e
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-41">
- <div class="info">
- Extracted source (around line <strong>#164</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>162</span>
- <span>163</span>
- <span>164</span>
- <span>165</span>
- <span>166</span>
- <span>167</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def instrument(name, payload = {})
- </div><div class="line"> if notifier.listening?(name)
- </div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
- </div><div class="line"> else
- </div><div class="line"> yield payload if block_given?
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-42">
- <div class="info">
- Extracted source (around line <strong>#22</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- <span>24</span>
- <span>25</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> payload = {adapter: job.class.queue_adapter, job: job}
- </div><div class="line"> ActiveSupport::Notifications.instrument("perform_start.active_job", payload.dup)
- </div><div class="line active"> ActiveSupport::Notifications.instrument("perform.active_job", payload) do
- </div><div class="line"> block.call
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-43">
- <div class="info">
- Extracted source (around line <strong>#43</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>41</span>
- <span>42</span>
- <span>43</span>
- <span>44</span>
- <span>45</span>
- <span>46</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> if logger.respond_to?(:tagged)
- </div><div class="line"> tags.unshift "ActiveJob" unless logger_tagged_by_active_job?
- </div><div class="line active"> ActiveJob::Base.logger.tagged(*tags){ yield }
- </div><div class="line"> else
- </div><div class="line"> yield
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-44">
- <div class="info">
- Extracted source (around line <strong>#68</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- <span>71</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def tagged(*tags)
- </div><div class="line active"> formatter.tagged(*tags) { yield self }
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def flush
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-45">
- <div class="info">
- Extracted source (around line <strong>#26</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>24</span>
- <span>25</span>
- <span>26</span>
- <span>27</span>
- <span>28</span>
- <span>29</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def tagged(*tags)
- </div><div class="line"> new_tags = push_tags(*tags)
- </div><div class="line active"> yield self
- </div><div class="line"> ensure
- </div><div class="line"> pop_tags(new_tags.size)
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-46">
- <div class="info">
- Extracted source (around line <strong>#68</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- <span>71</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def tagged(*tags)
- </div><div class="line active"> formatter.tagged(*tags) { yield self }
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def flush
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-47">
- <div class="info">
- Extracted source (around line <strong>#43</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>41</span>
- <span>42</span>
- <span>43</span>
- <span>44</span>
- <span>45</span>
- <span>46</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> if logger.respond_to?(:tagged)
- </div><div class="line"> tags.unshift "ActiveJob" unless logger_tagged_by_active_job?
- </div><div class="line active"> ActiveJob::Base.logger.tagged(*tags){ yield }
- </div><div class="line"> else
- </div><div class="line"> yield
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-48">
- <div class="info">
- Extracted source (around line <strong>#19</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> around_perform do |job, block, _|
- </div><div class="line active"> tag_logger(job.class.name, job.job_id) do
- </div><div class="line"> payload = {adapter: job.class.queue_adapter, job: job}
- </div><div class="line"> ActiveSupport::Notifications.instrument("perform_start.active_job", payload.dup)
- </div><div class="line"> ActiveSupport::Notifications.instrument("perform.active_job", payload) do
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-49">
- <div class="info">
- Extracted source (around line <strong>#441</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>439</span>
- <span>440</span>
- <span>441</span>
- <span>442</span>
- <span>443</span>
- <span>444</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> return lambda { |target, _, &block|
- </div><div class="line"> raise ArgumentError unless block
- </div><div class="line active"> target.instance_exec(target, block, &filter)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-50">
- <div class="info">
- Extracted source (around line <strong>#441</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>439</span>
- <span>440</span>
- <span>441</span>
- <span>442</span>
- <span>443</span>
- <span>444</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> return lambda { |target, _, &block|
- </div><div class="line"> raise ArgumentError unless block
- </div><div class="line active"> target.instance_exec(target, block, &filter)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-51">
- <div class="info">
- Extracted source (around line <strong>#342</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>340</span>
- <span>341</span>
- <span>342</span>
- <span>343</span>
- <span>344</span>
- <span>345</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def self.simple(callback_sequence, user_callback)
- </div><div class="line"> callback_sequence.around do |env, &run|
- </div><div class="line active"> user_callback.call(env.target, env.value) {
- </div><div class="line"> env = run.call env
- </div><div class="line"> env.value
- </div><div class="line"> }
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-52">
- <div class="info">
- Extracted source (around line <strong>#497</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>495</span>
- <span>496</span>
- <span>497</span>
- <span>498</span>
- <span>499</span>
- <span>500</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def around(&around)
- </div><div class="line"> CallbackSequence.new do |*args|
- </div><div class="line active"> around.call(*args) {
- </div><div class="line"> self.call(*args)
- </div><div class="line"> }
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-53">
- <div class="info">
- Extracted source (around line <strong>#505</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>503</span>
- <span>504</span>
- <span>505</span>
- <span>506</span>
- <span>507</span>
- <span>508</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(*args)
- </div><div class="line"> @before.each { |b| b.call(*args) }
- </div><div class="line active"> value = @call.call(*args)
- </div><div class="line"> @after.each { |a| a.call(*args) }
- </div><div class="line"> value
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-54">
- <div class="info">
- Extracted source (around line <strong>#92</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>90</span>
- <span>91</span>
- <span>92</span>
- <span>93</span>
- <span>94</span>
- <span>95</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> runner = callbacks.compile
- </div><div class="line"> e = Filters::Environment.new(self, false, nil, block)
- </div><div class="line active"> runner.call(e).value
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-55">
- <div class="info">
- Extracted source (around line <strong>#778</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>776</span>
- <span>777</span>
- <span>778</span>
- <span>779</span>
- <span>780</span>
- <span>781</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> module_eval <<-RUBY, __FILE__, __LINE__ + 1
- </div><div class="line"> def _run_#{name}_callbacks(&block)
- </div><div class="line active"> __run_callbacks__(_#{name}_callbacks, &block)
- </div><div class="line"> end
- </div><div class="line"> RUBY
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-56">
- <div class="info">
- Extracted source (around line <strong>#81</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>79</span>
- <span>80</span>
- <span>81</span>
- <span>82</span>
- <span>83</span>
- <span>84</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # end
- </div><div class="line"> def run_callbacks(kind, &block)
- </div><div class="line active"> send "_run_#{kind}_callbacks", &block
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-57">
- <div class="info">
- Extracted source (around line <strong>#31</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- <span>34</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def perform_now
- </div><div class="line"> deserialize_arguments_if_needed
- </div><div class="line active"> run_callbacks :perform do
- </div><div class="line"> perform(*arguments)
- </div><div class="line"> end
- </div><div class="line"> rescue => exception
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-58">
- <div class="info">
- Extracted source (around line <strong>#21</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- <span>24</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def execute(job_data) #:nodoc:
- </div><div class="line"> job = deserialize(job_data)
- </div><div class="line active"> job.perform_now
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-59">
- <div class="info">
- Extracted source (around line <strong>#14</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>12</span>
- <span>13</span>
- <span>14</span>
- <span>15</span>
- <span>16</span>
- <span>17</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> class << self
- </div><div class="line"> def enqueue(job) #:nodoc:
- </div><div class="line active"> Base.execute(job.serialize)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def enqueue_at(*) #:nodoc:
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-60">
- <div class="info">
- Extracted source (around line <strong>#71</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>69</span>
- <span>70</span>
- <span>71</span>
- <span>72</span>
- <span>73</span>
- <span>74</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> self.class.queue_adapter.enqueue_at self, self.scheduled_at
- </div><div class="line"> else
- </div><div class="line active"> self.class.queue_adapter.enqueue self
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line"> self
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-61">
- <div class="info">
- Extracted source (around line <strong>#117</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>115</span>
- <span>116</span>
- <span>117</span>
- <span>118</span>
- <span>119</span>
- <span>120</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> block = env.run_block
- </div><div class="line active"> env.value = !env.halted && (!block || block.call)
- </div><div class="line"> env
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-62">
- <div class="info">
- Extracted source (around line <strong>#555</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>553</span>
- <span>554</span>
- <span>555</span>
- <span>556</span>
- <span>557</span>
- <span>558</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def compile
- </div><div class="line"> @callbacks || @mutex.synchronize do
- </div><div class="line active"> final_sequence = CallbackSequence.new { |env| Filters::ENDING.call(env) }
- </div><div class="line"> @callbacks ||= @chain.reverse.inject(final_sequence) do |callback_sequence, callback|
- </div><div class="line"> callback.apply callback_sequence
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-63">
- <div class="info">
- Extracted source (around line <strong>#505</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>503</span>
- <span>504</span>
- <span>505</span>
- <span>506</span>
- <span>507</span>
- <span>508</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(*args)
- </div><div class="line"> @before.each { |b| b.call(*args) }
- </div><div class="line active"> value = @call.call(*args)
- </div><div class="line"> @after.each { |a| a.call(*args) }
- </div><div class="line"> value
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-64">
- <div class="info">
- Extracted source (around line <strong>#498</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>496</span>
- <span>497</span>
- <span>498</span>
- <span>499</span>
- <span>500</span>
- <span>501</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> CallbackSequence.new do |*args|
- </div><div class="line"> around.call(*args) {
- </div><div class="line active"> self.call(*args)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-65">
- <div class="info">
- Extracted source (around line <strong>#343</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>341</span>
- <span>342</span>
- <span>343</span>
- <span>344</span>
- <span>345</span>
- <span>346</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> callback_sequence.around do |env, &run|
- </div><div class="line"> user_callback.call(env.target, env.value) {
- </div><div class="line active"> env = run.call env
- </div><div class="line"> env.value
- </div><div class="line"> }
- </div><div class="line"> env
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-66">
- <div class="info">
- Extracted source (around line <strong>#14</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>12</span>
- <span>13</span>
- <span>14</span>
- <span>15</span>
- <span>16</span>
- <span>17</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> around_enqueue do |_, block, _|
- </div><div class="line"> tag_logger do
- </div><div class="line active"> block.call
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-67">
- <div class="info">
- Extracted source (around line <strong>#43</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>41</span>
- <span>42</span>
- <span>43</span>
- <span>44</span>
- <span>45</span>
- <span>46</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> if logger.respond_to?(:tagged)
- </div><div class="line"> tags.unshift "ActiveJob" unless logger_tagged_by_active_job?
- </div><div class="line active"> ActiveJob::Base.logger.tagged(*tags){ yield }
- </div><div class="line"> else
- </div><div class="line"> yield
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-68">
- <div class="info">
- Extracted source (around line <strong>#68</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- <span>71</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def tagged(*tags)
- </div><div class="line active"> formatter.tagged(*tags) { yield self }
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def flush
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-69">
- <div class="info">
- Extracted source (around line <strong>#26</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>24</span>
- <span>25</span>
- <span>26</span>
- <span>27</span>
- <span>28</span>
- <span>29</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def tagged(*tags)
- </div><div class="line"> new_tags = push_tags(*tags)
- </div><div class="line active"> yield self
- </div><div class="line"> ensure
- </div><div class="line"> pop_tags(new_tags.size)
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-70">
- <div class="info">
- Extracted source (around line <strong>#68</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- <span>71</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def tagged(*tags)
- </div><div class="line active"> formatter.tagged(*tags) { yield self }
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def flush
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-71">
- <div class="info">
- Extracted source (around line <strong>#43</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>41</span>
- <span>42</span>
- <span>43</span>
- <span>44</span>
- <span>45</span>
- <span>46</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> if logger.respond_to?(:tagged)
- </div><div class="line"> tags.unshift "ActiveJob" unless logger_tagged_by_active_job?
- </div><div class="line active"> ActiveJob::Base.logger.tagged(*tags){ yield }
- </div><div class="line"> else
- </div><div class="line"> yield
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-72">
- <div class="info">
- Extracted source (around line <strong>#13</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>11</span>
- <span>12</span>
- <span>13</span>
- <span>14</span>
- <span>15</span>
- <span>16</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> around_enqueue do |_, block, _|
- </div><div class="line active"> tag_logger do
- </div><div class="line"> block.call
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-73">
- <div class="info">
- Extracted source (around line <strong>#441</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>439</span>
- <span>440</span>
- <span>441</span>
- <span>442</span>
- <span>443</span>
- <span>444</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> return lambda { |target, _, &block|
- </div><div class="line"> raise ArgumentError unless block
- </div><div class="line active"> target.instance_exec(target, block, &filter)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-74">
- <div class="info">
- Extracted source (around line <strong>#441</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>439</span>
- <span>440</span>
- <span>441</span>
- <span>442</span>
- <span>443</span>
- <span>444</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> return lambda { |target, _, &block|
- </div><div class="line"> raise ArgumentError unless block
- </div><div class="line active"> target.instance_exec(target, block, &filter)
- </div><div class="line"> }
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-75">
- <div class="info">
- Extracted source (around line <strong>#342</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>340</span>
- <span>341</span>
- <span>342</span>
- <span>343</span>
- <span>344</span>
- <span>345</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def self.simple(callback_sequence, user_callback)
- </div><div class="line"> callback_sequence.around do |env, &run|
- </div><div class="line active"> user_callback.call(env.target, env.value) {
- </div><div class="line"> env = run.call env
- </div><div class="line"> env.value
- </div><div class="line"> }
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-76">
- <div class="info">
- Extracted source (around line <strong>#497</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>495</span>
- <span>496</span>
- <span>497</span>
- <span>498</span>
- <span>499</span>
- <span>500</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def around(&around)
- </div><div class="line"> CallbackSequence.new do |*args|
- </div><div class="line active"> around.call(*args) {
- </div><div class="line"> self.call(*args)
- </div><div class="line"> }
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-77">
- <div class="info">
- Extracted source (around line <strong>#505</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>503</span>
- <span>504</span>
- <span>505</span>
- <span>506</span>
- <span>507</span>
- <span>508</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(*args)
- </div><div class="line"> @before.each { |b| b.call(*args) }
- </div><div class="line active"> value = @call.call(*args)
- </div><div class="line"> @after.each { |a| a.call(*args) }
- </div><div class="line"> value
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-78">
- <div class="info">
- Extracted source (around line <strong>#92</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>90</span>
- <span>91</span>
- <span>92</span>
- <span>93</span>
- <span>94</span>
- <span>95</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> runner = callbacks.compile
- </div><div class="line"> e = Filters::Environment.new(self, false, nil, block)
- </div><div class="line active"> runner.call(e).value
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-79">
- <div class="info">
- Extracted source (around line <strong>#778</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>776</span>
- <span>777</span>
- <span>778</span>
- <span>779</span>
- <span>780</span>
- <span>781</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> module_eval <<-RUBY, __FILE__, __LINE__ + 1
- </div><div class="line"> def _run_#{name}_callbacks(&block)
- </div><div class="line active"> __run_callbacks__(_#{name}_callbacks, &block)
- </div><div class="line"> end
- </div><div class="line"> RUBY
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-80">
- <div class="info">
- Extracted source (around line <strong>#81</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>79</span>
- <span>80</span>
- <span>81</span>
- <span>82</span>
- <span>83</span>
- <span>84</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # end
- </div><div class="line"> def run_callbacks(kind, &block)
- </div><div class="line active"> send "_run_#{kind}_callbacks", &block
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-81">
- <div class="info">
- Extracted source (around line <strong>#67</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>65</span>
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> self.scheduled_at = options[:wait_until].to_f if options[:wait_until]
- </div><div class="line"> self.queue_name = self.class.queue_name_from_part(options[:queue]) if options[:queue]
- </div><div class="line active"> run_callbacks :enqueue do
- </div><div class="line"> if self.scheduled_at
- </div><div class="line"> self.class.queue_adapter.enqueue_at self, self.scheduled_at
- </div><div class="line"> else
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-82">
- <div class="info">
- Extracted source (around line <strong>#13</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>11</span>
- <span>12</span>
- <span>13</span>
- <span>14</span>
- <span>15</span>
- <span>16</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def perform_later(*args)
- </div><div class="line active"> @job_class.new(*args).enqueue @options
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-83">
- <div class="info">
- Extracted source (around line <strong>#112</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>110</span>
- <span>111</span>
- <span>112</span>
- <span>113</span>
- <span>114</span>
- <span>115</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def enqueue_delivery(delivery_method, options={})
- </div><div class="line"> args = @mailer.name, @mail_method.to_s, delivery_method.to_s, *@args
- </div><div class="line active"> ActionMailer::DeliveryJob.set(options).perform_later(*args)
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-84">
- <div class="info">
- Extracted source (around line <strong>#68</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- <span>71</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # * <tt>:queue</tt> - Enqueue the email on the specified queue
- </div><div class="line"> def deliver_later(options={})
- </div><div class="line active"> enqueue_delivery :deliver_now, options
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Delivers an email without checking +perform_deliveries+ and +raise_delivery_errors+,
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-85">
- <div class="info">
- Extracted source (around line <strong>#45</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>43</span>
- <span>44</span>
- <span>45</span>
- <span>46</span>
- <span>47</span>
- <span>48</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def notify_sellers
- </div><div class="line"> recipients = tour.house.mail_recipients
- </div><div class="line active"> FeedbackMailer.instant_report(self, recipients).deliver_later
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-86">
- <div class="info">
- Extracted source (around line <strong>#17</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>15</span>
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> feedback.assess params[:status]
- </div><div class="line"> feedback.save!
- </div><div class="line active"> feedback.notify_sellers
- </div><div class="line"> listener.update_feedback_success feedback
- </div><div class="line"> rescue Exception => e
- </div><div class="line"> listener.update_feedback_error e
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-87">
- <div class="info">
- Extracted source (around line <strong>#12</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>10</span>
- <span>11</span>
- <span>12</span>
- <span>13</span>
- <span>14</span>
- <span>15</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> previous_context = self.context
- </div><div class="line"> self.context = self
- </div><div class="line active"> result = yield
- </div><div class="line"> self.context = previous_context
- </div><div class="line">
- </div><div class="line"> result
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-88">
- <div class="info">
- Extracted source (around line <strong>#11</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>9</span>
- <span>10</span>
- <span>11</span>
- <span>12</span>
- <span>13</span>
- <span>14</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def perform
- </div><div class="line active"> in_context do
- </div><div class="line"> begin
- </div><div class="line"> rooms_feedbacks = params.fetch_provided_rooms_feedback
- </div><div class="line"> feedback.rate_rooms rooms_feedbacks
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-89">
- <div class="info">
- Extracted source (around line <strong>#15</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>13</span>
- <span>14</span>
- <span>15</span>
- <span>16</span>
- <span>17</span>
- <span>18</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def update
- </div><div class="line active"> UpdateFeedback.new(@feedback, feedback_update_params, self).perform
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def update_feedback_success(feedback)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-90">
- <div class="info">
- Extracted source (around line <strong>#4</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>2</span>
- <span>3</span>
- <span>4</span>
- <span>5</span>
- <span>6</span>
- <span>7</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> module ImplicitRender
- </div><div class="line"> def send_action(method, *args)
- </div><div class="line active"> ret = super
- </div><div class="line"> default_render unless performed?
- </div><div class="line"> ret
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-91">
- <div class="info">
- Extracted source (around line <strong>#198</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>196</span>
- <span>197</span>
- <span>198</span>
- <span>199</span>
- <span>200</span>
- <span>201</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # which is *not* necessarily the same as the action name.
- </div><div class="line"> def process_action(method_name, *args)
- </div><div class="line active"> send_action(method_name, *args)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Actually call the method associated with the action. Override
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-92">
- <div class="info">
- Extracted source (around line <strong>#10</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>8</span>
- <span>9</span>
- <span>10</span>
- <span>11</span>
- <span>12</span>
- <span>13</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def process_action(*) #:nodoc:
- </div><div class="line"> self.formats = request.formats.map(&:ref).compact
- </div><div class="line active"> super
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Check for double render errors and set the content_type after rendering.
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-93">
- <div class="info">
- Extracted source (around line <strong>#20</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def process_action(*args)
- </div><div class="line"> run_callbacks(:process_action) do
- </div><div class="line active"> super
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-94">
- <div class="info">
- Extracted source (around line <strong>#117</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>115</span>
- <span>116</span>
- <span>117</span>
- <span>118</span>
- <span>119</span>
- <span>120</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> block = env.run_block
- </div><div class="line active"> env.value = !env.halted && (!block || block.call)
- </div><div class="line"> env
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-95">
- <div class="info">
- Extracted source (around line <strong>#555</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>553</span>
- <span>554</span>
- <span>555</span>
- <span>556</span>
- <span>557</span>
- <span>558</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def compile
- </div><div class="line"> @callbacks || @mutex.synchronize do
- </div><div class="line active"> final_sequence = CallbackSequence.new { |env| Filters::ENDING.call(env) }
- </div><div class="line"> @callbacks ||= @chain.reverse.inject(final_sequence) do |callback_sequence, callback|
- </div><div class="line"> callback.apply callback_sequence
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-96">
- <div class="info">
- Extracted source (around line <strong>#505</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>503</span>
- <span>504</span>
- <span>505</span>
- <span>506</span>
- <span>507</span>
- <span>508</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(*args)
- </div><div class="line"> @before.each { |b| b.call(*args) }
- </div><div class="line active"> value = @call.call(*args)
- </div><div class="line"> @after.each { |a| a.call(*args) }
- </div><div class="line"> value
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-97">
- <div class="info">
- Extracted source (around line <strong>#92</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>90</span>
- <span>91</span>
- <span>92</span>
- <span>93</span>
- <span>94</span>
- <span>95</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> runner = callbacks.compile
- </div><div class="line"> e = Filters::Environment.new(self, false, nil, block)
- </div><div class="line active"> runner.call(e).value
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-98">
- <div class="info">
- Extracted source (around line <strong>#778</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>776</span>
- <span>777</span>
- <span>778</span>
- <span>779</span>
- <span>780</span>
- <span>781</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> module_eval <<-RUBY, __FILE__, __LINE__ + 1
- </div><div class="line"> def _run_#{name}_callbacks(&block)
- </div><div class="line active"> __run_callbacks__(_#{name}_callbacks, &block)
- </div><div class="line"> end
- </div><div class="line"> RUBY
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-99">
- <div class="info">
- Extracted source (around line <strong>#81</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>79</span>
- <span>80</span>
- <span>81</span>
- <span>82</span>
- <span>83</span>
- <span>84</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # end
- </div><div class="line"> def run_callbacks(kind, &block)
- </div><div class="line active"> send "_run_#{kind}_callbacks", &block
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-100">
- <div class="info">
- Extracted source (around line <strong>#19</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # process_action callbacks around the normal behavior.
- </div><div class="line"> def process_action(*args)
- </div><div class="line active"> run_callbacks(:process_action) do
- </div><div class="line"> super
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-101">
- <div class="info">
- Extracted source (around line <strong>#29</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>27</span>
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> private
- </div><div class="line"> def process_action(*args)
- </div><div class="line active"> super
- </div><div class="line"> rescue Exception => exception
- </div><div class="line"> request.env['action_dispatch.show_detailed_exceptions'] ||= show_detailed_exceptions?
- </div><div class="line"> rescue_with_handler(exception) || raise(exception)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-102">
- <div class="info">
- Extracted source (around line <strong>#32</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- <span>34</span>
- <span>35</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> ActiveSupport::Notifications.instrument("process_action.action_controller", raw_payload) do |payload|
- </div><div class="line"> begin
- </div><div class="line active"> result = super
- </div><div class="line"> payload[:status] = response.status
- </div><div class="line"> result
- </div><div class="line"> ensure
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-103">
- <div class="info">
- Extracted source (around line <strong>#164</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>162</span>
- <span>163</span>
- <span>164</span>
- <span>165</span>
- <span>166</span>
- <span>167</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def instrument(name, payload = {})
- </div><div class="line"> if notifier.listening?(name)
- </div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
- </div><div class="line"> else
- </div><div class="line"> yield payload if block_given?
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-104">
- <div class="info">
- Extracted source (around line <strong>#20</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> start name, payload
- </div><div class="line"> begin
- </div><div class="line active"> yield payload
- </div><div class="line"> rescue Exception => e
- </div><div class="line"> payload[:exception] = [e.class.name, e.message]
- </div><div class="line"> raise e
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-105">
- <div class="info">
- Extracted source (around line <strong>#164</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>162</span>
- <span>163</span>
- <span>164</span>
- <span>165</span>
- <span>166</span>
- <span>167</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def instrument(name, payload = {})
- </div><div class="line"> if notifier.listening?(name)
- </div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
- </div><div class="line"> else
- </div><div class="line"> yield payload if block_given?
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-106">
- <div class="info">
- Extracted source (around line <strong>#30</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> ActiveSupport::Notifications.instrument("start_processing.action_controller", raw_payload.dup)
- </div><div class="line">
- </div><div class="line active"> ActiveSupport::Notifications.instrument("process_action.action_controller", raw_payload) do |payload|
- </div><div class="line"> begin
- </div><div class="line"> result = super
- </div><div class="line"> payload[:status] = response.status
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-107">
- <div class="info">
- Extracted source (around line <strong>#250</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>248</span>
- <span>249</span>
- <span>250</span>
- <span>251</span>
- <span>252</span>
- <span>253</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> request.filtered_parameters.merge! wrapped_filtered_hash
- </div><div class="line"> end
- </div><div class="line active"> super
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-108">
- <div class="info">
- Extracted source (around line <strong>#18</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # and it won't be cleaned up by the method below.
- </div><div class="line"> ActiveRecord::LogSubscriber.reset_runtime
- </div><div class="line active"> super
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def cleanup_view_runtime
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-109">
- <div class="info">
- Extracted source (around line <strong>#137</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>135</span>
- <span>136</span>
- <span>137</span>
- <span>138</span>
- <span>139</span>
- <span>140</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> @_response_body = nil
- </div><div class="line">
- </div><div class="line active"> process_action(action_name, *args)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Delegates to the class' #controller_path
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-110">
- <div class="info">
- Extracted source (around line <strong>#30</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def process(*) #:nodoc:
- </div><div class="line"> old_config, I18n.config = I18n.config, I18nProxy.new(I18n.config, lookup_context)
- </div><div class="line active"> super
- </div><div class="line"> ensure
- </div><div class="line"> I18n.config = old_config
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-111">
- <div class="info">
- Extracted source (around line <strong>#196</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>194</span>
- <span>195</span>
- <span>196</span>
- <span>197</span>
- <span>198</span>
- <span>199</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> @_env = request.env
- </div><div class="line"> @_env['action_controller.instance'] = self
- </div><div class="line active"> process(name)
- </div><div class="line"> to_a
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-112">
- <div class="info">
- Extracted source (around line <strong>#13</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>11</span>
- <span>12</span>
- <span>13</span>
- <span>14</span>
- <span>15</span>
- <span>16</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def dispatch(action, request)
- </div><div class="line"> set_response!(request)
- </div><div class="line active"> super(action, request)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def response_body=(body)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-113">
- <div class="info">
- Extracted source (around line <strong>#237</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>235</span>
- <span>236</span>
- <span>237</span>
- <span>238</span>
- <span>239</span>
- <span>240</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> end
- </div><div class="line"> else
- </div><div class="line active"> lambda { |env| new.dispatch(name, klass.new(env)) }
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-114">
- <div class="info">
- Extracted source (around line <strong>#76</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>74</span>
- <span>75</span>
- <span>76</span>
- <span>77</span>
- <span>78</span>
- <span>79</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def dispatch(controller, action, env)
- </div><div class="line active"> controller.action(action).call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def normalize_controller!(params)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-115">
- <div class="info">
- Extracted source (around line <strong>#45</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>43</span>
- <span>44</span>
- <span>45</span>
- <span>46</span>
- <span>47</span>
- <span>48</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> end
- </div><div class="line">
- </div><div class="line active"> dispatch(controller, params[:action], req.env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def prepare_params!(params)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-116">
- <div class="info">
- Extracted source (around line <strong>#49</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>47</span>
- <span>48</span>
- <span>49</span>
- <span>50</span>
- <span>51</span>
- <span>52</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> if dispatcher?
- </div><div class="line active"> @app.serve req
- </div><div class="line"> else
- </div><div class="line"> @app.call req.env
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-117">
- <div class="info">
- Extracted source (around line <strong>#43</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>41</span>
- <span>42</span>
- <span>43</span>
- <span>44</span>
- <span>45</span>
- <span>46</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> req.path_parameters = set_params.merge parameters
- </div><div class="line">
- </div><div class="line active"> status, headers, body = route.app.serve(req)
- </div><div class="line">
- </div><div class="line"> if 'pass' == headers['X-Cascade']
- </div><div class="line"> req.script_name = script_name
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-118">
- <div class="info">
- Extracted source (around line <strong>#30</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def serve(req)
- </div><div class="line active"> find_routes(req).each do |match, parameters, route|
- </div><div class="line"> set_params = req.path_parameters
- </div><div class="line"> path_info = req.path_info
- </div><div class="line"> script_name = req.script_name
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-119">
- <div class="info">
- Extracted source (around line <strong>#30</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def serve(req)
- </div><div class="line active"> find_routes(req).each do |match, parameters, route|
- </div><div class="line"> set_params = req.path_parameters
- </div><div class="line"> path_info = req.path_info
- </div><div class="line"> script_name = req.script_name
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-120">
- <div class="info">
- Extracted source (around line <strong>#817</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>815</span>
- <span>816</span>
- <span>817</span>
- <span>818</span>
- <span>819</span>
- <span>820</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> req = request_class.new(env)
- </div><div class="line"> req.path_info = Journey::Router::Utils.normalize_path(req.path_info)
- </div><div class="line active"> @router.serve(req)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def recognize_path(path, environment = {})
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-121">
- <div class="info">
- Extracted source (around line <strong>#35</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>33</span>
- <span>34</span>
- <span>35</span>
- <span>36</span>
- <span>37</span>
- <span>38</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> env['warden'] = Proxy.new(env, self)
- </div><div class="line"> result = catch(:warden) do
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> result ||= {}
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-122">
- <div class="info">
- Extracted source (around line <strong>#34</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>32</span>
- <span>33</span>
- <span>34</span>
- <span>35</span>
- <span>36</span>
- <span>37</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> env['warden'] = Proxy.new(env, self)
- </div><div class="line active"> result = catch(:warden) do
- </div><div class="line"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-123">
- <div class="info">
- Extracted source (around line <strong>#34</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>32</span>
- <span>33</span>
- <span>34</span>
- <span>35</span>
- <span>36</span>
- <span>37</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> env['warden'] = Proxy.new(env, self)
- </div><div class="line active"> result = catch(:warden) do
- </div><div class="line"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-124">
- <div class="info">
- Extracted source (around line <strong>#39</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>37</span>
- <span>38</span>
- <span>39</span>
- <span>40</span>
- <span>41</span>
- <span>42</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> env[HTTP_ACCEPT] = entries.join(", ")
- </div><div class="line"> end
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-125">
- <div class="info">
- Extracted source (around line <strong>#17</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>15</span>
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> dup._call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def _call(env)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-126">
- <div class="info">
- Extracted source (around line <strong>#24</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>22</span>
- <span>23</span>
- <span>24</span>
- <span>25</span>
- <span>26</span>
- <span>27</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> status, headers, body = @app.call(env)
- </div><div class="line">
- </div><div class="line"> if etag_status?(status) && etag_body?(body) && !skip_caching?(headers)
- </div><div class="line"> original_body = body
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-127">
- <div class="info">
- Extracted source (around line <strong>#38</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>36</span>
- <span>37</span>
- <span>38</span>
- <span>39</span>
- <span>40</span>
- <span>41</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> [status, headers, body]
- </div><div class="line"> else
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-128">
- <div class="info">
- Extracted source (around line <strong>#13</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>11</span>
- <span>12</span>
- <span>13</span>
- <span>14</span>
- <span>15</span>
- <span>16</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> status, headers, body = @app.call(env)
- </div><div class="line">
- </div><div class="line"> if env[REQUEST_METHOD] == HEAD
- </div><div class="line"> [
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-129">
- <div class="info">
- Extracted source (around line <strong>#27</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>25</span>
- <span>26</span>
- <span>27</span>
- <span>28</span>
- <span>29</span>
- <span>30</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> end
- </div><div class="line">
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-130">
- <div class="info">
- Extracted source (around line <strong>#260</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>258</span>
- <span>259</span>
- <span>260</span>
- <span>261</span>
- <span>262</span>
- <span>263</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> ensure
- </div><div class="line"> session = Request::Session.find(env) || {}
- </div><div class="line"> flash_hash = env[KEY]
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-131">
- <div class="info">
- Extracted source (around line <strong>#225</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>223</span>
- <span>224</span>
- <span>225</span>
- <span>226</span>
- <span>227</span>
- <span>228</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def context(env, app=@app)
- </div><div class="line"> prepare_session(env)
- </div><div class="line active"> status, headers, body = app.call(env)
- </div><div class="line"> commit_session(env, status, headers, body)
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-132">
- <div class="info">
- Extracted source (around line <strong>#220</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>218</span>
- <span>219</span>
- <span>220</span>
- <span>221</span>
- <span>222</span>
- <span>223</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> context(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def context(env, app=@app)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-133">
- <div class="info">
- Extracted source (around line <strong>#560</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>558</span>
- <span>559</span>
- <span>560</span>
- <span>561</span>
- <span>562</span>
- <span>563</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> status, headers, body = @app.call(env)
- </div><div class="line">
- </div><div class="line"> if cookie_jar = env['action_dispatch.cookies']
- </div><div class="line"> unless cookie_jar.committed?
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-134">
- <div class="info">
- Extracted source (around line <strong>#36</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>34</span>
- <span>35</span>
- <span>36</span>
- <span>37</span>
- <span>38</span>
- <span>39</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> connection.enable_query_cache!
- </div><div class="line">
- </div><div class="line active"> response = @app.call(env)
- </div><div class="line"> response[2] = Rack::BodyProxy.new(response[2]) do
- </div><div class="line"> restore_query_cache_settings(connection_id, enabled)
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-135">
- <div class="info">
- Extracted source (around line <strong>#653</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>651</span>
- <span>652</span>
- <span>653</span>
- <span>654</span>
- <span>655</span>
- <span>656</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> testing = env['rack.test']
- </div><div class="line">
- </div><div class="line active"> response = @app.call(env)
- </div><div class="line"> response[2] = ::Rack::BodyProxy.new(response[2]) do
- </div><div class="line"> ActiveRecord::Base.clear_active_connections! unless testing
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-136">
- <div class="info">
- Extracted source (around line <strong>#377</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>375</span>
- <span>376</span>
- <span>377</span>
- <span>378</span>
- <span>379</span>
- <span>380</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> end
- </div><div class="line"> end
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-137">
- <div class="info">
- Extracted source (around line <strong>#29</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>27</span>
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> result = run_callbacks :call do
- </div><div class="line"> begin
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> rescue => error
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-138">
- <div class="info">
- Extracted source (around line <strong>#88</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>86</span>
- <span>87</span>
- <span>88</span>
- <span>89</span>
- <span>90</span>
- <span>91</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def __run_callbacks__(callbacks, &block)
- </div><div class="line"> if callbacks.empty?
- </div><div class="line active"> yield if block_given?
- </div><div class="line"> else
- </div><div class="line"> runner = callbacks.compile
- </div><div class="line"> e = Filters::Environment.new(self, false, nil, block)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-139">
- <div class="info">
- Extracted source (around line <strong>#778</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>776</span>
- <span>777</span>
- <span>778</span>
- <span>779</span>
- <span>780</span>
- <span>781</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> module_eval <<-RUBY, __FILE__, __LINE__ + 1
- </div><div class="line"> def _run_#{name}_callbacks(&block)
- </div><div class="line active"> __run_callbacks__(_#{name}_callbacks, &block)
- </div><div class="line"> end
- </div><div class="line"> RUBY
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-140">
- <div class="info">
- Extracted source (around line <strong>#81</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>79</span>
- <span>80</span>
- <span>81</span>
- <span>82</span>
- <span>83</span>
- <span>84</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> # end
- </div><div class="line"> def run_callbacks(kind, &block)
- </div><div class="line active"> send "_run_#{kind}_callbacks", &block
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-141">
- <div class="info">
- Extracted source (around line <strong>#27</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>25</span>
- <span>26</span>
- <span>27</span>
- <span>28</span>
- <span>29</span>
- <span>30</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> error = nil
- </div><div class="line active"> result = run_callbacks :call do
- </div><div class="line"> begin
- </div><div class="line"> @app.call(env)
- </div><div class="line"> rescue => error
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-142">
- <div class="info">
- Extracted source (around line <strong>#73</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>71</span>
- <span>72</span>
- <span>73</span>
- <span>74</span>
- <span>75</span>
- <span>76</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> prepare!
- </div><div class="line">
- </div><div class="line active"> response = @app.call(env)
- </div><div class="line"> response[2] = ::Rack::BodyProxy.new(response[2]) { cleanup! }
- </div><div class="line">
- </div><div class="line"> response
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-143">
- <div class="info">
- Extracted source (around line <strong>#78</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>76</span>
- <span>77</span>
- <span>78</span>
- <span>79</span>
- <span>80</span>
- <span>81</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> env["action_dispatch.remote_ip"] = GetIp.new(env, self)
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # The GetIp class exists as a way to defer processing of the request data
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-144">
- <div class="info">
- Extracted source (around line <strong>#17</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>15</span>
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> _, headers, body = response = @app.call(env)
- </div><div class="line">
- </div><div class="line"> if headers['X-Cascade'] == 'pass'
- </div><div class="line"> body.close if body.respond_to?(:close)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-145">
- <div class="info">
- Extracted source (around line <strong>#30</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- <span>32</span>
- <span>33</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> rescue Exception => exception
- </div><div class="line"> if env['action_dispatch.show_exceptions'] == false
- </div><div class="line"> raise exception
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-146">
- <div class="info">
- Extracted source (around line <strong>#38</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>36</span>
- <span>37</span>
- <span>38</span>
- <span>39</span>
- <span>40</span>
- <span>41</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> instrumenter.start 'request.action_dispatch', request: request
- </div><div class="line"> logger.info { started_request_message(request) }
- </div><div class="line active"> resp = @app.call(env)
- </div><div class="line"> resp[2] = ::Rack::BodyProxy.new(resp[2]) { finish(request) }
- </div><div class="line"> resp
- </div><div class="line"> rescue Exception
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-147">
- <div class="info">
- Extracted source (around line <strong>#20</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> if logger.respond_to?(:tagged)
- </div><div class="line active"> logger.tagged(compute_tags(request)) { call_app(request, env) }
- </div><div class="line"> else
- </div><div class="line"> call_app(request, env)
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-148">
- <div class="info">
- Extracted source (around line <strong>#68</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- <span>71</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def tagged(*tags)
- </div><div class="line active"> formatter.tagged(*tags) { yield self }
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def flush
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-149">
- <div class="info">
- Extracted source (around line <strong>#26</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>24</span>
- <span>25</span>
- <span>26</span>
- <span>27</span>
- <span>28</span>
- <span>29</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def tagged(*tags)
- </div><div class="line"> new_tags = push_tags(*tags)
- </div><div class="line active"> yield self
- </div><div class="line"> ensure
- </div><div class="line"> pop_tags(new_tags.size)
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-150">
- <div class="info">
- Extracted source (around line <strong>#68</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>66</span>
- <span>67</span>
- <span>68</span>
- <span>69</span>
- <span>70</span>
- <span>71</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def tagged(*tags)
- </div><div class="line active"> formatter.tagged(*tags) { yield self }
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def flush
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-151">
- <div class="info">
- Extracted source (around line <strong>#20</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> if logger.respond_to?(:tagged)
- </div><div class="line active"> logger.tagged(compute_tags(request)) { call_app(request, env) }
- </div><div class="line"> else
- </div><div class="line"> call_app(request, env)
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-152">
- <div class="info">
- Extracted source (around line <strong>#9</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>7</span>
- <span>8</span>
- <span>9</span>
- <span>10</span>
- <span>11</span>
- <span>12</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> RequestStore.begin!
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> ensure
- </div><div class="line"> RequestStore.end!
- </div><div class="line"> RequestStore.clear!
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-153">
- <div class="info">
- Extracted source (around line <strong>#21</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>19</span>
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- <span>24</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> env["action_dispatch.request_id"] = external_request_id(env) || internal_request_id
- </div><div class="line active"> @app.call(env).tap { |_status, headers, _body| headers["X-Request-Id"] = env["action_dispatch.request_id"] }
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> private
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-154">
- <div class="info">
- Extracted source (around line <strong>#22</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>20</span>
- <span>21</span>
- <span>22</span>
- <span>23</span>
- <span>24</span>
- <span>25</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> end
- </div><div class="line">
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> def method_override(env)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-155">
- <div class="info">
- Extracted source (around line <strong>#18</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- <span>21</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> start_time = clock_time
- </div><div class="line active"> status, headers, body = @app.call(env)
- </div><div class="line"> request_time = clock_time - start_time
- </div><div class="line">
- </div><div class="line"> if !headers.has_key?(@header_name)
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-156">
- <div class="info">
- Extracted source (around line <strong>#100</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>98</span>
- <span>99</span>
- <span>100</span>
- <span>101</span>
- <span>102</span>
- <span>103</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> # pass request through if service_timeout is false (i.e., don't time it out at all.)
- </div><div class="line active"> return @app.call(env) unless service_timeout
- </div><div class="line">
- </div><div class="line"> # compute actual timeout to be used for this request; if service_past_wait is true, this is just service_timeout. If false (the default), and wait time was determined, we'll use the shortest value between seconds_service_left and service_timeout. See comment above at service_past_wait for justification.
- </div><div class="line"> info.timeout = service_timeout # nice and simple, when service_past_wait is true, not so much otherwise:
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-157">
- <div class="info">
- Extracted source (around line <strong>#28</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>26</span>
- <span>27</span>
- <span>28</span>
- <span>29</span>
- <span>30</span>
- <span>31</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> LocalCacheRegistry.set_cache_for(local_cache_key, LocalStore.new)
- </div><div class="line active"> response = @app.call(env)
- </div><div class="line"> response[2] = ::Rack::BodyProxy.new(response[2]) do
- </div><div class="line"> LocalCacheRegistry.set_cache_for(local_cache_key, nil)
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-158">
- <div class="info">
- Extracted source (around line <strong>#17</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>15</span>
- <span>16</span>
- <span>17</span>
- <span>18</span>
- <span>19</span>
- <span>20</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> old, env[FLAG] = env[FLAG], false
- </div><div class="line"> @mutex.lock
- </div><div class="line active"> response = @app.call(env)
- </div><div class="line"> body = BodyProxy.new(response[2]) { @mutex.unlock }
- </div><div class="line"> response[2] = body
- </div><div class="line"> response
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-159">
- <div class="info">
- Extracted source (around line <strong>#116</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>114</span>
- <span>115</span>
- <span>116</span>
- <span>117</span>
- <span>118</span>
- <span>119</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> end
- </div><div class="line">
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-160">
- <div class="info">
- Extracted source (around line <strong>#113</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>111</span>
- <span>112</span>
- <span>113</span>
- <span>114</span>
- <span>115</span>
- <span>116</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> def call(env)
- </div><div class="line active"> status, headers, body = @app.call(env)
- </div><div class="line"> if body.respond_to?(:to_path)
- </div><div class="line"> case type = variation(env)
- </div><div class="line"> when 'X-Accel-Redirect'
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-161">
- <div class="info">
- Extracted source (around line <strong>#518</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>516</span>
- <span>517</span>
- <span>518</span>
- <span>519</span>
- <span>520</span>
- <span>521</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> env["ROUTES_#{routes.object_id}_SCRIPT_NAME"] = env['SCRIPT_NAME'].dup
- </div><div class="line"> end
- </div><div class="line active"> app.call(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Defines additional Rack env configuration that is added on each call.
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-162">
- <div class="info">
- Extracted source (around line <strong>#165</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>163</span>
- <span>164</span>
- <span>165</span>
- <span>166</span>
- <span>167</span>
- <span>168</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> env["ORIGINAL_FULLPATH"] = build_original_fullpath(env)
- </div><div class="line"> env["ORIGINAL_SCRIPT_NAME"] = env["SCRIPT_NAME"]
- </div><div class="line active"> super(env)
- </div><div class="line"> end
- </div><div class="line">
- </div><div class="line"> # Reload application routes regardless if they changed or not.
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-163">
- <div class="info">
- Extracted source (around line <strong>#224</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>222</span>
- <span>223</span>
- <span>224</span>
- <span>225</span>
- <span>226</span>
- <span>227</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> def call(env)
- </div><div class="line"> env[Const::PUMA_CONFIG] = @config
- </div><div class="line active"> @app.call(env)
- </div><div class="line"> end
- </div><div class="line"> end
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-164">
- <div class="info">
- Extracted source (around line <strong>#569</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>567</span>
- <span>568</span>
- <span>569</span>
- <span>570</span>
- <span>571</span>
- <span>572</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> begin
- </div><div class="line"> begin
- </div><div class="line active"> status, headers, res_body = @app.call(env)
- </div><div class="line">
- </div><div class="line"> return :async if req.hijacked
- </div><div class="line">
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-165">
- <div class="info">
- Extracted source (around line <strong>#406</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>404</span>
- <span>405</span>
- <span>406</span>
- <span>407</span>
- <span>408</span>
- <span>409</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> while true
- </div><div class="line active"> case handle_request(client, buffer)
- </div><div class="line"> when false
- </div><div class="line"> return
- </div><div class="line"> when :async
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-166">
- <div class="info">
- Extracted source (around line <strong>#271</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>269</span>
- <span>270</span>
- <span>271</span>
- <span>272</span>
- <span>273</span>
- <span>274</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line"> else
- </div><div class="line"> if process_now
- </div><div class="line active"> process_client client, buffer
- </div><div class="line"> else
- </div><div class="line"> client.set_timeout @first_data_timeout
- </div><div class="line"> @reactor.add client
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <div class="source hidden" id="frame-source-167">
- <div class="info">
- Extracted source (around line <strong>#114</strong>):
- </div>
- <div class="data">
- <table cellpadding="0" cellspacing="0" class="lines">
- <tr>
- <td>
- <pre class="line_numbers">
- <span>112</span>
- <span>113</span>
- <span>114</span>
- <span>115</span>
- <span>116</span>
- <span>117</span>
- </pre>
- </td>
- <td width="100%">
- <pre>
- <div class="line">
- </div><div class="line"> begin
- </div><div class="line active"> block.call(work, *extra)
- </div><div class="line"> rescue Exception
- </div><div class="line"> end
- </div><div class="line"> end
- </div>
- </pre>
- </td>
- </tr>
- </table>
- </div>
- </div>
- <p><code>Rails.root: /var/www/vhosts/homesway/releases/20160629111744</code></p>
- <div id="traces">
- <a href="#" onclick="hide('Framework-Trace');hide('Full-Trace');show('Application-Trace');; return false;">Application Trace</a> |
- <a href="#" onclick="hide('Application-Trace');hide('Full-Trace');show('Framework-Trace');; return false;">Framework Trace</a> |
- <a href="#" onclick="hide('Application-Trace');hide('Framework-Trace');show('Full-Trace');; return false;">Full Trace</a>
- <div id="Application-Trace" style="display: block;">
- <pre><code><a class="trace-frames" data-frame-id="0" href="#">app/mailers/feedback_mailer.rb:18:in `block in send_feedback'</a><br><a class="trace-frames" data-frame-id="1" href="#">app/mailers/feedback_mailer.rb:16:in `each'</a><br><a class="trace-frames" data-frame-id="2" href="#">app/mailers/feedback_mailer.rb:16:in `send_feedback'</a><br><a class="trace-frames" data-frame-id="3" href="#">app/mailers/feedback_mailer.rb:5:in `instant_report'</a><br><a class="trace-frames" data-frame-id="85" href="#">app/context/update_feedback.rb:45:in `notify_sellers'</a><br><a class="trace-frames" data-frame-id="86" href="#">app/context/update_feedback.rb:17:in `block in perform'</a><br><a class="trace-frames" data-frame-id="88" href="#">app/context/update_feedback.rb:11:in `perform'</a><br><a class="trace-frames" data-frame-id="89" href="#">app/controllers/api/v1/feedbacks_controller.rb:15:in `update'</a><br></code></pre>
- </div>
- <div id="Framework-Trace" style="display: none;">
- <pre><code><a class="trace-frames" data-frame-id="4" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:198:in `process_action'</a><br><a class="trace-frames" data-frame-id="5" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:20:in `block in process_action'</a><br><a class="trace-frames" data-frame-id="6" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:88:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="7" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'</a><br><a class="trace-frames" data-frame-id="8" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="9" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:19:in `process_action'</a><br><a class="trace-frames" data-frame-id="10" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:137:in `process'</a><br><a class="trace-frames" data-frame-id="11" href="#">actionview (4.2.5) lib/action_view/rendering.rb:30:in `process'</a><br><a class="trace-frames" data-frame-id="12" href="#">actionmailer (4.2.5) lib/action_mailer/base.rb:596:in `block in process'</a><br><a class="trace-frames" data-frame-id="13" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `block in instrument'</a><br><a class="trace-frames" data-frame-id="14" href="#">activesupport (4.2.5) lib/active_support/notifications/instrumenter.rb:20:in `instrument'</a><br><a class="trace-frames" data-frame-id="15" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `instrument'</a><br><a class="trace-frames" data-frame-id="16" href="#">actionmailer (4.2.5) lib/action_mailer/base.rb:593:in `process'</a><br><a class="trace-frames" data-frame-id="17" href="#">actionmailer (4.2.5) lib/action_mailer/base.rb:584:in `initialize'</a><br><a class="trace-frames" data-frame-id="18" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:25:in `new'</a><br><a class="trace-frames" data-frame-id="19" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:25:in `__getobj__'</a><br><a class="trace-frames" data-frame-id="20" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:34:in `message'</a><br><a class="trace-frames" data-frame-id="21" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:85:in `deliver_now'</a><br><a class="trace-frames" data-frame-id="22" href="#">actionmailer (4.2.5) lib/action_mailer/delivery_job.rb:10:in `perform'</a><br><a class="trace-frames" data-frame-id="23" href="#">activejob (4.2.5) lib/active_job/execution.rb:32:in `block in perform_now'</a><br><a class="trace-frames" data-frame-id="24" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:117:in `call'</a><br><a class="trace-frames" data-frame-id="25" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'</a><br><a class="trace-frames" data-frame-id="26" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="27" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:498:in `block (2 levels) in around'</a><br><a class="trace-frames" data-frame-id="28" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:343:in `block (2 levels) in simple'</a><br><a class="trace-frames" data-frame-id="29" href="#">i18n (0.7.0) lib/i18n.rb:257:in `with_locale'</a><br><a class="trace-frames" data-frame-id="30" href="#">activejob (4.2.5) lib/active_job/translation.rb:7:in `block (2 levels) in <module:Translation>'</a><br><a class="trace-frames" data-frame-id="31" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `instance_exec'</a><br><a class="trace-frames" data-frame-id="32" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `block in make_lambda'</a><br><a class="trace-frames" data-frame-id="33" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:342:in `block in simple'</a><br><a class="trace-frames" data-frame-id="34" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:497:in `block in around'</a><br><a class="trace-frames" data-frame-id="35" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="36" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:498:in `block (2 levels) in around'</a><br><a class="trace-frames" data-frame-id="37" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:343:in `block (2 levels) in simple'</a><br><a class="trace-frames" data-frame-id="38" href="#">activejob (4.2.5) lib/active_job/logging.rb:23:in `block (4 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="39" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `block in instrument'</a><br><a class="trace-frames" data-frame-id="40" href="#">activesupport (4.2.5) lib/active_support/notifications/instrumenter.rb:20:in `instrument'</a><br><a class="trace-frames" data-frame-id="41" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `instrument'</a><br><a class="trace-frames" data-frame-id="42" href="#">activejob (4.2.5) lib/active_job/logging.rb:22:in `block (3 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="43" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `block in tag_logger'</a><br><a class="trace-frames" data-frame-id="44" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `block in tagged'</a><br><a class="trace-frames" data-frame-id="45" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:26:in `tagged'</a><br><a class="trace-frames" data-frame-id="46" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `tagged'</a><br><a class="trace-frames" data-frame-id="47" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `tag_logger'</a><br><a class="trace-frames" data-frame-id="48" href="#">activejob (4.2.5) lib/active_job/logging.rb:19:in `block (2 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="49" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `instance_exec'</a><br><a class="trace-frames" data-frame-id="50" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `block in make_lambda'</a><br><a class="trace-frames" data-frame-id="51" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:342:in `block in simple'</a><br><a class="trace-frames" data-frame-id="52" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:497:in `block in around'</a><br><a class="trace-frames" data-frame-id="53" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="54" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:92:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="55" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_perform_callbacks'</a><br><a class="trace-frames" data-frame-id="56" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="57" href="#">activejob (4.2.5) lib/active_job/execution.rb:31:in `perform_now'</a><br><a class="trace-frames" data-frame-id="58" href="#">activejob (4.2.5) lib/active_job/execution.rb:21:in `execute'</a><br><a class="trace-frames" data-frame-id="59" href="#">activejob (4.2.5) lib/active_job/queue_adapters/inline_adapter.rb:14:in `enqueue'</a><br><a class="trace-frames" data-frame-id="60" href="#">activejob (4.2.5) lib/active_job/enqueuing.rb:71:in `block in enqueue'</a><br><a class="trace-frames" data-frame-id="61" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:117:in `call'</a><br><a class="trace-frames" data-frame-id="62" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'</a><br><a class="trace-frames" data-frame-id="63" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="64" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:498:in `block (2 levels) in around'</a><br><a class="trace-frames" data-frame-id="65" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:343:in `block (2 levels) in simple'</a><br><a class="trace-frames" data-frame-id="66" href="#">activejob (4.2.5) lib/active_job/logging.rb:14:in `block (3 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="67" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `block in tag_logger'</a><br><a class="trace-frames" data-frame-id="68" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `block in tagged'</a><br><a class="trace-frames" data-frame-id="69" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:26:in `tagged'</a><br><a class="trace-frames" data-frame-id="70" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `tagged'</a><br><a class="trace-frames" data-frame-id="71" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `tag_logger'</a><br><a class="trace-frames" data-frame-id="72" href="#">activejob (4.2.5) lib/active_job/logging.rb:13:in `block (2 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="73" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `instance_exec'</a><br><a class="trace-frames" data-frame-id="74" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `block in make_lambda'</a><br><a class="trace-frames" data-frame-id="75" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:342:in `block in simple'</a><br><a class="trace-frames" data-frame-id="76" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:497:in `block in around'</a><br><a class="trace-frames" data-frame-id="77" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="78" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:92:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="79" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_enqueue_callbacks'</a><br><a class="trace-frames" data-frame-id="80" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="81" href="#">activejob (4.2.5) lib/active_job/enqueuing.rb:67:in `enqueue'</a><br><a class="trace-frames" data-frame-id="82" href="#">activejob (4.2.5) lib/active_job/configured_job.rb:13:in `perform_later'</a><br><a class="trace-frames" data-frame-id="83" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:112:in `enqueue_delivery'</a><br><a class="trace-frames" data-frame-id="84" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:68:in `deliver_later'</a><br><a class="trace-frames" data-frame-id="87" href="#">/var/www/vhosts/homesway/shared/bundle/ruby/2.3.0/bundler/gems/dci-29015e0ee1b4/lib/dci/context.rb:12:in `in_context'</a><br><a class="trace-frames" data-frame-id="90" href="#">actionpack (4.2.5) lib/action_controller/metal/implicit_render.rb:4:in `send_action'</a><br><a class="trace-frames" data-frame-id="91" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:198:in `process_action'</a><br><a class="trace-frames" data-frame-id="92" href="#">actionpack (4.2.5) lib/action_controller/metal/rendering.rb:10:in `process_action'</a><br><a class="trace-frames" data-frame-id="93" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:20:in `block in process_action'</a><br><a class="trace-frames" data-frame-id="94" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:117:in `call'</a><br><a class="trace-frames" data-frame-id="95" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'</a><br><a class="trace-frames" data-frame-id="96" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="97" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:92:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="98" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'</a><br><a class="trace-frames" data-frame-id="99" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="100" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:19:in `process_action'</a><br><a class="trace-frames" data-frame-id="101" href="#">actionpack (4.2.5) lib/action_controller/metal/rescue.rb:29:in `process_action'</a><br><a class="trace-frames" data-frame-id="102" href="#">actionpack (4.2.5) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'</a><br><a class="trace-frames" data-frame-id="103" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `block in instrument'</a><br><a class="trace-frames" data-frame-id="104" href="#">activesupport (4.2.5) lib/active_support/notifications/instrumenter.rb:20:in `instrument'</a><br><a class="trace-frames" data-frame-id="105" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `instrument'</a><br><a class="trace-frames" data-frame-id="106" href="#">actionpack (4.2.5) lib/action_controller/metal/instrumentation.rb:30:in `process_action'</a><br><a class="trace-frames" data-frame-id="107" href="#">actionpack (4.2.5) lib/action_controller/metal/params_wrapper.rb:250:in `process_action'</a><br><a class="trace-frames" data-frame-id="108" href="#">activerecord (4.2.5) lib/active_record/railties/controller_runtime.rb:18:in `process_action'</a><br><a class="trace-frames" data-frame-id="109" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:137:in `process'</a><br><a class="trace-frames" data-frame-id="110" href="#">actionview (4.2.5) lib/action_view/rendering.rb:30:in `process'</a><br><a class="trace-frames" data-frame-id="111" href="#">actionpack (4.2.5) lib/action_controller/metal.rb:196:in `dispatch'</a><br><a class="trace-frames" data-frame-id="112" href="#">actionpack (4.2.5) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'</a><br><a class="trace-frames" data-frame-id="113" href="#">actionpack (4.2.5) lib/action_controller/metal.rb:237:in `block in action'</a><br><a class="trace-frames" data-frame-id="114" href="#">actionpack (4.2.5) lib/action_dispatch/routing/route_set.rb:76:in `dispatch'</a><br><a class="trace-frames" data-frame-id="115" href="#">actionpack (4.2.5) lib/action_dispatch/routing/route_set.rb:45:in `serve'</a><br><a class="trace-frames" data-frame-id="116" href="#">actionpack (4.2.5) lib/action_dispatch/routing/mapper.rb:49:in `serve'</a><br><a class="trace-frames" data-frame-id="117" href="#">actionpack (4.2.5) lib/action_dispatch/journey/router.rb:43:in `block in serve'</a><br><a class="trace-frames" data-frame-id="118" href="#">actionpack (4.2.5) lib/action_dispatch/journey/router.rb:30:in `each'</a><br><a class="trace-frames" data-frame-id="119" href="#">actionpack (4.2.5) lib/action_dispatch/journey/router.rb:30:in `serve'</a><br><a class="trace-frames" data-frame-id="120" href="#">actionpack (4.2.5) lib/action_dispatch/routing/route_set.rb:817:in `call'</a><br><a class="trace-frames" data-frame-id="121" href="#">warden (1.2.6) lib/warden/manager.rb:35:in `block in call'</a><br><a class="trace-frames" data-frame-id="122" href="#">warden (1.2.6) lib/warden/manager.rb:34:in `catch'</a><br><a class="trace-frames" data-frame-id="123" href="#">warden (1.2.6) lib/warden/manager.rb:34:in `call'</a><br><a class="trace-frames" data-frame-id="124" href="#">versionist (1.5.0) lib/versionist/middleware.rb:39:in `_call'</a><br><a class="trace-frames" data-frame-id="125" href="#">versionist (1.5.0) lib/versionist/middleware.rb:17:in `call'</a><br><a class="trace-frames" data-frame-id="126" href="#">rack (1.6.4) lib/rack/etag.rb:24:in `call'</a><br><a class="trace-frames" data-frame-id="127" href="#">rack (1.6.4) lib/rack/conditionalget.rb:38:in `call'</a><br><a class="trace-frames" data-frame-id="128" href="#">rack (1.6.4) lib/rack/head.rb:13:in `call'</a><br><a class="trace-frames" data-frame-id="129" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/params_parser.rb:27:in `call'</a><br><a class="trace-frames" data-frame-id="130" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/flash.rb:260:in `call'</a><br><a class="trace-frames" data-frame-id="131" href="#">rack (1.6.4) lib/rack/session/abstract/id.rb:225:in `context'</a><br><a class="trace-frames" data-frame-id="132" href="#">rack (1.6.4) lib/rack/session/abstract/id.rb:220:in `call'</a><br><a class="trace-frames" data-frame-id="133" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/cookies.rb:560:in `call'</a><br><a class="trace-frames" data-frame-id="134" href="#">activerecord (4.2.5) lib/active_record/query_cache.rb:36:in `call'</a><br><a class="trace-frames" data-frame-id="135" href="#">activerecord (4.2.5) lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call'</a><br><a class="trace-frames" data-frame-id="136" href="#">activerecord (4.2.5) lib/active_record/migration.rb:377:in `call'</a><br><a class="trace-frames" data-frame-id="137" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'</a><br><a class="trace-frames" data-frame-id="138" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:88:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="139" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_call_callbacks'</a><br><a class="trace-frames" data-frame-id="140" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="141" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/callbacks.rb:27:in `call'</a><br><a class="trace-frames" data-frame-id="142" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/reloader.rb:73:in `call'</a><br><a class="trace-frames" data-frame-id="143" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/remote_ip.rb:78:in `call'</a><br><a class="trace-frames" data-frame-id="144" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'</a><br><a class="trace-frames" data-frame-id="145" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'</a><br><a class="trace-frames" data-frame-id="146" href="#">railties (4.2.5) lib/rails/rack/logger.rb:38:in `call_app'</a><br><a class="trace-frames" data-frame-id="147" href="#">railties (4.2.5) lib/rails/rack/logger.rb:20:in `block in call'</a><br><a class="trace-frames" data-frame-id="148" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `block in tagged'</a><br><a class="trace-frames" data-frame-id="149" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:26:in `tagged'</a><br><a class="trace-frames" data-frame-id="150" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `tagged'</a><br><a class="trace-frames" data-frame-id="151" href="#">railties (4.2.5) lib/rails/rack/logger.rb:20:in `call'</a><br><a class="trace-frames" data-frame-id="152" href="#">request_store (1.3.1) lib/request_store/middleware.rb:9:in `call'</a><br><a class="trace-frames" data-frame-id="153" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/request_id.rb:21:in `call'</a><br><a class="trace-frames" data-frame-id="154" href="#">rack (1.6.4) lib/rack/methodoverride.rb:22:in `call'</a><br><a class="trace-frames" data-frame-id="155" href="#">rack (1.6.4) lib/rack/runtime.rb:18:in `call'</a><br><a class="trace-frames" data-frame-id="156" href="#">rack-timeout (0.4.2) lib/rack/timeout/core.rb:100:in `call'</a><br><a class="trace-frames" data-frame-id="157" href="#">activesupport (4.2.5) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'</a><br><a class="trace-frames" data-frame-id="158" href="#">rack (1.6.4) lib/rack/lock.rb:17:in `call'</a><br><a class="trace-frames" data-frame-id="159" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/static.rb:116:in `call'</a><br><a class="trace-frames" data-frame-id="160" href="#">rack (1.6.4) lib/rack/sendfile.rb:113:in `call'</a><br><a class="trace-frames" data-frame-id="161" href="#">railties (4.2.5) lib/rails/engine.rb:518:in `call'</a><br><a class="trace-frames" data-frame-id="162" href="#">railties (4.2.5) lib/rails/application.rb:165:in `call'</a><br><a class="trace-frames" data-frame-id="163" href="#">puma (3.4.0) lib/puma/configuration.rb:224:in `call'</a><br><a class="trace-frames" data-frame-id="164" href="#">puma (3.4.0) lib/puma/server.rb:569:in `handle_request'</a><br><a class="trace-frames" data-frame-id="165" href="#">puma (3.4.0) lib/puma/server.rb:406:in `process_client'</a><br><a class="trace-frames" data-frame-id="166" href="#">puma (3.4.0) lib/puma/server.rb:271:in `block in run'</a><br><a class="trace-frames" data-frame-id="167" href="#">puma (3.4.0) lib/puma/thread_pool.rb:114:in `block in spawn_thread'</a><br></code></pre>
- </div>
- <div id="Full-Trace" style="display: none;">
- <pre><code><a class="trace-frames" data-frame-id="0" href="#">app/mailers/feedback_mailer.rb:18:in `block in send_feedback'</a><br><a class="trace-frames" data-frame-id="1" href="#">app/mailers/feedback_mailer.rb:16:in `each'</a><br><a class="trace-frames" data-frame-id="2" href="#">app/mailers/feedback_mailer.rb:16:in `send_feedback'</a><br><a class="trace-frames" data-frame-id="3" href="#">app/mailers/feedback_mailer.rb:5:in `instant_report'</a><br><a class="trace-frames" data-frame-id="4" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:198:in `process_action'</a><br><a class="trace-frames" data-frame-id="5" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:20:in `block in process_action'</a><br><a class="trace-frames" data-frame-id="6" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:88:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="7" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'</a><br><a class="trace-frames" data-frame-id="8" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="9" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:19:in `process_action'</a><br><a class="trace-frames" data-frame-id="10" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:137:in `process'</a><br><a class="trace-frames" data-frame-id="11" href="#">actionview (4.2.5) lib/action_view/rendering.rb:30:in `process'</a><br><a class="trace-frames" data-frame-id="12" href="#">actionmailer (4.2.5) lib/action_mailer/base.rb:596:in `block in process'</a><br><a class="trace-frames" data-frame-id="13" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `block in instrument'</a><br><a class="trace-frames" data-frame-id="14" href="#">activesupport (4.2.5) lib/active_support/notifications/instrumenter.rb:20:in `instrument'</a><br><a class="trace-frames" data-frame-id="15" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `instrument'</a><br><a class="trace-frames" data-frame-id="16" href="#">actionmailer (4.2.5) lib/action_mailer/base.rb:593:in `process'</a><br><a class="trace-frames" data-frame-id="17" href="#">actionmailer (4.2.5) lib/action_mailer/base.rb:584:in `initialize'</a><br><a class="trace-frames" data-frame-id="18" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:25:in `new'</a><br><a class="trace-frames" data-frame-id="19" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:25:in `__getobj__'</a><br><a class="trace-frames" data-frame-id="20" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:34:in `message'</a><br><a class="trace-frames" data-frame-id="21" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:85:in `deliver_now'</a><br><a class="trace-frames" data-frame-id="22" href="#">actionmailer (4.2.5) lib/action_mailer/delivery_job.rb:10:in `perform'</a><br><a class="trace-frames" data-frame-id="23" href="#">activejob (4.2.5) lib/active_job/execution.rb:32:in `block in perform_now'</a><br><a class="trace-frames" data-frame-id="24" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:117:in `call'</a><br><a class="trace-frames" data-frame-id="25" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'</a><br><a class="trace-frames" data-frame-id="26" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="27" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:498:in `block (2 levels) in around'</a><br><a class="trace-frames" data-frame-id="28" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:343:in `block (2 levels) in simple'</a><br><a class="trace-frames" data-frame-id="29" href="#">i18n (0.7.0) lib/i18n.rb:257:in `with_locale'</a><br><a class="trace-frames" data-frame-id="30" href="#">activejob (4.2.5) lib/active_job/translation.rb:7:in `block (2 levels) in <module:Translation>'</a><br><a class="trace-frames" data-frame-id="31" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `instance_exec'</a><br><a class="trace-frames" data-frame-id="32" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `block in make_lambda'</a><br><a class="trace-frames" data-frame-id="33" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:342:in `block in simple'</a><br><a class="trace-frames" data-frame-id="34" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:497:in `block in around'</a><br><a class="trace-frames" data-frame-id="35" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="36" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:498:in `block (2 levels) in around'</a><br><a class="trace-frames" data-frame-id="37" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:343:in `block (2 levels) in simple'</a><br><a class="trace-frames" data-frame-id="38" href="#">activejob (4.2.5) lib/active_job/logging.rb:23:in `block (4 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="39" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `block in instrument'</a><br><a class="trace-frames" data-frame-id="40" href="#">activesupport (4.2.5) lib/active_support/notifications/instrumenter.rb:20:in `instrument'</a><br><a class="trace-frames" data-frame-id="41" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `instrument'</a><br><a class="trace-frames" data-frame-id="42" href="#">activejob (4.2.5) lib/active_job/logging.rb:22:in `block (3 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="43" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `block in tag_logger'</a><br><a class="trace-frames" data-frame-id="44" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `block in tagged'</a><br><a class="trace-frames" data-frame-id="45" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:26:in `tagged'</a><br><a class="trace-frames" data-frame-id="46" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `tagged'</a><br><a class="trace-frames" data-frame-id="47" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `tag_logger'</a><br><a class="trace-frames" data-frame-id="48" href="#">activejob (4.2.5) lib/active_job/logging.rb:19:in `block (2 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="49" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `instance_exec'</a><br><a class="trace-frames" data-frame-id="50" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `block in make_lambda'</a><br><a class="trace-frames" data-frame-id="51" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:342:in `block in simple'</a><br><a class="trace-frames" data-frame-id="52" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:497:in `block in around'</a><br><a class="trace-frames" data-frame-id="53" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="54" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:92:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="55" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_perform_callbacks'</a><br><a class="trace-frames" data-frame-id="56" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="57" href="#">activejob (4.2.5) lib/active_job/execution.rb:31:in `perform_now'</a><br><a class="trace-frames" data-frame-id="58" href="#">activejob (4.2.5) lib/active_job/execution.rb:21:in `execute'</a><br><a class="trace-frames" data-frame-id="59" href="#">activejob (4.2.5) lib/active_job/queue_adapters/inline_adapter.rb:14:in `enqueue'</a><br><a class="trace-frames" data-frame-id="60" href="#">activejob (4.2.5) lib/active_job/enqueuing.rb:71:in `block in enqueue'</a><br><a class="trace-frames" data-frame-id="61" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:117:in `call'</a><br><a class="trace-frames" data-frame-id="62" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'</a><br><a class="trace-frames" data-frame-id="63" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="64" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:498:in `block (2 levels) in around'</a><br><a class="trace-frames" data-frame-id="65" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:343:in `block (2 levels) in simple'</a><br><a class="trace-frames" data-frame-id="66" href="#">activejob (4.2.5) lib/active_job/logging.rb:14:in `block (3 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="67" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `block in tag_logger'</a><br><a class="trace-frames" data-frame-id="68" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `block in tagged'</a><br><a class="trace-frames" data-frame-id="69" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:26:in `tagged'</a><br><a class="trace-frames" data-frame-id="70" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `tagged'</a><br><a class="trace-frames" data-frame-id="71" href="#">activejob (4.2.5) lib/active_job/logging.rb:43:in `tag_logger'</a><br><a class="trace-frames" data-frame-id="72" href="#">activejob (4.2.5) lib/active_job/logging.rb:13:in `block (2 levels) in <module:Logging>'</a><br><a class="trace-frames" data-frame-id="73" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `instance_exec'</a><br><a class="trace-frames" data-frame-id="74" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:441:in `block in make_lambda'</a><br><a class="trace-frames" data-frame-id="75" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:342:in `block in simple'</a><br><a class="trace-frames" data-frame-id="76" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:497:in `block in around'</a><br><a class="trace-frames" data-frame-id="77" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="78" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:92:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="79" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_enqueue_callbacks'</a><br><a class="trace-frames" data-frame-id="80" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="81" href="#">activejob (4.2.5) lib/active_job/enqueuing.rb:67:in `enqueue'</a><br><a class="trace-frames" data-frame-id="82" href="#">activejob (4.2.5) lib/active_job/configured_job.rb:13:in `perform_later'</a><br><a class="trace-frames" data-frame-id="83" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:112:in `enqueue_delivery'</a><br><a class="trace-frames" data-frame-id="84" href="#">actionmailer (4.2.5) lib/action_mailer/message_delivery.rb:68:in `deliver_later'</a><br><a class="trace-frames" data-frame-id="85" href="#">app/context/update_feedback.rb:45:in `notify_sellers'</a><br><a class="trace-frames" data-frame-id="86" href="#">app/context/update_feedback.rb:17:in `block in perform'</a><br><a class="trace-frames" data-frame-id="87" href="#">/var/www/vhosts/homesway/shared/bundle/ruby/2.3.0/bundler/gems/dci-29015e0ee1b4/lib/dci/context.rb:12:in `in_context'</a><br><a class="trace-frames" data-frame-id="88" href="#">app/context/update_feedback.rb:11:in `perform'</a><br><a class="trace-frames" data-frame-id="89" href="#">app/controllers/api/v1/feedbacks_controller.rb:15:in `update'</a><br><a class="trace-frames" data-frame-id="90" href="#">actionpack (4.2.5) lib/action_controller/metal/implicit_render.rb:4:in `send_action'</a><br><a class="trace-frames" data-frame-id="91" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:198:in `process_action'</a><br><a class="trace-frames" data-frame-id="92" href="#">actionpack (4.2.5) lib/action_controller/metal/rendering.rb:10:in `process_action'</a><br><a class="trace-frames" data-frame-id="93" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:20:in `block in process_action'</a><br><a class="trace-frames" data-frame-id="94" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:117:in `call'</a><br><a class="trace-frames" data-frame-id="95" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'</a><br><a class="trace-frames" data-frame-id="96" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:505:in `call'</a><br><a class="trace-frames" data-frame-id="97" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:92:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="98" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'</a><br><a class="trace-frames" data-frame-id="99" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="100" href="#">actionpack (4.2.5) lib/abstract_controller/callbacks.rb:19:in `process_action'</a><br><a class="trace-frames" data-frame-id="101" href="#">actionpack (4.2.5) lib/action_controller/metal/rescue.rb:29:in `process_action'</a><br><a class="trace-frames" data-frame-id="102" href="#">actionpack (4.2.5) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'</a><br><a class="trace-frames" data-frame-id="103" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `block in instrument'</a><br><a class="trace-frames" data-frame-id="104" href="#">activesupport (4.2.5) lib/active_support/notifications/instrumenter.rb:20:in `instrument'</a><br><a class="trace-frames" data-frame-id="105" href="#">activesupport (4.2.5) lib/active_support/notifications.rb:164:in `instrument'</a><br><a class="trace-frames" data-frame-id="106" href="#">actionpack (4.2.5) lib/action_controller/metal/instrumentation.rb:30:in `process_action'</a><br><a class="trace-frames" data-frame-id="107" href="#">actionpack (4.2.5) lib/action_controller/metal/params_wrapper.rb:250:in `process_action'</a><br><a class="trace-frames" data-frame-id="108" href="#">activerecord (4.2.5) lib/active_record/railties/controller_runtime.rb:18:in `process_action'</a><br><a class="trace-frames" data-frame-id="109" href="#">actionpack (4.2.5) lib/abstract_controller/base.rb:137:in `process'</a><br><a class="trace-frames" data-frame-id="110" href="#">actionview (4.2.5) lib/action_view/rendering.rb:30:in `process'</a><br><a class="trace-frames" data-frame-id="111" href="#">actionpack (4.2.5) lib/action_controller/metal.rb:196:in `dispatch'</a><br><a class="trace-frames" data-frame-id="112" href="#">actionpack (4.2.5) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'</a><br><a class="trace-frames" data-frame-id="113" href="#">actionpack (4.2.5) lib/action_controller/metal.rb:237:in `block in action'</a><br><a class="trace-frames" data-frame-id="114" href="#">actionpack (4.2.5) lib/action_dispatch/routing/route_set.rb:76:in `dispatch'</a><br><a class="trace-frames" data-frame-id="115" href="#">actionpack (4.2.5) lib/action_dispatch/routing/route_set.rb:45:in `serve'</a><br><a class="trace-frames" data-frame-id="116" href="#">actionpack (4.2.5) lib/action_dispatch/routing/mapper.rb:49:in `serve'</a><br><a class="trace-frames" data-frame-id="117" href="#">actionpack (4.2.5) lib/action_dispatch/journey/router.rb:43:in `block in serve'</a><br><a class="trace-frames" data-frame-id="118" href="#">actionpack (4.2.5) lib/action_dispatch/journey/router.rb:30:in `each'</a><br><a class="trace-frames" data-frame-id="119" href="#">actionpack (4.2.5) lib/action_dispatch/journey/router.rb:30:in `serve'</a><br><a class="trace-frames" data-frame-id="120" href="#">actionpack (4.2.5) lib/action_dispatch/routing/route_set.rb:817:in `call'</a><br><a class="trace-frames" data-frame-id="121" href="#">warden (1.2.6) lib/warden/manager.rb:35:in `block in call'</a><br><a class="trace-frames" data-frame-id="122" href="#">warden (1.2.6) lib/warden/manager.rb:34:in `catch'</a><br><a class="trace-frames" data-frame-id="123" href="#">warden (1.2.6) lib/warden/manager.rb:34:in `call'</a><br><a class="trace-frames" data-frame-id="124" href="#">versionist (1.5.0) lib/versionist/middleware.rb:39:in `_call'</a><br><a class="trace-frames" data-frame-id="125" href="#">versionist (1.5.0) lib/versionist/middleware.rb:17:in `call'</a><br><a class="trace-frames" data-frame-id="126" href="#">rack (1.6.4) lib/rack/etag.rb:24:in `call'</a><br><a class="trace-frames" data-frame-id="127" href="#">rack (1.6.4) lib/rack/conditionalget.rb:38:in `call'</a><br><a class="trace-frames" data-frame-id="128" href="#">rack (1.6.4) lib/rack/head.rb:13:in `call'</a><br><a class="trace-frames" data-frame-id="129" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/params_parser.rb:27:in `call'</a><br><a class="trace-frames" data-frame-id="130" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/flash.rb:260:in `call'</a><br><a class="trace-frames" data-frame-id="131" href="#">rack (1.6.4) lib/rack/session/abstract/id.rb:225:in `context'</a><br><a class="trace-frames" data-frame-id="132" href="#">rack (1.6.4) lib/rack/session/abstract/id.rb:220:in `call'</a><br><a class="trace-frames" data-frame-id="133" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/cookies.rb:560:in `call'</a><br><a class="trace-frames" data-frame-id="134" href="#">activerecord (4.2.5) lib/active_record/query_cache.rb:36:in `call'</a><br><a class="trace-frames" data-frame-id="135" href="#">activerecord (4.2.5) lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call'</a><br><a class="trace-frames" data-frame-id="136" href="#">activerecord (4.2.5) lib/active_record/migration.rb:377:in `call'</a><br><a class="trace-frames" data-frame-id="137" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'</a><br><a class="trace-frames" data-frame-id="138" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:88:in `__run_callbacks__'</a><br><a class="trace-frames" data-frame-id="139" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:778:in `_run_call_callbacks'</a><br><a class="trace-frames" data-frame-id="140" href="#">activesupport (4.2.5) lib/active_support/callbacks.rb:81:in `run_callbacks'</a><br><a class="trace-frames" data-frame-id="141" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/callbacks.rb:27:in `call'</a><br><a class="trace-frames" data-frame-id="142" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/reloader.rb:73:in `call'</a><br><a class="trace-frames" data-frame-id="143" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/remote_ip.rb:78:in `call'</a><br><a class="trace-frames" data-frame-id="144" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'</a><br><a class="trace-frames" data-frame-id="145" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'</a><br><a class="trace-frames" data-frame-id="146" href="#">railties (4.2.5) lib/rails/rack/logger.rb:38:in `call_app'</a><br><a class="trace-frames" data-frame-id="147" href="#">railties (4.2.5) lib/rails/rack/logger.rb:20:in `block in call'</a><br><a class="trace-frames" data-frame-id="148" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `block in tagged'</a><br><a class="trace-frames" data-frame-id="149" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:26:in `tagged'</a><br><a class="trace-frames" data-frame-id="150" href="#">activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in `tagged'</a><br><a class="trace-frames" data-frame-id="151" href="#">railties (4.2.5) lib/rails/rack/logger.rb:20:in `call'</a><br><a class="trace-frames" data-frame-id="152" href="#">request_store (1.3.1) lib/request_store/middleware.rb:9:in `call'</a><br><a class="trace-frames" data-frame-id="153" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/request_id.rb:21:in `call'</a><br><a class="trace-frames" data-frame-id="154" href="#">rack (1.6.4) lib/rack/methodoverride.rb:22:in `call'</a><br><a class="trace-frames" data-frame-id="155" href="#">rack (1.6.4) lib/rack/runtime.rb:18:in `call'</a><br><a class="trace-frames" data-frame-id="156" href="#">rack-timeout (0.4.2) lib/rack/timeout/core.rb:100:in `call'</a><br><a class="trace-frames" data-frame-id="157" href="#">activesupport (4.2.5) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'</a><br><a class="trace-frames" data-frame-id="158" href="#">rack (1.6.4) lib/rack/lock.rb:17:in `call'</a><br><a class="trace-frames" data-frame-id="159" href="#">actionpack (4.2.5) lib/action_dispatch/middleware/static.rb:116:in `call'</a><br><a class="trace-frames" data-frame-id="160" href="#">rack (1.6.4) lib/rack/sendfile.rb:113:in `call'</a><br><a class="trace-frames" data-frame-id="161" href="#">railties (4.2.5) lib/rails/engine.rb:518:in `call'</a><br><a class="trace-frames" data-frame-id="162" href="#">railties (4.2.5) lib/rails/application.rb:165:in `call'</a><br><a class="trace-frames" data-frame-id="163" href="#">puma (3.4.0) lib/puma/configuration.rb:224:in `call'</a><br><a class="trace-frames" data-frame-id="164" href="#">puma (3.4.0) lib/puma/server.rb:569:in `handle_request'</a><br><a class="trace-frames" data-frame-id="165" href="#">puma (3.4.0) lib/puma/server.rb:406:in `process_client'</a><br><a class="trace-frames" data-frame-id="166" href="#">puma (3.4.0) lib/puma/server.rb:271:in `block in run'</a><br><a class="trace-frames" data-frame-id="167" href="#">puma (3.4.0) lib/puma/thread_pool.rb:114:in `block in spawn_thread'</a><br></code></pre>
- </div>
- <script type="text/javascript">
- var traceFrames = document.getElementsByClassName('trace-frames');
- var selectedFrame, currentSource = document.getElementById('frame-source-0');
- // Add click listeners for all stack frames
- for (var i = 0; i < traceFrames.length; i++) {
- traceFrames[i].addEventListener('click', function(e) {
- e.preventDefault();
- var target = e.target;
- var frame_id = target.dataset.frameId;
- if (selectedFrame) {
- selectedFrame.className = selectedFrame.className.replace("selected", "");
- }
- target.className += " selected";
- selectedFrame = target;
- // Change the extracted source code
- changeSourceExtract(frame_id);
- });
- function changeSourceExtract(frame_id) {
- var el = document.getElementById('frame-source-' + frame_id);
- if (currentSource && el) {
- currentSource.className += " hidden";
- el.className = el.className.replace(" hidden", "");
- currentSource = el;
- }
- }
- }
- </script>
- </div>
- <h2 style="margin-top: 30px">Request</h2>
- <p><b>Parameters</b>:</p> <pre>{"rooms_feedback"=>[{"id"=>"9",
- "disliked_features"=>["13"],
- "liked_features"=>["12"]}],
- "status"=>"like",
- "id"=>"68",
- "feedback"=>{}}</pre>
- <div class="details">
- <div class="summary"><a href="#" onclick="return toggleSessionDump()">Toggle session dump</a></div>
- <div id="session_dump" style="display:none"><pre></pre></div>
- </div>
- <div class="details">
- <div class="summary"><a href="#" onclick="return toggleEnvDump()">Toggle env dump</a></div>
- <div id="env_dump" style="display:none"><pre>GATEWAY_INTERFACE: "CGI/1.2"
- HTTP_ACCEPT: "*/*"
- HTTP_ACCEPT_ENCODING: "gzip;q=1.0, compress;q=0.5"
- HTTP_ACCEPT_LANGUAGE: "en-US;q=1.0, ru-US;q=0.9, ar-US;q=0.8, ru-RU;q=0.7"
- REMOTE_ADDR: "127.0.0.1"
- SERVER_NAME: "homesway-stage.yalantis.com"
- SERVER_PROTOCOL: "HTTP/1.1"</pre></div>
- </div>
- <h2 style="margin-top: 30px">Response</h2>
- <p><b>Headers</b>:</p> <pre>None</pre>
- </div>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement