ae_easy-login 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2489 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: AeEasy::Login::Flow
8
+
9
+ &mdash; Documentation by YARD 0.9.20
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "AeEasy::Login::Flow";
19
+ relpath = '../../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../../_index.html">Index (F)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../../AeEasy.html" title="AeEasy (module)">AeEasy</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Login.html" title="AeEasy::Login (module)">Login</a></span></span>
41
+ &raquo;
42
+ <span class="title">Flow</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: AeEasy::Login::Flow
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">AeEasy::Login::Flow</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+ <dl>
91
+ <dt>Includes:</dt>
92
+ <dd>Core::Plugin::Executor</dd>
93
+ </dl>
94
+
95
+
96
+
97
+
98
+
99
+
100
+ <dl>
101
+ <dt>Defined in:</dt>
102
+ <dd>lib/ae_easy/login/flow.rb</dd>
103
+ </dl>
104
+
105
+ </div>
106
+
107
+ <h2>Overview</h2><div class="docstring">
108
+ <div class="discussion">
109
+
110
+ <p>Login flow executor designed to recover from an expired or invalid</p>
111
+
112
+ <pre class="code ruby"><code class="ruby">session.
113
+ </code></pre>
114
+
115
+
116
+ </div>
117
+ </div>
118
+ <div class="tags">
119
+
120
+
121
+ </div>
122
+
123
+
124
+
125
+ <h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
126
+ <ul class="summary">
127
+
128
+ <li class="public ">
129
+ <span class="summary_signature">
130
+
131
+ <a href="#app_config-instance_method" title="#app_config (instance method)">#<strong>app_config</strong> &#x21d2; AeEasy::Core::Config </a>
132
+
133
+
134
+
135
+ </span>
136
+
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+
148
+ <span class="summary_desc"><div class='inline'>
149
+ <p>App configuration to store login flow configuration.</p>
150
+ </div></span>
151
+
152
+ </li>
153
+
154
+
155
+ <li class="public ">
156
+ <span class="summary_signature">
157
+
158
+ <a href="#collection-instance_method" title="#collection (instance method)">#<strong>collection</strong> &#x21d2; String </a>
159
+
160
+
161
+
162
+ </span>
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
174
+
175
+ <span class="summary_desc"><div class='inline'>
176
+ <p>Output collection used to store held pages to be fixed and fetched.</p>
177
+ </div></span>
178
+
179
+ </li>
180
+
181
+
182
+ <li class="public ">
183
+ <span class="summary_signature">
184
+
185
+ <a href="#config_key-instance_method" title="#config_key (instance method)">#<strong>config_key</strong> &#x21d2; String </a>
186
+
187
+
188
+
189
+ </span>
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+ <span class="summary_desc"><div class='inline'>
203
+ <p>Key to be used to store login flow configuration data at #app_config.</p>
204
+ </div></span>
205
+
206
+ </li>
207
+
208
+
209
+ <li class="public ">
210
+ <span class="summary_signature">
211
+
212
+ <a href="#custom_fix-instance_method" title="#custom_fix (instance method)">#<strong>custom_fix</strong> &#x21d2; Proc, ... </a>
213
+
214
+
215
+
216
+ </span>
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+ <span class="summary_desc"><div class='inline'>
230
+ <p>Block with custom user defined fixing logic to be executed on help page
231
+ fix.</p>
232
+ </div></span>
233
+
234
+ </li>
235
+
236
+
237
+ <li class="public ">
238
+ <span class="summary_signature">
239
+
240
+ <a href="#per_page-instance_method" title="#per_page (instance method)">#<strong>per_page</strong> &#x21d2; Integer </a>
241
+
242
+
243
+
244
+ </span>
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+ <span class="summary_desc"><div class='inline'>
258
+ <p>Batch size used on query outputs.</p>
259
+ </div></span>
260
+
261
+ </li>
262
+
263
+
264
+ <li class="public ">
265
+ <span class="summary_signature">
266
+
267
+ <a href="#vars_key-instance_method" title="#vars_key (instance method)">#<strong>vars_key</strong> &#x21d2; String </a>
268
+
269
+
270
+
271
+ </span>
272
+
273
+
274
+
275
+
276
+
277
+
278
+
279
+
280
+
281
+
282
+
283
+
284
+ <span class="summary_desc"><div class='inline'>
285
+ <p>Page&#39;s “vars” key to store the login cookie used to fetch.</p>
286
+ </div></span>
287
+
288
+ </li>
289
+
290
+
291
+ </ul>
292
+
293
+
294
+
295
+
296
+
297
+ <h2>
298
+ Instance Method Summary
299
+ <small><a href="#" class="summary_toggle">collapse</a></small>
300
+ </h2>
301
+
302
+ <ul class="summary">
303
+
304
+ <li class="public ">
305
+ <span class="summary_signature">
306
+
307
+ <a href="#add_vars!-instance_method" title="#add_vars! (instance method)">#<strong>add_vars!</strong>(new_page) &#x21d2; Object </a>
308
+
309
+
310
+
311
+ </span>
312
+
313
+
314
+
315
+
316
+
317
+
318
+
319
+
320
+
321
+ <span class="summary_desc"><div class='inline'>
322
+ <p>Add login flow reserved vars into a page.</p>
323
+ </div></span>
324
+
325
+ </li>
326
+
327
+
328
+ <li class="public ">
329
+ <span class="summary_signature">
330
+
331
+ <a href="#clean_page_response!-instance_method" title="#clean_page_response! (instance method)">#<strong>clean_page_response!</strong>(held_page) &#x21d2; Object </a>
332
+
333
+
334
+
335
+ </span>
336
+
337
+
338
+
339
+
340
+
341
+
342
+
343
+
344
+
345
+ <span class="summary_desc"><div class='inline'>
346
+ <p>Remove all response keys from a held page hash.</p>
347
+ </div></span>
348
+
349
+ </li>
350
+
351
+
352
+ <li class="public ">
353
+ <span class="summary_signature">
354
+
355
+ <a href="#config-instance_method" title="#config (instance method)">#<strong>config</strong> &#x21d2; Hash </a>
356
+
357
+
358
+
359
+ </span>
360
+
361
+
362
+
363
+
364
+
365
+
366
+
367
+
368
+
369
+ <span class="summary_desc"><div class='inline'>
370
+ <p>Gets the existing login flow config or load it from app config when
371
+ invalid.</p>
372
+ </div></span>
373
+
374
+ </li>
375
+
376
+
377
+ <li class="public ">
378
+ <span class="summary_signature">
379
+
380
+ <a href="#custom_fix!-instance_method" title="#custom_fix! (instance method)">#<strong>custom_fix!</strong>(held_page) &#x21d2; Object </a>
381
+
382
+
383
+
384
+ </span>
385
+
386
+
387
+
388
+
389
+
390
+
391
+
392
+
393
+
394
+ <span class="summary_desc"><div class='inline'>
395
+ <p>Execute #custom_fix block into a held page.</p>
396
+ </div></span>
397
+
398
+ </li>
399
+
400
+
401
+ <li class="public ">
402
+ <span class="summary_signature">
403
+
404
+ <a href="#expire!-instance_method" title="#expire! (instance method)">#<strong>expire!</strong> &#x21d2; Object </a>
405
+
406
+
407
+
408
+ </span>
409
+
410
+
411
+
412
+
413
+
414
+
415
+
416
+
417
+
418
+ <span class="summary_desc"><div class='inline'>
419
+ <p>Set expire flag as `true`.</p>
420
+ </div></span>
421
+
422
+ </li>
423
+
424
+
425
+ <li class="public ">
426
+ <span class="summary_signature">
427
+
428
+ <a href="#expired%3F-instance_method" title="#expired? (instance method)">#<strong>expired?</strong> &#x21d2; Boolean </a>
429
+
430
+
431
+
432
+ </span>
433
+
434
+
435
+
436
+
437
+
438
+
439
+
440
+
441
+
442
+ <span class="summary_desc"><div class='inline'>
443
+ <p>Indicates whenever latest session has been set as expired.</p>
444
+ </div></span>
445
+
446
+ </li>
447
+
448
+
449
+ <li class="public ">
450
+ <span class="summary_signature">
451
+
452
+ <a href="#fix_page!-instance_method" title="#fix_page! (instance method)">#<strong>fix_page!</strong>(held_page) &#x21d2; Object </a>
453
+
454
+
455
+
456
+ </span>
457
+
458
+
459
+
460
+
461
+
462
+
463
+
464
+
465
+
466
+ <span class="summary_desc"><div class='inline'>
467
+ <p>Fixes a held page session.</p>
468
+ </div></span>
469
+
470
+ </li>
471
+
472
+
473
+ <li class="public ">
474
+ <span class="summary_signature">
475
+
476
+ <a href="#fix_session-instance_method" title="#fix_session (instance method)">#<strong>fix_session</strong>(&amp;enqueue_login) &#x21d2; Object </a>
477
+
478
+
479
+
480
+ </span>
481
+
482
+
483
+
484
+
485
+
486
+
487
+
488
+
489
+
490
+ <span class="summary_desc"><div class='inline'>
491
+ <p>Fixes current page session by enqueue it using latest working session or
492
+ held it for fix and enqueue login page by executing block.</p>
493
+ </div></span>
494
+
495
+ </li>
496
+
497
+
498
+ <li class="public ">
499
+ <span class="summary_signature">
500
+
501
+ <a href="#initialize_hook_login_flow-instance_method" title="#initialize_hook_login_flow (instance method)">#<strong>initialize_hook_login_flow</strong>(opts = {}) &#x21d2; Object </a>
502
+
503
+
504
+
505
+ </span>
506
+
507
+
508
+
509
+
510
+
511
+
512
+
513
+
514
+
515
+ <span class="summary_desc"><div class='inline'>
516
+ <p>Hook to initialize login flow configuration.</p>
517
+ </div></span>
518
+
519
+ </li>
520
+
521
+
522
+ <li class="public ">
523
+ <span class="summary_signature">
524
+
525
+ <a href="#merge_cookie-instance_method" title="#merge_cookie (instance method)">#<strong>merge_cookie</strong>(old_cookie) &#x21d2; Object </a>
526
+
527
+
528
+
529
+ </span>
530
+
531
+
532
+
533
+
534
+
535
+
536
+
537
+
538
+
539
+ <span class="summary_desc"><div class='inline'>
540
+ <p>Updates an old cookie with current cookie saved on app configuration.</p>
541
+ </div></span>
542
+
543
+ </li>
544
+
545
+
546
+ <li class="public ">
547
+ <span class="summary_signature">
548
+
549
+ <a href="#reload_config-instance_method" title="#reload_config (instance method)">#<strong>reload_config</strong> &#x21d2; Object </a>
550
+
551
+
552
+
553
+ </span>
554
+
555
+
556
+
557
+
558
+
559
+
560
+
561
+
562
+
563
+ <span class="summary_desc"><div class='inline'>
564
+ <p>Invalidates login flow config, so it is reloaded on next config usage.</p>
565
+ </div></span>
566
+
567
+ </li>
568
+
569
+
570
+ <li class="public ">
571
+ <span class="summary_signature">
572
+
573
+ <a href="#response_key%3F-instance_method" title="#response_key? (instance method)">#<strong>response_key?</strong>(key) &#x21d2; Boolean </a>
574
+
575
+
576
+
577
+ </span>
578
+
579
+
580
+
581
+
582
+
583
+
584
+
585
+
586
+
587
+ <span class="summary_desc"><div class='inline'>
588
+ <p>Check whenever a key name is categorized as a response key.</p>
589
+ </div></span>
590
+
591
+ </li>
592
+
593
+
594
+ <li class="public ">
595
+ <span class="summary_signature">
596
+
597
+ <a href="#response_keys-instance_method" title="#response_keys (instance method)">#<strong>response_keys</strong> &#x21d2; Array&lt;String&gt; </a>
598
+
599
+
600
+
601
+ </span>
602
+
603
+
604
+
605
+
606
+
607
+
608
+
609
+
610
+
611
+ <span class="summary_desc"><div class='inline'>
612
+ <p>Response keys to remove from a held page before enqueue it again.</p>
613
+ </div></span>
614
+
615
+ </li>
616
+
617
+
618
+ <li class="public ">
619
+ <span class="summary_signature">
620
+
621
+ <a href="#response_keys=-instance_method" title="#response_keys= (instance method)">#<strong>response_keys=</strong>(value) &#x21d2; Object </a>
622
+
623
+
624
+
625
+ </span>
626
+
627
+
628
+
629
+
630
+
631
+
632
+
633
+
634
+
635
+ <span class="summary_desc"><div class='inline'>
636
+ <p>Set response key list to remove from a page before enqueue it again.</p>
637
+ </div></span>
638
+
639
+ </li>
640
+
641
+
642
+ <li class="public ">
643
+ <span class="summary_signature">
644
+
645
+ <a href="#restore_held_pages-instance_method" title="#restore_held_pages (instance method)">#<strong>restore_held_pages</strong> &#x21d2; Object </a>
646
+
647
+
648
+
649
+ </span>
650
+
651
+
652
+
653
+
654
+
655
+
656
+
657
+
658
+
659
+ <span class="summary_desc"><div class='inline'>
660
+ <p>Restore all held pages stored as outputs.</p>
661
+ </div></span>
662
+
663
+ </li>
664
+
665
+
666
+ <li class="public ">
667
+ <span class="summary_signature">
668
+
669
+ <a href="#seeded!-instance_method" title="#seeded! (instance method)">#<strong>seeded!</strong> &#x21d2; Object </a>
670
+
671
+
672
+
673
+ </span>
674
+
675
+
676
+
677
+
678
+
679
+
680
+
681
+
682
+
683
+ <span class="summary_desc"><div class='inline'>
684
+ <p>Set seeded flag as `true`.</p>
685
+ </div></span>
686
+
687
+ </li>
688
+
689
+
690
+ <li class="public ">
691
+ <span class="summary_signature">
692
+
693
+ <a href="#seeded%3F-instance_method" title="#seeded? (instance method)">#<strong>seeded?</strong> &#x21d2; Boolean </a>
694
+
695
+
696
+
697
+ </span>
698
+
699
+
700
+
701
+
702
+
703
+
704
+
705
+
706
+
707
+ <span class="summary_desc"><div class='inline'>
708
+ <p>Indicates whenever login flow has been seeded.</p>
709
+ </div></span>
710
+
711
+ </li>
712
+
713
+
714
+ <li class="public ">
715
+ <span class="summary_signature">
716
+
717
+ <a href="#update_config-instance_method" title="#update_config (instance method)">#<strong>update_config</strong>(data = {}) &#x21d2; Object </a>
718
+
719
+
720
+
721
+ </span>
722
+
723
+
724
+
725
+
726
+
727
+
728
+
729
+
730
+
731
+ <span class="summary_desc"><div class='inline'>
732
+ <p>Updates app configuration.</p>
733
+ </div></span>
734
+
735
+ </li>
736
+
737
+
738
+ </ul>
739
+
740
+
741
+
742
+
743
+ <div id="instance_attr_details" class="attr_details">
744
+ <h2>Instance Attribute Details</h2>
745
+
746
+
747
+ <span id="app_config=-instance_method"></span>
748
+ <div class="method_details first">
749
+ <h3 class="signature first" id="app_config-instance_method">
750
+
751
+ #<strong>app_config</strong> &#x21d2; <tt>AeEasy::Core::Config</tt>
752
+
753
+
754
+
755
+
756
+
757
+ </h3><div class="docstring">
758
+ <div class="discussion">
759
+
760
+ <p>App configuration to store login flow configuration.</p>
761
+
762
+
763
+ </div>
764
+ </div>
765
+ <div class="tags">
766
+
767
+ <p class="tag_title">Returns:</p>
768
+ <ul class="return">
769
+
770
+ <li>
771
+
772
+
773
+ <span class='type'>(<tt>AeEasy::Core::Config</tt>)</span>
774
+
775
+
776
+
777
+ </li>
778
+
779
+ </ul>
780
+
781
+ </div><table class="source_code">
782
+ <tr>
783
+ <td>
784
+ <pre class="lines">
785
+
786
+
787
+ 10
788
+ 11
789
+ 12</pre>
790
+ </td>
791
+ <td>
792
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 10</span>
793
+
794
+ <span class='kw'>def</span> <span class='id identifier rubyid_app_config'>app_config</span>
795
+ <span class='ivar'>@app_config</span>
796
+ <span class='kw'>end</span></pre>
797
+ </td>
798
+ </tr>
799
+ </table>
800
+ </div>
801
+
802
+
803
+ <span id="collection=-instance_method"></span>
804
+ <div class="method_details ">
805
+ <h3 class="signature " id="collection-instance_method">
806
+
807
+ #<strong>collection</strong> &#x21d2; <tt>String</tt>
808
+
809
+
810
+
811
+
812
+
813
+ </h3><div class="docstring">
814
+ <div class="discussion">
815
+
816
+ <p>Output collection used to store held pages to be fixed and fetched.</p>
817
+
818
+
819
+ </div>
820
+ </div>
821
+ <div class="tags">
822
+
823
+ <p class="tag_title">Returns:</p>
824
+ <ul class="return">
825
+
826
+ <li>
827
+
828
+
829
+ <span class='type'>(<tt>String</tt>)</span>
830
+
831
+
832
+
833
+ </li>
834
+
835
+ </ul>
836
+
837
+ </div><table class="source_code">
838
+ <tr>
839
+ <td>
840
+ <pre class="lines">
841
+
842
+
843
+ 14
844
+ 15
845
+ 16</pre>
846
+ </td>
847
+ <td>
848
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 14</span>
849
+
850
+ <span class='kw'>def</span> <span class='id identifier rubyid_collection'>collection</span>
851
+ <span class='ivar'>@collection</span>
852
+ <span class='kw'>end</span></pre>
853
+ </td>
854
+ </tr>
855
+ </table>
856
+ </div>
857
+
858
+
859
+ <span id="config_key=-instance_method"></span>
860
+ <div class="method_details ">
861
+ <h3 class="signature " id="config_key-instance_method">
862
+
863
+ #<strong>config_key</strong> &#x21d2; <tt>String</tt>
864
+
865
+
866
+
867
+
868
+
869
+ </h3><div class="docstring">
870
+ <div class="discussion">
871
+
872
+ <p>Key to be used to store login flow configuration data at #app_config.</p>
873
+
874
+
875
+ </div>
876
+ </div>
877
+ <div class="tags">
878
+
879
+ <p class="tag_title">Returns:</p>
880
+ <ul class="return">
881
+
882
+ <li>
883
+
884
+
885
+ <span class='type'>(<tt>String</tt>)</span>
886
+
887
+
888
+
889
+ </li>
890
+
891
+ </ul>
892
+
893
+ </div><table class="source_code">
894
+ <tr>
895
+ <td>
896
+ <pre class="lines">
897
+
898
+
899
+ 22
900
+ 23
901
+ 24</pre>
902
+ </td>
903
+ <td>
904
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 22</span>
905
+
906
+ <span class='kw'>def</span> <span class='id identifier rubyid_config_key'>config_key</span>
907
+ <span class='ivar'>@config_key</span>
908
+ <span class='kw'>end</span></pre>
909
+ </td>
910
+ </tr>
911
+ </table>
912
+ </div>
913
+
914
+
915
+ <span id="custom_fix=-instance_method"></span>
916
+ <div class="method_details ">
917
+ <h3 class="signature " id="custom_fix-instance_method">
918
+
919
+ #<strong>custom_fix</strong> &#x21d2; <tt>Proc</tt>, ...
920
+
921
+
922
+
923
+
924
+
925
+ </h3><div class="docstring">
926
+ <div class="discussion">
927
+
928
+ <p>Block with custom user defined fixing logic to be executed on help page</p>
929
+
930
+ <pre class="code ruby"><code class="ruby">fix.
931
+ </code></pre>
932
+
933
+
934
+ </div>
935
+ </div>
936
+ <div class="tags">
937
+
938
+ <p class="tag_title">Returns:</p>
939
+ <ul class="return">
940
+
941
+ <li>
942
+
943
+
944
+ <span class='type'>(<tt>Proc</tt>, <tt>Lambda</tt>, <tt>nil</tt>)</span>
945
+
946
+
947
+
948
+ </li>
949
+
950
+ </ul>
951
+
952
+ </div><table class="source_code">
953
+ <tr>
954
+ <td>
955
+ <pre class="lines">
956
+
957
+
958
+ 31
959
+ 32
960
+ 33</pre>
961
+ </td>
962
+ <td>
963
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 31</span>
964
+
965
+ <span class='kw'>def</span> <span class='id identifier rubyid_custom_fix'>custom_fix</span>
966
+ <span class='ivar'>@custom_fix</span>
967
+ <span class='kw'>end</span></pre>
968
+ </td>
969
+ </tr>
970
+ </table>
971
+ </div>
972
+
973
+
974
+ <span id="per_page=-instance_method"></span>
975
+ <div class="method_details ">
976
+ <h3 class="signature " id="per_page-instance_method">
977
+
978
+ #<strong>per_page</strong> &#x21d2; <tt>Integer</tt>
979
+
980
+
981
+
982
+
983
+
984
+ </h3><div class="docstring">
985
+ <div class="discussion">
986
+
987
+ <p>Batch size used on query outputs.</p>
988
+
989
+
990
+ </div>
991
+ </div>
992
+ <div class="tags">
993
+
994
+ <p class="tag_title">Returns:</p>
995
+ <ul class="return">
996
+
997
+ <li>
998
+
999
+
1000
+ <span class='type'>(<tt>Integer</tt>)</span>
1001
+
1002
+
1003
+
1004
+ </li>
1005
+
1006
+ </ul>
1007
+
1008
+ </div><table class="source_code">
1009
+ <tr>
1010
+ <td>
1011
+ <pre class="lines">
1012
+
1013
+
1014
+ 18
1015
+ 19
1016
+ 20</pre>
1017
+ </td>
1018
+ <td>
1019
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 18</span>
1020
+
1021
+ <span class='kw'>def</span> <span class='id identifier rubyid_per_page'>per_page</span>
1022
+ <span class='ivar'>@per_page</span>
1023
+ <span class='kw'>end</span></pre>
1024
+ </td>
1025
+ </tr>
1026
+ </table>
1027
+ </div>
1028
+
1029
+
1030
+ <span id="vars_key=-instance_method"></span>
1031
+ <div class="method_details ">
1032
+ <h3 class="signature " id="vars_key-instance_method">
1033
+
1034
+ #<strong>vars_key</strong> &#x21d2; <tt>String</tt>
1035
+
1036
+
1037
+
1038
+
1039
+
1040
+ </h3><div class="docstring">
1041
+ <div class="discussion">
1042
+
1043
+ <p>Page&#39;s “vars” key to store the login cookie used to fetch.</p>
1044
+
1045
+
1046
+ </div>
1047
+ </div>
1048
+ <div class="tags">
1049
+
1050
+ <p class="tag_title">Returns:</p>
1051
+ <ul class="return">
1052
+
1053
+ <li>
1054
+
1055
+
1056
+ <span class='type'>(<tt>String</tt>)</span>
1057
+
1058
+
1059
+
1060
+ </li>
1061
+
1062
+ </ul>
1063
+
1064
+ </div><table class="source_code">
1065
+ <tr>
1066
+ <td>
1067
+ <pre class="lines">
1068
+
1069
+
1070
+ 26
1071
+ 27
1072
+ 28</pre>
1073
+ </td>
1074
+ <td>
1075
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 26</span>
1076
+
1077
+ <span class='kw'>def</span> <span class='id identifier rubyid_vars_key'>vars_key</span>
1078
+ <span class='ivar'>@vars_key</span>
1079
+ <span class='kw'>end</span></pre>
1080
+ </td>
1081
+ </tr>
1082
+ </table>
1083
+ </div>
1084
+
1085
+ </div>
1086
+
1087
+
1088
+ <div id="instance_method_details" class="method_details_list">
1089
+ <h2>Instance Method Details</h2>
1090
+
1091
+
1092
+ <div class="method_details first">
1093
+ <h3 class="signature first" id="add_vars!-instance_method">
1094
+
1095
+ #<strong>add_vars!</strong>(new_page) &#x21d2; <tt>Object</tt>
1096
+
1097
+
1098
+
1099
+
1100
+
1101
+ </h3><div class="docstring">
1102
+ <div class="discussion">
1103
+
1104
+ <p>Add login flow reserved vars into a page.</p>
1105
+
1106
+
1107
+ </div>
1108
+ </div>
1109
+ <div class="tags">
1110
+ <p class="tag_title">Parameters:</p>
1111
+ <ul class="param">
1112
+
1113
+ <li>
1114
+
1115
+ <span class='name'>new_page</span>
1116
+
1117
+
1118
+ <span class='type'>(<tt>Hash</tt>)</span>
1119
+
1120
+
1121
+
1122
+ &mdash;
1123
+ <div class='inline'>
1124
+ <p>Page to add login flow reserved vars.</p>
1125
+ </div>
1126
+
1127
+ </li>
1128
+
1129
+ </ul>
1130
+
1131
+
1132
+ </div><table class="source_code">
1133
+ <tr>
1134
+ <td>
1135
+ <pre class="lines">
1136
+
1137
+
1138
+ 209
1139
+ 210
1140
+ 211
1141
+ 212
1142
+ 213</pre>
1143
+ </td>
1144
+ <td>
1145
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 209</span>
1146
+
1147
+ <span class='kw'>def</span> <span class='id identifier rubyid_add_vars!'>add_vars!</span> <span class='id identifier rubyid_new_page'>new_page</span>
1148
+ <span class='id identifier rubyid_key'>key</span> <span class='op'>=</span> <span class='id identifier rubyid_new_page'>new_page</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span><span class='lparen'>(</span><span class='symbol'>:vars</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='symbol'>:vars</span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>vars</span><span class='tstring_end'>&#39;</span></span>
1149
+ <span class='id identifier rubyid_new_page'>new_page</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span> <span class='kw'>if</span> <span class='id identifier rubyid_new_page'>new_page</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1150
+ <span class='id identifier rubyid_new_page'>new_page</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_vars_key'>vars_key</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cookie</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
1151
+ <span class='kw'>end</span></pre>
1152
+ </td>
1153
+ </tr>
1154
+ </table>
1155
+ </div>
1156
+
1157
+ <div class="method_details ">
1158
+ <h3 class="signature " id="clean_page_response!-instance_method">
1159
+
1160
+ #<strong>clean_page_response!</strong>(held_page) &#x21d2; <tt>Object</tt>
1161
+
1162
+
1163
+
1164
+
1165
+
1166
+ </h3><div class="docstring">
1167
+ <div class="discussion">
1168
+
1169
+ <p>Remove all response keys from a held page hash.</p>
1170
+
1171
+
1172
+ </div>
1173
+ </div>
1174
+ <div class="tags">
1175
+ <p class="tag_title">Parameters:</p>
1176
+ <ul class="param">
1177
+
1178
+ <li>
1179
+
1180
+ <span class='name'>held_page</span>
1181
+
1182
+
1183
+ <span class='type'>(<tt>Hash</tt>)</span>
1184
+
1185
+
1186
+
1187
+ &mdash;
1188
+ <div class='inline'>
1189
+ <p>Held page to clean.</p>
1190
+ </div>
1191
+
1192
+ </li>
1193
+
1194
+ </ul>
1195
+
1196
+
1197
+ </div><table class="source_code">
1198
+ <tr>
1199
+ <td>
1200
+ <pre class="lines">
1201
+
1202
+
1203
+ 191
1204
+ 192
1205
+ 193
1206
+ 194
1207
+ 195
1208
+ 196</pre>
1209
+ </td>
1210
+ <td>
1211
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 191</span>
1212
+
1213
+ <span class='kw'>def</span> <span class='id identifier rubyid_clean_page_response!'>clean_page_response!</span> <span class='id identifier rubyid_held_page'>held_page</span>
1214
+ <span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='id identifier rubyid_held_page'>held_page</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span> <span class='op'>+</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
1215
+ <span class='id identifier rubyid_keys'>keys</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='op'>|</span>
1216
+ <span class='id identifier rubyid_held_page'>held_page</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span> <span class='id identifier rubyid_key'>key</span> <span class='kw'>if</span> <span class='id identifier rubyid_response_key?'>response_key?</span> <span class='id identifier rubyid_key'>key</span>
1217
+ <span class='kw'>end</span>
1218
+ <span class='kw'>end</span></pre>
1219
+ </td>
1220
+ </tr>
1221
+ </table>
1222
+ </div>
1223
+
1224
+ <div class="method_details ">
1225
+ <h3 class="signature " id="config-instance_method">
1226
+
1227
+ #<strong>config</strong> &#x21d2; <tt>Hash</tt>
1228
+
1229
+
1230
+
1231
+
1232
+
1233
+ </h3><div class="docstring">
1234
+ <div class="discussion">
1235
+
1236
+ <p>Gets the existing login flow config or load it from app config when</p>
1237
+
1238
+ <pre class="code ruby"><code class="ruby">invalid.
1239
+ </code></pre>
1240
+
1241
+
1242
+ </div>
1243
+ </div>
1244
+ <div class="tags">
1245
+
1246
+ <p class="tag_title">Returns:</p>
1247
+ <ul class="return">
1248
+
1249
+ <li>
1250
+
1251
+
1252
+ <span class='type'>(<tt>Hash</tt>)</span>
1253
+
1254
+
1255
+
1256
+ </li>
1257
+
1258
+ </ul>
1259
+
1260
+ </div><table class="source_code">
1261
+ <tr>
1262
+ <td>
1263
+ <pre class="lines">
1264
+
1265
+
1266
+ 135
1267
+ 136
1268
+ 137
1269
+ 138
1270
+ 139
1271
+ 140
1272
+ 141</pre>
1273
+ </td>
1274
+ <td>
1275
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 135</span>
1276
+
1277
+ <span class='kw'>def</span> <span class='id identifier rubyid_config'>config</span>
1278
+ <span class='ivar'>@config</span> <span class='op'>||=</span> <span class='kw'>nil</span>
1279
+ <span class='kw'>return</span> <span class='ivar'>@config</span> <span class='kw'>unless</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1280
+ <span class='ivar'>@config</span> <span class='op'>=</span> <span class='id identifier rubyid_app_config'>app_config</span><span class='period'>.</span><span class='id identifier rubyid_find_config'>find_config</span> <span class='id identifier rubyid_config_key'>config_key</span>
1281
+ <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1282
+ <span class='ivar'>@config</span>
1283
+ <span class='kw'>end</span></pre>
1284
+ </td>
1285
+ </tr>
1286
+ </table>
1287
+ </div>
1288
+
1289
+ <div class="method_details ">
1290
+ <h3 class="signature " id="custom_fix!-instance_method">
1291
+
1292
+ #<strong>custom_fix!</strong>(held_page) &#x21d2; <tt>Object</tt>
1293
+
1294
+
1295
+
1296
+
1297
+
1298
+ </h3><div class="docstring">
1299
+ <div class="discussion">
1300
+
1301
+ <p>Execute #custom_fix block into a held page.</p>
1302
+
1303
+
1304
+ </div>
1305
+ </div>
1306
+ <div class="tags">
1307
+ <p class="tag_title">Parameters:</p>
1308
+ <ul class="param">
1309
+
1310
+ <li>
1311
+
1312
+ <span class='name'>held_page</span>
1313
+
1314
+
1315
+ <span class='type'>(<tt>Hash</tt>)</span>
1316
+
1317
+
1318
+
1319
+ &mdash;
1320
+ <div class='inline'>
1321
+ <p>Held page to fix.</p>
1322
+ </div>
1323
+
1324
+ </li>
1325
+
1326
+ </ul>
1327
+
1328
+
1329
+ </div><table class="source_code">
1330
+ <tr>
1331
+ <td>
1332
+ <pre class="lines">
1333
+
1334
+
1335
+ 218
1336
+ 219
1337
+ 220</pre>
1338
+ </td>
1339
+ <td>
1340
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 218</span>
1341
+
1342
+ <span class='kw'>def</span> <span class='id identifier rubyid_custom_fix!'>custom_fix!</span> <span class='id identifier rubyid_held_page'>held_page</span>
1343
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_custom_fix'>custom_fix</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span> <span class='id identifier rubyid_held_page'>held_page</span> <span class='kw'>unless</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_custom_fix'>custom_fix</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1344
+ <span class='kw'>end</span></pre>
1345
+ </td>
1346
+ </tr>
1347
+ </table>
1348
+ </div>
1349
+
1350
+ <div class="method_details ">
1351
+ <h3 class="signature " id="expire!-instance_method">
1352
+
1353
+ #<strong>expire!</strong> &#x21d2; <tt>Object</tt>
1354
+
1355
+
1356
+
1357
+
1358
+
1359
+ </h3><div class="docstring">
1360
+ <div class="discussion">
1361
+
1362
+ <p>Set expire flag as `true`.</p>
1363
+
1364
+
1365
+ </div>
1366
+ </div>
1367
+ <div class="tags">
1368
+
1369
+
1370
+ </div><table class="source_code">
1371
+ <tr>
1372
+ <td>
1373
+ <pre class="lines">
1374
+
1375
+
1376
+ 175
1377
+ 176
1378
+ 177</pre>
1379
+ </td>
1380
+ <td>
1381
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 175</span>
1382
+
1383
+ <span class='kw'>def</span> <span class='id identifier rubyid_expire!'>expire!</span>
1384
+ <span class='id identifier rubyid_update_config'>update_config</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>expired</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='kw'>true</span>
1385
+ <span class='kw'>end</span></pre>
1386
+ </td>
1387
+ </tr>
1388
+ </table>
1389
+ </div>
1390
+
1391
+ <div class="method_details ">
1392
+ <h3 class="signature " id="expired?-instance_method">
1393
+
1394
+ #<strong>expired?</strong> &#x21d2; <tt>Boolean</tt>
1395
+
1396
+
1397
+
1398
+
1399
+
1400
+ </h3><div class="docstring">
1401
+ <div class="discussion">
1402
+
1403
+ <p>Indicates whenever latest session has been set as expired.</p>
1404
+
1405
+
1406
+ </div>
1407
+ </div>
1408
+ <div class="tags">
1409
+
1410
+ <p class="tag_title">Returns:</p>
1411
+ <ul class="return">
1412
+
1413
+ <li>
1414
+
1415
+
1416
+ <span class='type'>(<tt>Boolean</tt>)</span>
1417
+
1418
+
1419
+
1420
+ &mdash;
1421
+ <div class='inline'>
1422
+ <p>`true` when expired, else `false`.</p>
1423
+ </div>
1424
+
1425
+ </li>
1426
+
1427
+ </ul>
1428
+
1429
+ </div><table class="source_code">
1430
+ <tr>
1431
+ <td>
1432
+ <pre class="lines">
1433
+
1434
+
1435
+ 170
1436
+ 171
1437
+ 172</pre>
1438
+ </td>
1439
+ <td>
1440
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 170</span>
1441
+
1442
+ <span class='kw'>def</span> <span class='id identifier rubyid_expired?'>expired?</span>
1443
+ <span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>expired</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='kw'>false</span>
1444
+ <span class='kw'>end</span></pre>
1445
+ </td>
1446
+ </tr>
1447
+ </table>
1448
+ </div>
1449
+
1450
+ <div class="method_details ">
1451
+ <h3 class="signature " id="fix_page!-instance_method">
1452
+
1453
+ #<strong>fix_page!</strong>(held_page) &#x21d2; <tt>Object</tt>
1454
+
1455
+
1456
+
1457
+
1458
+
1459
+ </h3><div class="docstring">
1460
+ <div class="discussion">
1461
+
1462
+ <p>Fixes a held page session.</p>
1463
+
1464
+
1465
+ </div>
1466
+ </div>
1467
+ <div class="tags">
1468
+ <p class="tag_title">Parameters:</p>
1469
+ <ul class="param">
1470
+
1471
+ <li>
1472
+
1473
+ <span class='name'>held_page</span>
1474
+
1475
+
1476
+ <span class='type'>(<tt>Hash</tt>)</span>
1477
+
1478
+
1479
+
1480
+ &mdash;
1481
+ <div class='inline'>
1482
+ <p>Held page to fix.</p>
1483
+ </div>
1484
+
1485
+ </li>
1486
+
1487
+ </ul>
1488
+
1489
+
1490
+ </div><table class="source_code">
1491
+ <tr>
1492
+ <td>
1493
+ <pre class="lines">
1494
+
1495
+
1496
+ 225
1497
+ 226
1498
+ 227
1499
+ 228
1500
+ 229
1501
+ 230
1502
+ 231
1503
+ 232
1504
+ 233
1505
+ 234</pre>
1506
+ </td>
1507
+ <td>
1508
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 225</span>
1509
+
1510
+ <span class='kw'>def</span> <span class='id identifier rubyid_fix_page!'>fix_page!</span> <span class='id identifier rubyid_held_page'>held_page</span>
1511
+ <span class='id identifier rubyid_clean_page_response!'>clean_page_response!</span> <span class='id identifier rubyid_held_page'>held_page</span>
1512
+ <span class='id identifier rubyid_held_page'>held_page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cookie</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_merge_cookie'>merge_cookie</span> <span class='id identifier rubyid_held_page'>held_page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cookie</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
1513
+ <span class='id identifier rubyid_held_page'>held_page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>headers</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span> <span class='kw'>unless</span> <span class='id identifier rubyid_held_page'>held_page</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>headers</span><span class='tstring_end'>&#39;</span></span>
1514
+ <span class='kw'>if</span> <span class='id identifier rubyid_held_page'>held_page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>headers</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_has_key?'>has_key?</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Cookie</span><span class='tstring_end'>&#39;</span></span>
1515
+ <span class='id identifier rubyid_held_page'>held_page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>headers</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Cookie</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_merge_cookie'>merge_cookie</span> <span class='id identifier rubyid_held_page'>held_page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>headers</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Cookie</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
1516
+ <span class='kw'>end</span>
1517
+ <span class='id identifier rubyid_add_vars!'>add_vars!</span> <span class='id identifier rubyid_held_page'>held_page</span>
1518
+ <span class='id identifier rubyid_custom_fix!'>custom_fix!</span> <span class='id identifier rubyid_held_page'>held_page</span>
1519
+ <span class='kw'>end</span></pre>
1520
+ </td>
1521
+ </tr>
1522
+ </table>
1523
+ </div>
1524
+
1525
+ <div class="method_details ">
1526
+ <h3 class="signature " id="fix_session-instance_method">
1527
+
1528
+ #<strong>fix_session</strong>(&amp;enqueue_login) &#x21d2; <tt>Object</tt>
1529
+
1530
+
1531
+
1532
+
1533
+
1534
+ </h3><div class="docstring">
1535
+ <div class="discussion">
1536
+
1537
+ <p>Fixes current page session by enqueue it using latest working session or</p>
1538
+
1539
+ <pre class="code ruby"><code class="ruby">held it for fix and enqueue login page by executing block.
1540
+ </code></pre>
1541
+
1542
+
1543
+ </div>
1544
+ </div>
1545
+ <div class="tags">
1546
+
1547
+
1548
+ </div><table class="source_code">
1549
+ <tr>
1550
+ <td>
1551
+ <pre class="lines">
1552
+
1553
+
1554
+ 238
1555
+ 239
1556
+ 240
1557
+ 241
1558
+ 242
1559
+ 243
1560
+ 244
1561
+ 245
1562
+ 246
1563
+ 247
1564
+ 248
1565
+ 249
1566
+ 250
1567
+ 251
1568
+ 252
1569
+ 253
1570
+ 254
1571
+ 255
1572
+ 256
1573
+ 257
1574
+ 258
1575
+ 259
1576
+ 260
1577
+ 261</pre>
1578
+ </td>
1579
+ <td>
1580
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 238</span>
1581
+
1582
+ <span class='kw'>def</span> <span class='id identifier rubyid_fix_session'>fix_session</span> <span class='op'>&amp;</span><span class='id identifier rubyid_enqueue_login'>enqueue_login</span>
1583
+ <span class='comment'># Expire cookie when same as current page
1584
+ </span> <span class='id identifier rubyid_old_cookie_hash'>old_cookie_hash</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../AeEasy.html" title="AeEasy (module)">AeEasy</a></span></span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Helper</span><span class='op'>::</span><span class='const'>Cookie</span><span class='period'>.</span><span class='id identifier rubyid_parse_from_request'>parse_from_request</span> <span class='id identifier rubyid_page'>page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>vars</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_vars_key'>vars_key</span><span class='rbracket'>]</span>
1585
+ <span class='id identifier rubyid_newest_cookie_hash'>newest_cookie_hash</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../AeEasy.html" title="AeEasy (module)">AeEasy</a></span></span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Helper</span><span class='op'>::</span><span class='const'>Cookie</span><span class='period'>.</span><span class='id identifier rubyid_parse_from_request'>parse_from_request</span> <span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cookie</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
1586
+ <span class='id identifier rubyid_same_cookie'>same_cookie</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../AeEasy.html" title="AeEasy (module)">AeEasy</a></span></span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Helper</span><span class='op'>::</span><span class='const'>Cookie</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_old_cookie_hash'>old_cookie_hash</span><span class='comma'>,</span> <span class='id identifier rubyid_newest_cookie_hash'>newest_cookie_hash</span>
1587
+ <span class='id identifier rubyid_expire!'>expire!</span> <span class='kw'>if</span> <span class='id identifier rubyid_same_cookie'>same_cookie</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>expired</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
1588
+
1589
+ <span class='comment'># Hold self page
1590
+ </span> <span class='kw'>if</span> <span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>expired</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
1591
+ <span class='id identifier rubyid_save'>save</span><span class='lparen'>(</span>
1592
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>_collection</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_collection'>collection</span><span class='comma'>,</span>
1593
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>_id</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_page'>page</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>_id</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='comma'>,</span>
1594
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>page</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_page'>page</span><span class='comma'>,</span>
1595
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetched</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='kw'>false</span>
1596
+ <span class='rparen'>)</span>
1597
+ <span class='id identifier rubyid_enqueue_login'>enqueue_login</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span> <span class='kw'>unless</span> <span class='id identifier rubyid_enqueue_login'>enqueue_login</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1598
+ <span class='kw'>return</span>
1599
+ <span class='kw'>end</span>
1600
+
1601
+ <span class='comment'># Refetch self with new session
1602
+ </span> <span class='id identifier rubyid_new_page'>new_page</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span> <span class='id identifier rubyid_page'>page</span>
1603
+ <span class='id identifier rubyid_fix_page!'>fix_page!</span> <span class='id identifier rubyid_new_page'>new_page</span>
1604
+ <span class='id identifier rubyid_enqueue'>enqueue</span> <span class='id identifier rubyid_new_page'>new_page</span>
1605
+ <span class='kw'>end</span></pre>
1606
+ </td>
1607
+ </tr>
1608
+ </table>
1609
+ </div>
1610
+
1611
+ <div class="method_details ">
1612
+ <h3 class="signature " id="initialize_hook_login_flow-instance_method">
1613
+
1614
+ #<strong>initialize_hook_login_flow</strong>(opts = {}) &#x21d2; <tt>Object</tt>
1615
+
1616
+
1617
+
1618
+
1619
+
1620
+ </h3><div class="docstring">
1621
+ <div class="discussion">
1622
+
1623
+ <div class="note notetag">
1624
+ <strong>Note:</strong>
1625
+ <div class='inline'>
1626
+ <p>`<a href=":response_keys">opts</a>` will default to a predefined list
1627
+ whenever `nil`.</p>
1628
+ </div>
1629
+ </div>
1630
+
1631
+
1632
+ <p>Hook to initialize login flow configuration.</p>
1633
+
1634
+
1635
+ </div>
1636
+ </div>
1637
+ <div class="tags">
1638
+ <p class="tag_title">Parameters:</p>
1639
+ <ul class="param">
1640
+
1641
+ <li>
1642
+
1643
+ <span class='name'>opts</span>
1644
+
1645
+
1646
+ <span class='type'>(<tt>Hash</tt>)</span>
1647
+
1648
+
1649
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
1650
+
1651
+
1652
+ &mdash;
1653
+ <div class='inline'>
1654
+ <p>({}) Configuration options.</p>
1655
+ </div>
1656
+
1657
+ </li>
1658
+
1659
+ </ul>
1660
+
1661
+
1662
+
1663
+
1664
+ <p class="tag_title">Options Hash (<tt>opts</tt>):</p>
1665
+ <ul class="option">
1666
+
1667
+ <li>
1668
+ <span class="name">:app_config</span>
1669
+ <span class="type">(<tt>AeEasy::Core::Config</tt>)</span>
1670
+ <span class="default">
1671
+
1672
+ &mdash; default:
1673
+ <tt>nil</tt>
1674
+
1675
+ </span>
1676
+
1677
+ &mdash; <div class='inline'>
1678
+ <p>App configuration to use.</p>
1679
+ </div>
1680
+
1681
+ </li>
1682
+
1683
+ <li>
1684
+ <span class="name">:per_page</span>
1685
+ <span class="type">(<tt>Integer</tt>)</span>
1686
+ <span class="default">
1687
+
1688
+ &mdash; default:
1689
+ <tt>100</tt>
1690
+
1691
+ </span>
1692
+
1693
+ &mdash; <div class='inline'>
1694
+ <p>Batch size used on query outputs.</p>
1695
+ </div>
1696
+
1697
+ </li>
1698
+
1699
+ <li>
1700
+ <span class="name">:collection</span>
1701
+ <span class="type">(<tt>String</tt>)</span>
1702
+ <span class="default">
1703
+
1704
+ &mdash; default:
1705
+ <tt>&#39;login_flow_held_pages&#39;</tt>
1706
+
1707
+ </span>
1708
+
1709
+ &mdash; <div class='inline'>
1710
+ <p>Output collection used to store held pages to be fixed and fetched.</p>
1711
+ </div>
1712
+
1713
+ </li>
1714
+
1715
+ <li>
1716
+ <span class="name">:config_key</span>
1717
+ <span class="type">(<tt>String</tt>)</span>
1718
+ <span class="default">
1719
+
1720
+ &mdash; default:
1721
+ <tt>&#39;login_flow&#39;</tt>
1722
+
1723
+ </span>
1724
+
1725
+ &mdash; <div class='inline'>
1726
+ <p>Key to be used to store login flow configuration data at #app_config.</p>
1727
+ </div>
1728
+
1729
+ </li>
1730
+
1731
+ <li>
1732
+ <span class="name">:vars_key</span>
1733
+ <span class="type">(<tt>String</tt>)</span>
1734
+ <span class="default">
1735
+
1736
+ &mdash; default:
1737
+ <tt>&#39;login_flow_cookie&#39;</tt>
1738
+
1739
+ </span>
1740
+
1741
+ &mdash; <div class='inline'>
1742
+ <p>Page&#39;s “vars” key to store the login cookie used to fetch.</p>
1743
+ </div>
1744
+
1745
+ </li>
1746
+
1747
+ <li>
1748
+ <span class="name">:reponse_keys</span>
1749
+ <span class="type">(<tt>String</tt>)</span>
1750
+ <span class="default">
1751
+
1752
+ &mdash; default:
1753
+ <tt>nil</tt>
1754
+
1755
+ </span>
1756
+
1757
+ &mdash; <div class='inline'>
1758
+ <p>Response keys to remove from a held page before enqueue it again.</p>
1759
+ </div>
1760
+
1761
+ </li>
1762
+
1763
+ <li>
1764
+ <span class="name">:custom_fix</span>
1765
+ <span class="type">(<tt>Block</tt>)</span>
1766
+ <span class="default">
1767
+
1768
+ &mdash; default:
1769
+ <tt>nil</tt>
1770
+
1771
+ </span>
1772
+
1773
+ &mdash; <div class='inline'>
1774
+ <p>Custom block to be executed on fixing a held page.</p>
1775
+ </div>
1776
+
1777
+ </li>
1778
+
1779
+ </ul>
1780
+
1781
+
1782
+ <p class="tag_title">Raises:</p>
1783
+ <ul class="raise">
1784
+
1785
+ <li>
1786
+
1787
+
1788
+ <span class='type'>(<tt>ArgumentError</tt>)</span>
1789
+
1790
+
1791
+
1792
+ &mdash;
1793
+ <div class='inline'>
1794
+ <p>When `<a href=":app_config">opts</a>` is not provided or `nil`.</p>
1795
+ </div>
1796
+
1797
+ </li>
1798
+
1799
+ </ul>
1800
+
1801
+ </div><table class="source_code">
1802
+ <tr>
1803
+ <td>
1804
+ <pre class="lines">
1805
+
1806
+
1807
+ 55
1808
+ 56
1809
+ 57
1810
+ 58
1811
+ 59
1812
+ 60
1813
+ 61
1814
+ 62
1815
+ 63
1816
+ 64
1817
+ 65
1818
+ 66
1819
+ 67</pre>
1820
+ </td>
1821
+ <td>
1822
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 55</span>
1823
+
1824
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize_hook_login_flow'>initialize_hook_login_flow</span> <span class='id identifier rubyid_opts'>opts</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
1825
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_per_page'>per_page</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:per_page</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='int'>100</span>
1826
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_collection'>collection</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:collection</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>login_flow_held_pages</span><span class='tstring_end'>&#39;</span></span>
1827
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_config_key'>config_key</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:config_key</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>login_flow</span><span class='tstring_end'>&#39;</span></span>
1828
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_vars_key'>vars_key</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:vars_key</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>login_flow_cookie</span><span class='tstring_end'>&#39;</span></span>
1829
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_response_keys'>response_keys</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:reponse_keys</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='kw'>nil</span>
1830
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_app_config'>app_config</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:app_config</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='kw'>nil</span>
1831
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_custom_fix'>custom_fix</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:custom_fix</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='kw'>nil</span>
1832
+
1833
+ <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_app_config'>app_config</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1834
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>&quot;:app_config&quot; option is required!</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1835
+ <span class='kw'>end</span>
1836
+ <span class='kw'>end</span></pre>
1837
+ </td>
1838
+ </tr>
1839
+ </table>
1840
+ </div>
1841
+
1842
+ <div class="method_details ">
1843
+ <h3 class="signature " id="merge_cookie-instance_method">
1844
+
1845
+ #<strong>merge_cookie</strong>(old_cookie) &#x21d2; <tt>Object</tt>
1846
+
1847
+
1848
+
1849
+
1850
+
1851
+ </h3><div class="docstring">
1852
+ <div class="discussion">
1853
+
1854
+ <p>Updates an old cookie with current cookie saved on app configuration.</p>
1855
+
1856
+
1857
+ </div>
1858
+ </div>
1859
+ <div class="tags">
1860
+ <p class="tag_title">Parameters:</p>
1861
+ <ul class="param">
1862
+
1863
+ <li>
1864
+
1865
+ <span class='name'>old_cookie</span>
1866
+
1867
+
1868
+ <span class='type'>(<tt>String</tt>, <tt>Array</tt>, <tt>Hash</tt>)</span>
1869
+
1870
+
1871
+
1872
+ &mdash;
1873
+ <div class='inline'>
1874
+ <p>Old cookie to update.</p>
1875
+ </div>
1876
+
1877
+ </li>
1878
+
1879
+ </ul>
1880
+
1881
+
1882
+ </div><table class="source_code">
1883
+ <tr>
1884
+ <td>
1885
+ <pre class="lines">
1886
+
1887
+
1888
+ 201
1889
+ 202
1890
+ 203
1891
+ 204</pre>
1892
+ </td>
1893
+ <td>
1894
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 201</span>
1895
+
1896
+ <span class='kw'>def</span> <span class='id identifier rubyid_merge_cookie'>merge_cookie</span> <span class='id identifier rubyid_old_cookie'>old_cookie</span>
1897
+ <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>if</span> <span class='id identifier rubyid_old_cookie'>old_cookie</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1898
+ <span class='const'><span class='object_link'><a href="../../AeEasy.html" title="AeEasy (module)">AeEasy</a></span></span><span class='op'>::</span><span class='const'>Core</span><span class='op'>::</span><span class='const'>Helper</span><span class='op'>::</span><span class='const'>Cookie</span><span class='period'>.</span><span class='id identifier rubyid_update'>update</span> <span class='id identifier rubyid_old_cookie'>old_cookie</span><span class='comma'>,</span> <span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cookie</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
1899
+ <span class='kw'>end</span></pre>
1900
+ </td>
1901
+ </tr>
1902
+ </table>
1903
+ </div>
1904
+
1905
+ <div class="method_details ">
1906
+ <h3 class="signature " id="reload_config-instance_method">
1907
+
1908
+ #<strong>reload_config</strong> &#x21d2; <tt>Object</tt>
1909
+
1910
+
1911
+
1912
+
1913
+
1914
+ </h3><div class="docstring">
1915
+ <div class="discussion">
1916
+
1917
+ <p>Invalidates login flow config, so it is reloaded on next config usage.</p>
1918
+
1919
+
1920
+ </div>
1921
+ </div>
1922
+ <div class="tags">
1923
+
1924
+
1925
+ </div><table class="source_code">
1926
+ <tr>
1927
+ <td>
1928
+ <pre class="lines">
1929
+
1930
+
1931
+ 127
1932
+ 128
1933
+ 129</pre>
1934
+ </td>
1935
+ <td>
1936
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 127</span>
1937
+
1938
+ <span class='kw'>def</span> <span class='id identifier rubyid_reload_config'>reload_config</span>
1939
+ <span class='ivar'>@config</span> <span class='op'>=</span> <span class='kw'>nil</span>
1940
+ <span class='kw'>end</span></pre>
1941
+ </td>
1942
+ </tr>
1943
+ </table>
1944
+ </div>
1945
+
1946
+ <div class="method_details ">
1947
+ <h3 class="signature " id="response_key?-instance_method">
1948
+
1949
+ #<strong>response_key?</strong>(key) &#x21d2; <tt>Boolean</tt>
1950
+
1951
+
1952
+
1953
+
1954
+
1955
+ </h3><div class="docstring">
1956
+ <div class="discussion">
1957
+
1958
+ <p>Check whenever a key name is categorized as a response key.</p>
1959
+
1960
+
1961
+ </div>
1962
+ </div>
1963
+ <div class="tags">
1964
+ <p class="tag_title">Parameters:</p>
1965
+ <ul class="param">
1966
+
1967
+ <li>
1968
+
1969
+ <span class='name'>key</span>
1970
+
1971
+
1972
+ <span class='type'>(<tt>String</tt>)</span>
1973
+
1974
+
1975
+
1976
+ &mdash;
1977
+ <div class='inline'>
1978
+ <p>Key name to check.</p>
1979
+ </div>
1980
+
1981
+ </li>
1982
+
1983
+ </ul>
1984
+
1985
+ <p class="tag_title">Returns:</p>
1986
+ <ul class="return">
1987
+
1988
+ <li>
1989
+
1990
+
1991
+ <span class='type'>(<tt>Boolean</tt>)</span>
1992
+
1993
+
1994
+
1995
+ &mdash;
1996
+ <div class='inline'>
1997
+ <p>`true` when key name is a response key, else `false`.</p>
1998
+ </div>
1999
+
2000
+ </li>
2001
+
2002
+ </ul>
2003
+
2004
+ </div><table class="source_code">
2005
+ <tr>
2006
+ <td>
2007
+ <pre class="lines">
2008
+
2009
+
2010
+ 184
2011
+ 185
2012
+ 186</pre>
2013
+ </td>
2014
+ <td>
2015
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 184</span>
2016
+
2017
+ <span class='kw'>def</span> <span class='id identifier rubyid_response_key?'>response_key?</span> <span class='id identifier rubyid_key'>key</span>
2018
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_response_keys'>response_keys</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span>
2019
+ <span class='kw'>end</span></pre>
2020
+ </td>
2021
+ </tr>
2022
+ </table>
2023
+ </div>
2024
+
2025
+ <div class="method_details ">
2026
+ <h3 class="signature " id="response_keys-instance_method">
2027
+
2028
+ #<strong>response_keys</strong> &#x21d2; <tt>Array&lt;String&gt;</tt>
2029
+
2030
+
2031
+
2032
+
2033
+
2034
+ </h3><div class="docstring">
2035
+ <div class="discussion">
2036
+
2037
+ <p>Response keys to remove from a held page before enqueue it again.</p>
2038
+
2039
+
2040
+ </div>
2041
+ </div>
2042
+ <div class="tags">
2043
+
2044
+ <p class="tag_title">Returns:</p>
2045
+ <ul class="return">
2046
+
2047
+ <li>
2048
+
2049
+
2050
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
2051
+
2052
+
2053
+
2054
+ </li>
2055
+
2056
+ </ul>
2057
+
2058
+ </div><table class="source_code">
2059
+ <tr>
2060
+ <td>
2061
+ <pre class="lines">
2062
+
2063
+
2064
+ 72
2065
+ 73
2066
+ 74
2067
+ 75
2068
+ 76
2069
+ 77
2070
+ 78
2071
+ 79
2072
+ 80
2073
+ 81
2074
+ 82
2075
+ 83
2076
+ 84
2077
+ 85
2078
+ 86
2079
+ 87
2080
+ 88
2081
+ 89
2082
+ 90
2083
+ 91
2084
+ 92
2085
+ 93
2086
+ 94
2087
+ 95
2088
+ 96
2089
+ 97
2090
+ 98
2091
+ 99
2092
+ 100
2093
+ 101
2094
+ 102
2095
+ 103
2096
+ 104
2097
+ 105
2098
+ 106
2099
+ 107
2100
+ 108
2101
+ 109
2102
+ 110
2103
+ 111
2104
+ 112
2105
+ 113
2106
+ 114
2107
+ 115
2108
+ 116
2109
+ 117</pre>
2110
+ </td>
2111
+ <td>
2112
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 72</span>
2113
+
2114
+ <span class='kw'>def</span> <span class='id identifier rubyid_response_keys'>response_keys</span>
2115
+ <span class='ivar'>@response_keys</span> <span class='op'>||=</span> <span class='lbracket'>[</span>
2116
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>content_size</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2117
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>content_type</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2118
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>created_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2119
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>effective_url</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2120
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2121
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_cid</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2122
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_content_size</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2123
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_content_type</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2124
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_effective_url</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2125
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_response_checksum</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2126
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_response_cookie</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2127
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_response_headers</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2128
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_response_proto</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2129
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_response_status_code</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2130
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failed_response_status</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2131
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetched_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2132
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetched_from</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2133
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetching_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2134
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetching_try_count</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2135
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>forced_fetch</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2136
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>gid</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2137
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>hostname</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2138
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>job_id</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2139
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>job_status</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2140
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>parsed_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2141
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>parsing_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2142
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>parsing_fail_count</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2143
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>parsing_failed_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2144
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>parsing_status</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2145
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>parsing_try_count</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2146
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>parsing_updated_at</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2147
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>response_checksum</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2148
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>response_cookie</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2149
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>response_headers</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2150
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>response_proto</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2151
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>response_status_code</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2152
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>response_status</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2153
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>status</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2154
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>to_fetch</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2155
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>total_failures</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2156
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>total_requests</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
2157
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>total_successes</span><span class='tstring_end'>&#39;</span></span>
2158
+ <span class='rbracket'>]</span>
2159
+ <span class='kw'>end</span></pre>
2160
+ </td>
2161
+ </tr>
2162
+ </table>
2163
+ </div>
2164
+
2165
+ <div class="method_details ">
2166
+ <h3 class="signature " id="response_keys=-instance_method">
2167
+
2168
+ #<strong>response_keys=</strong>(value) &#x21d2; <tt>Object</tt>
2169
+
2170
+
2171
+
2172
+
2173
+
2174
+ </h3><div class="docstring">
2175
+ <div class="discussion">
2176
+
2177
+ <p>Set response key list to remove from a page before enqueue it again.</p>
2178
+
2179
+
2180
+ </div>
2181
+ </div>
2182
+ <div class="tags">
2183
+ <p class="tag_title">Parameters:</p>
2184
+ <ul class="param">
2185
+
2186
+ <li>
2187
+
2188
+ <span class='name'>value</span>
2189
+
2190
+
2191
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
2192
+
2193
+
2194
+
2195
+ &mdash;
2196
+ <div class='inline'>
2197
+ <p>Response key list.</p>
2198
+ </div>
2199
+
2200
+ </li>
2201
+
2202
+ </ul>
2203
+
2204
+
2205
+ </div><table class="source_code">
2206
+ <tr>
2207
+ <td>
2208
+ <pre class="lines">
2209
+
2210
+
2211
+ 122
2212
+ 123
2213
+ 124</pre>
2214
+ </td>
2215
+ <td>
2216
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 122</span>
2217
+
2218
+ <span class='kw'>def</span> <span class='id identifier rubyid_response_keys='>response_keys=</span> <span class='id identifier rubyid_value'>value</span>
2219
+ <span class='ivar'>@response_keys</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span>
2220
+ <span class='kw'>end</span></pre>
2221
+ </td>
2222
+ </tr>
2223
+ </table>
2224
+ </div>
2225
+
2226
+ <div class="method_details ">
2227
+ <h3 class="signature " id="restore_held_pages-instance_method">
2228
+
2229
+ #<strong>restore_held_pages</strong> &#x21d2; <tt>Object</tt>
2230
+
2231
+
2232
+
2233
+
2234
+
2235
+ </h3><div class="docstring">
2236
+ <div class="discussion">
2237
+
2238
+ <p>Restore all held pages stored as outputs.</p>
2239
+
2240
+
2241
+ </div>
2242
+ </div>
2243
+ <div class="tags">
2244
+
2245
+
2246
+ </div><table class="source_code">
2247
+ <tr>
2248
+ <td>
2249
+ <pre class="lines">
2250
+
2251
+
2252
+ 264
2253
+ 265
2254
+ 266
2255
+ 267
2256
+ 268
2257
+ 269
2258
+ 270
2259
+ 271
2260
+ 272
2261
+ 273
2262
+ 274
2263
+ 275
2264
+ 276
2265
+ 277
2266
+ 278
2267
+ 279
2268
+ 280
2269
+ 281
2270
+ 282
2271
+ 283
2272
+ 284</pre>
2273
+ </td>
2274
+ <td>
2275
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 264</span>
2276
+
2277
+ <span class='kw'>def</span> <span class='id identifier rubyid_restore_held_pages'>restore_held_pages</span>
2278
+ <span class='id identifier rubyid_current_page'>current_page</span> <span class='op'>=</span> <span class='int'>1</span>
2279
+ <span class='id identifier rubyid_held_pages'>held_pages</span> <span class='op'>=</span> <span class='id identifier rubyid_find_outputs'>find_outputs</span> <span class='id identifier rubyid_collection'>collection</span><span class='comma'>,</span> <span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetched</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>false</span><span class='tstring_end'>&#39;</span></span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_current_page'>current_page</span><span class='comma'>,</span> <span class='id identifier rubyid_per_page'>per_page</span>
2280
+ <span class='kw'>while</span> <span class='op'>!</span><span class='id identifier rubyid_held_pages'>held_pages</span><span class='op'>&amp;.</span><span class='id identifier rubyid_first'>first</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>do</span>
2281
+ <span class='id identifier rubyid_held_pages'>held_pages</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_output'>output</span><span class='op'>|</span>
2282
+ <span class='comment'># Parse and seed pages
2283
+ </span> <span class='id identifier rubyid_held_page'>held_page</span> <span class='op'>=</span> <span class='id identifier rubyid_output'>output</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>page</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_output'>output</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>page</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_output'>output</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>page</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
2284
+ <span class='id identifier rubyid_fix_page!'>fix_page!</span> <span class='id identifier rubyid_held_page'>held_page</span>
2285
+ <span class='id identifier rubyid_pages'>pages</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_held_page'>held_page</span>
2286
+
2287
+ <span class='id identifier rubyid_output'>output</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetched</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>true</span>
2288
+ <span class='id identifier rubyid_outputs'>outputs</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_output'>output</span>
2289
+ <span class='kw'>end</span>
2290
+
2291
+ <span class='comment'># Fetch next page
2292
+ </span> <span class='id identifier rubyid_current_page'>current_page</span> <span class='op'>+=</span> <span class='int'>1</span>
2293
+ <span class='id identifier rubyid_enqueue'>enqueue</span> <span class='id identifier rubyid_pages'>pages</span>
2294
+ <span class='id identifier rubyid_save'>save</span> <span class='id identifier rubyid_outputs'>outputs</span>
2295
+ <span class='id identifier rubyid_held_pages'>held_pages</span> <span class='op'>=</span> <span class='id identifier rubyid_find_outputs'>find_outputs</span> <span class='id identifier rubyid_collection'>collection</span><span class='comma'>,</span> <span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>fetched</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='kw'>false</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_current_page'>current_page</span><span class='comma'>,</span> <span class='id identifier rubyid_per_page'>per_page</span>
2296
+ <span class='kw'>end</span>
2297
+ <span class='kw'>end</span></pre>
2298
+ </td>
2299
+ </tr>
2300
+ </table>
2301
+ </div>
2302
+
2303
+ <div class="method_details ">
2304
+ <h3 class="signature " id="seeded!-instance_method">
2305
+
2306
+ #<strong>seeded!</strong> &#x21d2; <tt>Object</tt>
2307
+
2308
+
2309
+
2310
+
2311
+
2312
+ </h3><div class="docstring">
2313
+ <div class="discussion">
2314
+
2315
+ <p>Set seeded flag as `true`.</p>
2316
+
2317
+
2318
+ </div>
2319
+ </div>
2320
+ <div class="tags">
2321
+
2322
+
2323
+ </div><table class="source_code">
2324
+ <tr>
2325
+ <td>
2326
+ <pre class="lines">
2327
+
2328
+
2329
+ 163
2330
+ 164
2331
+ 165</pre>
2332
+ </td>
2333
+ <td>
2334
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 163</span>
2335
+
2336
+ <span class='kw'>def</span> <span class='id identifier rubyid_seeded!'>seeded!</span>
2337
+ <span class='id identifier rubyid_update_config'>update_config</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>seeded</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='kw'>true</span>
2338
+ <span class='kw'>end</span></pre>
2339
+ </td>
2340
+ </tr>
2341
+ </table>
2342
+ </div>
2343
+
2344
+ <div class="method_details ">
2345
+ <h3 class="signature " id="seeded?-instance_method">
2346
+
2347
+ #<strong>seeded?</strong> &#x21d2; <tt>Boolean</tt>
2348
+
2349
+
2350
+
2351
+
2352
+
2353
+ </h3><div class="docstring">
2354
+ <div class="discussion">
2355
+
2356
+ <p>Indicates whenever login flow has been seeded. Useful when using files</p>
2357
+
2358
+ <pre class="code ruby"><code class="ruby">to held pages.
2359
+ </code></pre>
2360
+
2361
+
2362
+ </div>
2363
+ </div>
2364
+ <div class="tags">
2365
+
2366
+ <p class="tag_title">Returns:</p>
2367
+ <ul class="return">
2368
+
2369
+ <li>
2370
+
2371
+
2372
+ <span class='type'>(<tt>Boolean</tt>)</span>
2373
+
2374
+
2375
+
2376
+ &mdash;
2377
+ <div class='inline'>
2378
+ <p>`true` if seeded, else `false`.</p>
2379
+ </div>
2380
+
2381
+ </li>
2382
+
2383
+ </ul>
2384
+
2385
+ </div><table class="source_code">
2386
+ <tr>
2387
+ <td>
2388
+ <pre class="lines">
2389
+
2390
+
2391
+ 147
2392
+ 148
2393
+ 149</pre>
2394
+ </td>
2395
+ <td>
2396
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 147</span>
2397
+
2398
+ <span class='kw'>def</span> <span class='id identifier rubyid_seeded?'>seeded?</span>
2399
+ <span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>seeded</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='kw'>false</span>
2400
+ <span class='kw'>end</span></pre>
2401
+ </td>
2402
+ </tr>
2403
+ </table>
2404
+ </div>
2405
+
2406
+ <div class="method_details ">
2407
+ <h3 class="signature " id="update_config-instance_method">
2408
+
2409
+ #<strong>update_config</strong>(data = {}) &#x21d2; <tt>Object</tt>
2410
+
2411
+
2412
+
2413
+
2414
+
2415
+ </h3><div class="docstring">
2416
+ <div class="discussion">
2417
+
2418
+ <p>Updates app configuration.</p>
2419
+
2420
+
2421
+ </div>
2422
+ </div>
2423
+ <div class="tags">
2424
+ <p class="tag_title">Parameters:</p>
2425
+ <ul class="param">
2426
+
2427
+ <li>
2428
+
2429
+ <span class='name'>data</span>
2430
+
2431
+
2432
+ <span class='type'>(<tt>Hash</tt>)</span>
2433
+
2434
+
2435
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
2436
+
2437
+
2438
+ &mdash;
2439
+ <div class='inline'>
2440
+ <p>({}) Data to be saved on app configuration.</p>
2441
+ </div>
2442
+
2443
+ </li>
2444
+
2445
+ </ul>
2446
+
2447
+
2448
+ </div><table class="source_code">
2449
+ <tr>
2450
+ <td>
2451
+ <pre class="lines">
2452
+
2453
+
2454
+ 154
2455
+ 155
2456
+ 156
2457
+ 157
2458
+ 158
2459
+ 159
2460
+ 160</pre>
2461
+ </td>
2462
+ <td>
2463
+ <pre class="code"><span class="info file"># File 'lib/ae_easy/login/flow.rb', line 154</span>
2464
+
2465
+ <span class='kw'>def</span> <span class='id identifier rubyid_update_config'>update_config</span> <span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
2466
+ <span class='id identifier rubyid_reload_config'>reload_config</span>
2467
+ <span class='id identifier rubyid_new_config'>new_config</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_config'>config</span><span class='rparen'>)</span>
2468
+ <span class='id identifier rubyid_new_config'>new_config</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
2469
+ <span class='id identifier rubyid_save'>save</span> <span class='id identifier rubyid_new_config'>new_config</span>
2470
+ <span class='id identifier rubyid_reload_config'>reload_config</span>
2471
+ <span class='kw'>end</span></pre>
2472
+ </td>
2473
+ </tr>
2474
+ </table>
2475
+ </div>
2476
+
2477
+ </div>
2478
+
2479
+ </div>
2480
+
2481
+ <div id="footer">
2482
+ Generated on Fri Sep 27 07:10:17 2019 by
2483
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2484
+ 0.9.20 (ruby-2.5.3).
2485
+ </div>
2486
+
2487
+ </div>
2488
+ </body>
2489
+ </html>