docs/LoggableActivity/Payload.html in loggable_activity-0.1.56 vs docs/LoggableActivity/Payload.html in loggable_activity-0.1.58

- old
+ new

@@ -75,13 +75,15 @@ <li ><a href="#method-i-attrs">#attrs</a> <li ><a href="#method-i-decrypt_attr">#decrypt_attr</a> <li ><a href="#method-i-decrypted_attrs">#decrypted_attrs</a> <li ><a href="#method-i-decrypted_from_to_attr">#decrypted_from_to_attr</a> <li ><a href="#method-i-decrypted_update_attrs">#decrypted_update_attrs</a> + <li ><a href="#method-i-deleted-3F">#deleted?</a> <li ><a href="#method-i-deleted_attrs">#deleted_attrs</a> - <li ><a href="#method-i-payload_encryption_key">#payload_encryption_key</a> <li ><a href="#method-i-payload_route">#payload_route</a> + <li ><a href="#method-i-record_display_name">#record_display_name</a> + <li ><a href="#method-i-secret_key">#secret_key</a> </ul> </div> </div> </nav> @@ -98,10 +100,21 @@ </section> <section id="5Buntitled-5D" class="documentation-section"> + <section class="constants-list"> + <header> + <h3>Constants</h3> + </header> + <dl> + <dt id="DECRYPT_ATTRS_TYPES">DECRYPT_ATTRS_TYPES + <dd><p>Enumeration for different payload types</p> + <dt id="DECRYPT_UPDATE_ATTRS_TYPES">DECRYPT_UPDATE_ATTRS_TYPES + <dd><p>Enumeration for different updatepayload types</p> + </dl> + </section> <section id="public-instance-5Buntitled-5D-method-details" class="method-section"> <header> @@ -116,69 +129,130 @@ <span class="method-click-advice">click to toggle source</span> </div> </div> <div class="method-description"> - <p>Returns the decrypted attributes of the payload based on its type.</p> + <p>Returns the decrypted attrs.</p> <p>@return [Hash] The decrypted attributes.</p> <p>Example:</p> <pre>payload.attrs Returns: -{ - &quot;street&quot; =&gt; &quot;Machu Picchu&quot;, - &quot;city&quot; =&gt; &quot;Aguas Calientes&quot;, - &quot;country&quot; =&gt; &quot;Peru&quot;, - &quot;postal_code&quot; =&gt; &quot;08680&quot; -}</pre> +{ &quot;street&quot; =&gt; &quot;Machu Picchu&quot;, &quot;city&quot; =&gt; &quot;Cusco&quot; }</pre> <div class="method-source-code" id="attrs-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 42</span> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 64</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">attrs</span> <span class="ruby-keyword">return</span> <span class="ruby-identifier">deleted_attrs</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">nil?</span> - <span class="ruby-keyword">case</span> <span class="ruby-identifier">payload_type</span> - <span class="ruby-keyword">when</span> <span class="ruby-string">&#39;current_association&#39;</span>, <span class="ruby-string">&#39;primary_payload&#39;</span>, <span class="ruby-string">&#39;previous_association&#39;</span> + <span class="ruby-keyword">case</span> <span class="ruby-identifier">related_to_activity_as</span> + <span class="ruby-keyword">when</span> <span class="ruby-operator">*</span><span class="ruby-constant">DECRYPT_ATTRS_TYPES</span> <span class="ruby-identifier">decrypted_attrs</span> - <span class="ruby-keyword">when</span> <span class="ruby-string">&#39;update_payload&#39;</span> + <span class="ruby-keyword">when</span> <span class="ruby-operator">*</span><span class="ruby-constant">DECRYPT_UPDATE_ATTRS_TYPES</span> <span class="ruby-identifier">decrypted_update_attrs</span> + <span class="ruby-keyword">else</span> + {} <span class="ruby-keyword">end</span> <span class="ruby-keyword">end</span></pre> </div> </div> </div> + <div id="method-i-deleted-3F" class="method-detail "> + <div class="method-header"> + <div class="method-heading"> + <span class="method-name">deleted?</span><span + class="method-args">()</span> + <span class="method-click-advice">click to toggle source</span> + </div> + </div> + + <div class="method-description"> + <p>Check if the record has been deleted.</p> + +<p>@return [Boolean] True if the record has been deleted.</p> + + <div class="method-source-code" id="deleted-3F-source"> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 104</span> +<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">deleted?</span> + <span class="ruby-identifier">encryption_key</span>.<span class="ruby-identifier">deleted?</span> +<span class="ruby-keyword">end</span></pre> + </div> + </div> + + + </div> + <div id="method-i-payload_route" class="method-detail "> <div class="method-header"> <div class="method-heading"> <span class="method-name">payload_route</span><span class="method-args">()</span> <span class="method-click-advice">click to toggle source</span> </div> </div> <div class="method-description"> - <p>Returns the route for the payload.</p> + <p>Returns the route for the payload unless the encryption_key is deleted.</p> +<p>Example:</p> + +<pre class="ruby"><span class="ruby-identifier">payload</span>.<span class="ruby-identifier">payload_route</span> +</pre> + +<p>@return [String] The route for the payload.</p> + <div class="method-source-code" id="payload_route-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 54</span> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 83</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">payload_route</span> - <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">payload_encryption_key</span>.<span class="ruby-identifier">nil?</span> + <span class="ruby-keyword">return</span> <span class="ruby-string">&#39;&#39;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">deleted?</span> <span class="ruby-identifier">route</span> <span class="ruby-keyword">end</span></pre> </div> </div> </div> + <div id="method-i-record_display_name" class="method-detail "> + <div class="method-header"> + <div class="method-heading"> + <span class="method-name">record_display_name</span><span + class="method-args">()</span> + <span class="method-click-advice">click to toggle source</span> + </div> + </div> + + <div class="method-description"> + <p>Returns the display name for the record.</p> + +<p>Example:</p> + +<pre class="ruby"><span class="ruby-identifier">payload</span>.<span class="ruby-identifier">record_display_name</span> +</pre> + +<p>@return [String] The display name for the record.</p> + + <div class="method-source-code" id="record_display_name-source"> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 95</span> +<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">record_display_name</span> + <span class="ruby-keyword">return</span> <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">t</span>(<span class="ruby-string">&#39;loggable.activity.deleted&#39;</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">deleted?</span> + + <span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">decrypt</span>(<span class="ruby-identifier">encrypted_record_name</span>, <span class="ruby-identifier">secret_key</span>) +<span class="ruby-keyword">end</span></pre> + </div> + </div> + + + </div> + </section> <section id="private-instance-5Buntitled-5D-method-details" class="method-section"> <header> <h3>Private Instance Methods</h3> @@ -197,13 +271,14 @@ <p>Decrypts a single attribute.</p> <p>@param value [String] The encrypted value to decrypt. @return [String] The decrypted value.</p> <div class="method-source-code" id="decrypt_attr-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 110</span> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 159</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypt_attr</span>(<span class="ruby-identifier">value</span>) - <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">decrypt</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">payload_encryption_key</span>) + <span class="ruby-comment"># return &#39;loggable_activity.attr.deleted&#39; if secret_key.nil?</span> + <span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">decrypt</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">secret_key</span>) <span class="ruby-keyword">end</span></pre> </div> </div> @@ -222,11 +297,11 @@ <p>Decrypts all attributes.</p> <p>@return [Hash] The decrypted attributes.</p> <div class="method-source-code" id="decrypted_attrs-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 100</span> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 149</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_attrs</span> <span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span> <span class="ruby-identifier">encrypted_attrs</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">decrypt_attr</span>(<span class="ruby-identifier">value</span>) <span class="ruby-keyword">end</span> <span class="ruby-keyword">end</span></pre> @@ -249,11 +324,11 @@ <p>Decrypts ‘from’ and ‘to’ attributes.</p> <p>@param change [Hash] The change hash containing ‘from’ and ‘to’ values. @return [Hash] The decrypted ‘from’ and ‘to’ values.</p> <div class="method-source-code" id="decrypted_from_to_attr-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 89</span> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 138</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_from_to_attr</span>(<span class="ruby-identifier">change</span>) <span class="ruby-identifier">change</span>.<span class="ruby-identifier">to_h</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span> <span class="ruby-identifier">from</span> = <span class="ruby-identifier">decrypt_attr</span>(<span class="ruby-identifier">value</span>[<span class="ruby-string">&#39;from&#39;</span>]) <span class="ruby-identifier">to</span> = <span class="ruby-identifier">decrypt_attr</span>(<span class="ruby-identifier">value</span>[<span class="ruby-string">&#39;to&#39;</span>]) [<span class="ruby-identifier">key</span>, { <span class="ruby-value">from:</span>, <span class="ruby-value">to:</span> }] @@ -278,12 +353,13 @@ <p>Decrypts the ‘from’ and ‘to’ attributes in the update payload.</p> <p>@return [Array&lt;Hash&gt;] The array of decrypted changes.</p> <div class="method-source-code" id="decrypted_update_attrs-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 79</span> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 127</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_update_attrs</span> + <span class="ruby-comment"># return encrypted_attrs</span> <span class="ruby-identifier">encrypted_attrs</span>[<span class="ruby-string">&#39;changes&#39;</span>].<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span> <span class="ruby-identifier">decrypted_from_to_attr</span>(<span class="ruby-identifier">change</span>) <span class="ruby-keyword">end</span> <span class="ruby-keyword">end</span></pre> </div> @@ -305,37 +381,37 @@ <p>Helper method to handle deleted attributes.</p> <p>@return [Hash] The hash with deleted attributes.</p> <div class="method-source-code" id="deleted_attrs-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 72</span> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 120</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">deleted_attrs</span> <span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">transform_values!</span> { <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">t</span>(<span class="ruby-string">&#39;loggable.activity.deleted&#39;</span>) } <span class="ruby-keyword">end</span></pre> </div> </div> </div> - <div id="method-i-payload_encryption_key" class="method-detail "> + <div id="method-i-secret_key" class="method-detail "> <div class="method-header"> <div class="method-heading"> - <span class="method-name">payload_encryption_key</span><span + <span class="method-name">secret_key</span><span class="method-args">()</span> <span class="method-click-advice">click to toggle source</span> </div> </div> <div class="method-description"> <p>Retrieves the encryption key for the payload.</p> <p>@return [String, nil] The encryption key.</p> - <div class="method-source-code" id="payload_encryption_key-source"> - <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 65</span> -<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">payload_encryption_key</span> - <span class="ruby-ivar">@payload_encryption_key</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-identifier">record</span>)&amp;.<span class="ruby-identifier">key</span> + <div class="method-source-code" id="secret_key-source"> + <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 113</span> +<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">secret_key</span> + <span class="ruby-identifier">encryption_key</span>.<span class="ruby-identifier">secret_key</span> <span class="ruby-keyword">end</span></pre> </div> </div>