riojs 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/public/images/sub-menu-indicator.png +0 -0
- data/public/javascripts/components/alert_box.js +34 -24
- data/public/javascripts/components/grid_view.js +32 -10
- data/public/javascripts/components/input.js +6 -0
- data/public/javascripts/components/lightbox.js +137 -141
- data/public/javascripts/components/list_view.js +2 -2
- data/public/javascripts/components/menu.js +93 -50
- data/public/javascripts/components/overlay.js +117 -118
- data/public/javascripts/components/popup.js +213 -0
- data/public/javascripts/components/toggle_button.js +3 -2
- data/public/javascripts/lib/console/docs/files.html +1 -1
- data/public/javascripts/lib/console/docs/index.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/Object.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/_global_.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Application.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Attr.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Binding.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Component.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Cookie.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.DelayedTask#initialize.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.DelayedTask.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.JsTemplate.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Juggernaut.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Model.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Page.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Utils.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_model.js.html +506 -493
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_page.js.html +5 -5
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_protohack.js.html +126 -123
- data/public/javascripts/lib/model.js +18 -5
- data/public/javascripts/lib/page.js +5 -5
- data/public/javascripts/lib/protohack.js +12 -9
- data/public/javascripts/specs/lib/model_spec.js +13 -0
- data/public/stylesheets/components/alert_box.css +5 -1
- data/public/stylesheets/components/menu.css +17 -17
- data/public/stylesheets/components/popup.css +18 -0
- metadata +5 -2
@@ -13,10 +13,11 @@ rio.components.ToggleButton = rio.Component.create(rio.components.Base, {
|
|
13
13
|
href: "",
|
14
14
|
onclick: "return false;"
|
15
15
|
});
|
16
|
-
linkHtml.observe("click", function() {
|
16
|
+
linkHtml.observe("click", function(e) {
|
17
17
|
this.setState(!this.getState());
|
18
18
|
this.fire("toggle");
|
19
|
-
|
19
|
+
e.stop();
|
20
|
+
}.bindAsEventListener(this));
|
20
21
|
return linkHtml;
|
21
22
|
}
|
22
23
|
}
|
@@ -573,7 +573,7 @@ ul.inheritsList
|
|
573
573
|
</div>
|
574
574
|
<div class="fineprint" style="clear:both">
|
575
575
|
|
576
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on
|
576
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
577
577
|
</div>
|
578
578
|
</body>
|
579
579
|
</html>
|
@@ -317,7 +317,7 @@ ul.inheritsList
|
|
317
317
|
</div>
|
318
318
|
<div class="fineprint" style="clear:both">
|
319
319
|
|
320
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on
|
320
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
321
321
|
</div>
|
322
322
|
</body>
|
323
323
|
</html>
|
@@ -285,7 +285,7 @@ ul.inheritsList
|
|
285
285
|
<!-- ============================== footer ================================= -->
|
286
286
|
<div class="fineprint" style="clear:both">
|
287
287
|
|
288
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
288
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:22 GMT-0500 (CDT)
|
289
289
|
</div>
|
290
290
|
</body>
|
291
291
|
</html>
|
@@ -407,7 +407,7 @@ ul.inheritsList
|
|
407
407
|
<!-- ============================== footer ================================= -->
|
408
408
|
<div class="fineprint" style="clear:both">
|
409
409
|
|
410
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
410
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:22 GMT-0500 (CDT)
|
411
411
|
</div>
|
412
412
|
</body>
|
413
413
|
</html>
|
@@ -960,7 +960,7 @@ ul.inheritsList
|
|
960
960
|
<!-- ============================== footer ================================= -->
|
961
961
|
<div class="fineprint" style="clear:both">
|
962
962
|
|
963
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
963
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
964
964
|
</div>
|
965
965
|
</body>
|
966
966
|
</html>
|
@@ -1069,7 +1069,7 @@ ul.inheritsList
|
|
1069
1069
|
<!-- ============================== footer ================================= -->
|
1070
1070
|
<div class="fineprint" style="clear:both">
|
1071
1071
|
|
1072
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
1072
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
1073
1073
|
</div>
|
1074
1074
|
</body>
|
1075
1075
|
</html>
|
@@ -266,7 +266,7 @@ ul.inheritsList
|
|
266
266
|
<!-- ============================== footer ================================= -->
|
267
267
|
<div class="fineprint" style="clear:both">
|
268
268
|
|
269
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
269
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
270
270
|
</div>
|
271
271
|
</body>
|
272
272
|
</html>
|
@@ -413,7 +413,7 @@ ul.inheritsList
|
|
413
413
|
<!-- ============================== footer ================================= -->
|
414
414
|
<div class="fineprint" style="clear:both">
|
415
415
|
|
416
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
416
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
417
417
|
</div>
|
418
418
|
</body>
|
419
419
|
</html>
|
@@ -537,7 +537,7 @@ ul.inheritsList
|
|
537
537
|
<!-- ============================== footer ================================= -->
|
538
538
|
<div class="fineprint" style="clear:both">
|
539
539
|
|
540
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
540
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
541
541
|
</div>
|
542
542
|
</body>
|
543
543
|
</html>
|
@@ -264,7 +264,7 @@ ul.inheritsList
|
|
264
264
|
<!-- ============================== footer ================================= -->
|
265
265
|
<div class="fineprint" style="clear:both">
|
266
266
|
|
267
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
267
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
268
268
|
</div>
|
269
269
|
</body>
|
270
270
|
</html>
|
@@ -385,7 +385,7 @@ ul.inheritsList
|
|
385
385
|
<!-- ============================== footer ================================= -->
|
386
386
|
<div class="fineprint" style="clear:both">
|
387
387
|
|
388
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
388
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
389
389
|
</div>
|
390
390
|
</body>
|
391
391
|
</html>
|
@@ -265,7 +265,7 @@ ul.inheritsList
|
|
265
265
|
<!-- ============================== footer ================================= -->
|
266
266
|
<div class="fineprint" style="clear:both">
|
267
267
|
|
268
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
268
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
269
269
|
</div>
|
270
270
|
</body>
|
271
271
|
</html>
|
@@ -323,7 +323,7 @@ ul.inheritsList
|
|
323
323
|
<!-- ============================== footer ================================= -->
|
324
324
|
<div class="fineprint" style="clear:both">
|
325
325
|
|
326
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
326
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
327
327
|
</div>
|
328
328
|
</body>
|
329
329
|
</html>
|
@@ -816,7 +816,7 @@ ul.inheritsList
|
|
816
816
|
<!-- ============================== footer ================================= -->
|
817
817
|
<div class="fineprint" style="clear:both">
|
818
818
|
|
819
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
819
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
820
820
|
</div>
|
821
821
|
</body>
|
822
822
|
</html>
|
@@ -377,7 +377,7 @@ ul.inheritsList
|
|
377
377
|
<!-- ============================== footer ================================= -->
|
378
378
|
<div class="fineprint" style="clear:both">
|
379
379
|
|
380
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
380
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
381
381
|
</div>
|
382
382
|
</body>
|
383
383
|
</html>
|
@@ -611,7 +611,7 @@ ul.inheritsList
|
|
611
611
|
<!-- ============================== footer ================================= -->
|
612
612
|
<div class="fineprint" style="clear:both">
|
613
613
|
|
614
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
614
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
615
615
|
</div>
|
616
616
|
</body>
|
617
617
|
</html>
|
@@ -500,7 +500,7 @@ iiii jjjj
|
|
500
500
|
<!-- ============================== footer ================================= -->
|
501
501
|
<div class="fineprint" style="clear:both">
|
502
502
|
|
503
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
503
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:22 GMT-0500 (CDT)
|
504
504
|
</div>
|
505
505
|
</body>
|
506
506
|
</html>
|
@@ -576,500 +576,513 @@
|
|
576
576
|
<span class='line'>569</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
577
577
|
<span class='line'>570</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
578
578
|
<span class='line'>571</span>
|
579
|
-
<span class='line'>572</span> </span><span class="NAME">
|
580
|
-
<span class='line'>573</span>
|
581
|
-
<span class='line'>574</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
582
|
-
<span class='line'>575</span> </span><span class="KEYW">
|
583
|
-
<span class='line'>576</span>
|
584
|
-
<span class='line'>577</span> </span><span class="NAME">
|
585
|
-
<span class='line'>578</span>
|
586
|
-
<span class='line'>579</span>
|
587
|
-
<span class='line'>580</span>
|
588
|
-
<span class='line'>581</span> </span><span class="
|
589
|
-
<span class='line'>582</span> </span><span class="NAME">
|
590
|
-
<span class='line'>583</span>
|
591
|
-
<span class='line'>584</span>
|
592
|
-
<span class='line'>585</span> </span><span class="
|
593
|
-
<span class='line'>586</span>
|
594
|
-
<span class='line'>587</span>
|
595
|
-
<span class='line'>588</span> </span><span class="NAME">this.
|
596
|
-
<span class='line'>589</span>
|
597
|
-
<span class='line'>590</span>
|
598
|
-
<span class='line'>591</span>
|
599
|
-
<span class='line'>592</span>
|
600
|
-
<span class='line'>593</span>
|
601
|
-
<span class='line'>594</span>
|
602
|
-
<span class='line'>595</span> </span><span class="KEYW">
|
603
|
-
<span class='line'>596</span>
|
604
|
-
<span class='line'>597</span>
|
605
|
-
<span class='line'>598</span>
|
606
|
-
<span class='line'>599</span>
|
607
|
-
<span class='line'>600</span>
|
608
|
-
<span class='line'>601</span>
|
609
|
-
<span class='line'>602</span>
|
610
|
-
<span class='line'>603</span>
|
611
|
-
<span class='line'>604</span>
|
612
|
-
<span class='line'>605</span> </span><span class="
|
613
|
-
<span class='line'>606</span>
|
614
|
-
<span class='line'>607</span>
|
615
|
-
<span class='line'>608</span>
|
616
|
-
<span class='line'>609</span>
|
617
|
-
<span class='line'>610</span>
|
618
|
-
<span class='line'>611</span>
|
619
|
-
<span class='line'>612</span>
|
620
|
-
<span class='line'>613</span>
|
621
|
-
<span class='line'>614</span> </span><span class="
|
622
|
-
<span class='line'>615</span>
|
623
|
-
<span class='line'>616</span>
|
624
|
-
<span class='line'>617</span>
|
625
|
-
<span class='line'>618</span>
|
626
|
-
<span class='line'>619</span>
|
627
|
-
<span class='line'>620</span> </span><span class="PUNC">
|
628
|
-
<span class='line'>621</span>
|
629
|
-
<span class='line'>622</span>
|
630
|
-
<span class='line'>623</span>
|
631
|
-
<span class='line'>624</span>
|
632
|
-
<span class='line'>625</span> </span><span class="
|
633
|
-
<span class='line'>626</span>
|
634
|
-
<span class='line'>627</span>
|
635
|
-
<span class='line'>628</span>
|
636
|
-
<span class='line'>629</span>
|
637
|
-
<span class='line'>630</span>
|
638
|
-
<span class='line'>631</span>
|
639
|
-
<span class='line'>632</span>
|
640
|
-
<span class='line'>633</span>
|
641
|
-
<span class='line'>634</span>
|
642
|
-
<span class='line'>635</span>
|
643
|
-
<span class='line'>636</span> </span><span class="
|
644
|
-
<span class='line'>637</span>
|
645
|
-
<span class='line'>638</span>
|
646
|
-
<span class='line'>639</span> </span><span class="PUNC">
|
647
|
-
<span class='line'>640</span>
|
648
|
-
<span class='line'>641</span>
|
649
|
-
<span class='line'>642</span> </span><span class="
|
650
|
-
<span class='line'>643</span>
|
651
|
-
<span class='line'>644</span>
|
652
|
-
<span class='line'>645</span>
|
653
|
-
<span class='line'>646</span>
|
654
|
-
<span class='line'>647</span> </span><span class="KEYW">
|
655
|
-
<span class='line'>648</span> </span><span class="
|
656
|
-
<span class='line'>649</span>
|
657
|
-
<span class='line'>650</span>
|
658
|
-
<span class='line'>651</span>
|
659
|
-
<span class='line'>652</span> </span><span class="
|
660
|
-
<span class='line'>653</span>
|
661
|
-
<span class='line'>654</span> </span><span class="
|
662
|
-
<span class='line'>655</span>
|
663
|
-
<span class='line'>656</span>
|
664
|
-
<span class='line'>657</span>
|
665
|
-
<span class='line'>658</span>
|
666
|
-
<span class='line'>659</span> </span><span class="
|
667
|
-
<span class='line'>660</span>
|
668
|
-
<span class='line'>661</span>
|
669
|
-
<span class='line'>662</span>
|
670
|
-
<span class='line'>663</span>
|
671
|
-
<span class='line'>664</span>
|
672
|
-
<span class='line'>665</span>
|
673
|
-
<span class='line'>666</span> </span><span class="
|
674
|
-
<span class='line'>667</span>
|
675
|
-
<span class='line'>668</span>
|
676
|
-
<span class='line'>669</span> </span><span class="PUNC">
|
677
|
-
<span class='line'>670</span>
|
678
|
-
<span class='line'>671</span> </span><span class="NAME">
|
679
|
-
<span class='line'>672</span> </span><span class="
|
680
|
-
<span class='line'>673</span>
|
681
|
-
<span class='line'>674</span>
|
682
|
-
<span class='line'>675</span>
|
683
|
-
<span class='line'>676</span>
|
684
|
-
<span class='line'>677</span>
|
685
|
-
<span class='line'>678</span>
|
686
|
-
<span class='line'>679</span> </span><span class="KEYW">
|
687
|
-
<span class='line'>680</span>
|
688
|
-
<span class='line'>681</span>
|
689
|
-
<span class='line'>682</span>
|
690
|
-
<span class='line'>683</span>
|
691
|
-
<span class='line'>684</span>
|
692
|
-
<span class='line'>685</span>
|
693
|
-
<span class='line'>686</span> </span><span class="PUNC">
|
694
|
-
<span class='line'>687</span>
|
695
|
-
<span class='line'>688</span>
|
696
|
-
<span class='line'>689</span>
|
697
|
-
<span class='line'>690</span>
|
698
|
-
<span class='line'>691</span>
|
699
|
-
<span class='line'>692</span>
|
700
|
-
<span class='line'>693</span> </span><span class="
|
701
|
-
<span class='line'>694</span>
|
702
|
-
<span class='line'>695</span>
|
703
|
-
<span class='line'>696</span>
|
704
|
-
<span class='line'>697</span>
|
705
|
-
<span class='line'>698</span> </span><span class="
|
706
|
-
<span class='line'>699</span>
|
707
|
-
<span class='line'>700</span>
|
708
|
-
<span class='line'>701</span> </span><span class="
|
709
|
-
<span class='line'>702</span>
|
710
|
-
<span class='line'>703</span>
|
711
|
-
<span class='line'>704</span>
|
712
|
-
<span class='line'>705</span>
|
713
|
-
<span class='line'>706</span>
|
714
|
-
<span class='line'>707</span>
|
715
|
-
<span class='line'>708</span>
|
716
|
-
<span class='line'>709</span>
|
717
|
-
<span class='line'>710</span> </span><span class="
|
718
|
-
<span class='line'>711</span>
|
719
|
-
<span class='line'>712</span> </span><span class="PUNC">
|
579
|
+
<span class='line'>572</span> </span><span class="NAME">_belongsToAssociations</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
580
|
+
<span class='line'>573</span> </span><span class="NAME">belongsTo</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
581
|
+
<span class='line'>574</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
582
|
+
<span class='line'>575</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">;</span><span class="WHIT">
|
583
|
+
<span class='line'>576</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">Object.isString</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
584
|
+
<span class='line'>577</span> </span><span class="NAME">associationName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
585
|
+
<span class='line'>578</span> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
586
|
+
<span class='line'>579</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
587
|
+
<span class='line'>580</span> </span><span class="NAME">associationName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">;</span><span class="WHIT">
|
588
|
+
<span class='line'>581</span> </span><span class="PUNC">}</span><span class="WHIT">
|
589
|
+
<span class='line'>582</span> </span><span class="NAME">options.className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.className</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">associationName.classize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
590
|
+
<span class='line'>583</span> </span><span class="NAME">options.foreignKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.foreignKey</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"Id"</span><span class="PUNC">;</span><span class="WHIT">
|
591
|
+
<span class='line'>584</span>
|
592
|
+
<span class='line'>585</span> </span><span class="NAME">this._belongsToAssociations</span><span class="PUNC">[</span><span class="NAME">associationName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">;</span><span class="WHIT">
|
593
|
+
<span class='line'>586</span>
|
594
|
+
<span class='line'>587</span> </span><span class="NAME">this.attrAccessor</span><span class="PUNC">(</span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
595
|
+
<span class='line'>588</span> </span><span class="NAME">this.clientOnlyAttr</span><span class="PUNC">(</span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
596
|
+
<span class='line'>589</span>
|
597
|
+
<span class='line'>590</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">getName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="STRN">"get-"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
598
|
+
<span class='line'>591</span>
|
599
|
+
<span class='line'>592</span> </span><span class="NAME">this.prototype</span><span class="PUNC">[</span><span class="NAME">getName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.prototype</span><span class="PUNC">[</span><span class="NAME">getName</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">wrap</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">proceed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
600
|
+
<span class='line'>593</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
601
|
+
<span class='line'>594</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">setAssociation</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
602
|
+
<span class='line'>595</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">associationId</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">options.foreignKey</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
603
|
+
<span class='line'>596</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">foundValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">find</span><span class="PUNC">(</span><span class="NAME">associationId</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
604
|
+
<span class='line'>597</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT">
|
605
|
+
<span class='line'>598</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
606
|
+
<span class='line'>599</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="PUNC">(</span><span class="STRN">"set-"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">foundValue</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
607
|
+
<span class='line'>600</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
608
|
+
<span class='line'>601</span> </span><span class="NAME">setAssociation</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
609
|
+
<span class='line'>602</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">options.foreignKey</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="NAME">setAssociation</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
610
|
+
<span class='line'>603</span> </span><span class="PUNC">}</span><span class="WHIT">
|
611
|
+
<span class='line'>604</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">proceed.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
612
|
+
<span class='line'>605</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
613
|
+
<span class='line'>606</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
614
|
+
<span class='line'>607</span>
|
615
|
+
<span class='line'>608</span> </span><span class="NAME">_parametersFromJsonParameters</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">params</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
616
|
+
<span class='line'>609</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">rio.Parameters</span><span class="PUNC">(</span><span class="WHIT">
|
617
|
+
<span class='line'>610</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">params</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">inject</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">acc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
618
|
+
<span class='line'>611</span> </span><span class="NAME">acc</span><span class="PUNC">[</span><span class="NAME">p.camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params</span><span class="PUNC">[</span><span class="NAME">p</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
619
|
+
<span class='line'>612</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">acc</span><span class="PUNC">;</span><span class="WHIT">
|
620
|
+
<span class='line'>613</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="WHIT">
|
621
|
+
<span class='line'>614</span> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
622
|
+
<span class='line'>615</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
623
|
+
<span class='line'>616</span>
|
624
|
+
<span class='line'>617</span> </span><span class="NAME">_processIncludedCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
625
|
+
<span class='line'>618</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">=</span><span class="NAME">json.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
626
|
+
<span class='line'>619</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">include</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">json</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
627
|
+
<span class='line'>620</span> </span><span class="NAME">params</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._parametersFromJsonParameters</span><span class="PUNC">(</span><span class="NAME">include.parameters</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
628
|
+
<span class='line'>621</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">include.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">url</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
629
|
+
<span class='line'>622</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"#"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">params.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
630
|
+
<span class='line'>623</span> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">include.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">_collectionEntityFromJson</span><span class="PUNC">(</span><span class="NAME">include.json</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">params</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
631
|
+
<span class='line'>624</span> </span><span class="PUNC">}</span><span class="WHIT">
|
632
|
+
<span class='line'>625</span> </span><span class="PUNC">}</span><span class="WHIT">
|
633
|
+
<span class='line'>626</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
634
|
+
<span class='line'>627</span>
|
635
|
+
<span class='line'>628</span> </span><span class="NAME">_filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
636
|
+
<span class='line'>629</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">inJson._set</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
637
|
+
<span class='line'>630</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ceFunction</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
638
|
+
<span class='line'>631</span> </span><span class="NAME">model._processIncludedCollectionEntities</span><span class="PUNC">(</span><span class="NAME">inJson._set.include</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
639
|
+
<span class='line'>632</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
640
|
+
<span class='line'>633</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">rio.Model.filterJson</span><span class="PUNC">(</span><span class="NAME">inJson._set.self</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ceFunction</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
641
|
+
<span class='line'>634</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
642
|
+
<span class='line'>635</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">rio.Model.filterJson</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
643
|
+
<span class='line'>636</span> </span><span class="PUNC">}</span><span class="WHIT">
|
644
|
+
<span class='line'>637</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
645
|
+
<span class='line'>638</span>
|
646
|
+
<span class='line'>639</span> </span><span class="NAME">_filterAndProcessJson</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
647
|
+
<span class='line'>640</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
648
|
+
<span class='line'>641</span> </span><span class="NAME">results</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
649
|
+
<span class='line'>642</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
650
|
+
<span class='line'>643</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
651
|
+
<span class='line'>644</span>
|
652
|
+
<span class='line'>645</span> </span><span class="NAME">_collectionEntityFromJson</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
653
|
+
<span class='line'>646</span> </span><span class="COMM">// In case multiple identical queries were made simultaneously</span><span class="WHIT">
|
654
|
+
<span class='line'>647</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"#"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
655
|
+
<span class='line'>648</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"#"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
656
|
+
<span class='line'>649</span> </span><span class="PUNC">}</span><span class="WHIT">
|
657
|
+
<span class='line'>650</span>
|
658
|
+
<span class='line'>651</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">json.map</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
659
|
+
<span class='line'>652</span> </span><span class="COMM">// This may cause bugs. It should map the results of _filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="WHIT">
|
660
|
+
<span class='line'>653</span> </span><span class="COMM">// and execute them after them map to prevent reification collisions</span><span class="WHIT">
|
661
|
+
<span class='line'>654</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">modelJson</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._filterAndProcessJson</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
662
|
+
<span class='line'>655</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">modelJson.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
663
|
+
<span class='line'>656</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fromCache</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
664
|
+
<span class='line'>657</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="PUNC">;</span><span class="WHIT">
|
665
|
+
<span class='line'>658</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
666
|
+
<span class='line'>659</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">lazyNew</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
667
|
+
<span class='line'>660</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">modelJson.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
668
|
+
<span class='line'>661</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fromCache</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
669
|
+
<span class='line'>662</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">(</span><span class="NAME">modelJson</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
670
|
+
<span class='line'>663</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
671
|
+
<span class='line'>664</span> </span><span class="NAME">lazyNew.__lazyNew</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
672
|
+
<span class='line'>665</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">lazyNew</span><span class="PUNC">;</span><span class="WHIT">
|
673
|
+
<span class='line'>666</span> </span><span class="PUNC">}</span><span class="WHIT">
|
674
|
+
<span class='line'>667</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
675
|
+
<span class='line'>668</span>
|
676
|
+
<span class='line'>669</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.CollectionEntity.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
677
|
+
<span class='line'>670</span> </span><span class="NAME">model</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT">
|
678
|
+
<span class='line'>671</span> </span><span class="NAME">values</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">,</span><span class="WHIT">
|
679
|
+
<span class='line'>672</span> </span><span class="NAME">condition</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">parameters.conditionFunction</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT">
|
680
|
+
<span class='line'>673</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
681
|
+
<span class='line'>674</span> </span><span class="NAME">collectionEntity.prepare</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
682
|
+
<span class='line'>675</span> </span><span class="NAME">collectionEntity.prepare</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">;</span><span class="WHIT">
|
683
|
+
<span class='line'>676</span> </span><span class="COMM">// prevent the initialization from double adding the entities</span><span class="WHIT">
|
684
|
+
<span class='line'>677</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">oldAdd</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.add</span><span class="PUNC">;</span><span class="WHIT">
|
685
|
+
<span class='line'>678</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
686
|
+
<span class='line'>679</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
687
|
+
<span class='line'>680</span> </span><span class="NAME">this.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">;</span><span class="WHIT">
|
688
|
+
<span class='line'>681</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">timesToLoop</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.length</span><span class="PUNC">;</span><span class="WHIT">
|
689
|
+
<span class='line'>682</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">toRemove</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
690
|
+
<span class='line'>683</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="PUNC">=</span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC"><</span><span class="NAME">timesToLoop</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
691
|
+
<span class='line'>684</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">__lazyNew</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
692
|
+
<span class='line'>685</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">modelInstance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
693
|
+
<span class='line'>686</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.include</span><span class="PUNC">(</span><span class="NAME">modelInstance</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
694
|
+
<span class='line'>687</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">modelInstance</span><span class="PUNC">;</span><span class="WHIT">
|
695
|
+
<span class='line'>688</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
696
|
+
<span class='line'>689</span> </span><span class="NAME">toRemove.push</span><span class="PUNC">(</span><span class="NAME">i</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
697
|
+
<span class='line'>690</span> </span><span class="PUNC">}</span><span class="WHIT">
|
698
|
+
<span class='line'>691</span> </span><span class="PUNC">}</span><span class="WHIT">
|
699
|
+
<span class='line'>692</span> </span><span class="PUNC">}</span><span class="WHIT">
|
700
|
+
<span class='line'>693</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="PUNC">=</span><span class="NAME">toRemove.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
701
|
+
<span class='line'>694</span> </span><span class="NAME">this.splice</span><span class="PUNC">(</span><span class="NAME">toRemove</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
702
|
+
<span class='line'>695</span> </span><span class="PUNC">}</span><span class="WHIT">
|
703
|
+
<span class='line'>696</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">finally</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
704
|
+
<span class='line'>697</span> </span><span class="NAME">this.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">oldAdd</span><span class="PUNC">;</span><span class="WHIT">
|
705
|
+
<span class='line'>698</span> </span><span class="PUNC">}</span><span class="WHIT">
|
706
|
+
<span class='line'>699</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
707
|
+
<span class='line'>700</span> </span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
708
|
+
<span class='line'>701</span> </span><span class="COMM">// Ultimately we shouldn't need to do this</span><span class="WHIT">
|
709
|
+
<span class='line'>702</span> </span><span class="COMM">// This is required if when parsing eager loaded json collections</span><span class="WHIT">
|
710
|
+
<span class='line'>703</span> </span><span class="COMM">// contain individual entities that need to be added to other collection entities</span><span class="WHIT">
|
711
|
+
<span class='line'>704</span> </span><span class="COMM">// and the entity representing the eager collection is never loaded, hence prepared.</span><span class="WHIT">
|
712
|
+
<span class='line'>705</span> </span><span class="NAME">collectionEntity.prepare</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
713
|
+
<span class='line'>706</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">defer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
714
|
+
<span class='line'>707</span> </span><span class="NAME">this.putCollectionEntity</span><span class="PUNC">(</span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"#"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
715
|
+
<span class='line'>708</span>
|
716
|
+
<span class='line'>709</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">;</span><span class="WHIT">
|
717
|
+
<span class='line'>710</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
718
|
+
<span class='line'>711</span>
|
719
|
+
<span class='line'>712</span> </span><span class="NAME">_clientOnlyAttrs</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
720
720
|
<span class='line'>713</span>
|
721
|
-
<span class='line'>714</span> </span><span class="NAME">
|
722
|
-
<span class='line'>715</span>
|
723
|
-
<span class='line'>716</span> </span><span class="
|
724
|
-
<span class='line'>717</span>
|
725
|
-
<span class='line'>718</span>
|
726
|
-
<span class='line'>719</span>
|
727
|
-
<span class='line'>720</span>
|
728
|
-
<span class='line'>721</span>
|
729
|
-
<span class='line'>722</span> </span><span class="KEYW">
|
730
|
-
<span class='line'>723</span>
|
731
|
-
<span class='line'>724</span>
|
732
|
-
<span class='line'>725</span>
|
733
|
-
<span class='line'>726</span> </span><span class="NAME">
|
734
|
-
<span class='line'>727</span> </span><span class="NAME">this.
|
735
|
-
<span class='line'>728</span>
|
736
|
-
<span class='line'>729</span>
|
737
|
-
<span class='line'>730</span>
|
738
|
-
<span class='line'>731</span> </span><span class="
|
739
|
-
<span class='line'>732</span>
|
740
|
-
<span class='line'>733</span>
|
741
|
-
<span class='line'>734</span>
|
742
|
-
<span class='line'>735</span>
|
743
|
-
<span class='line'>736</span>
|
744
|
-
<span class='line'>737</span>
|
745
|
-
<span class='line'>738</span>
|
746
|
-
<span class='line'>739</span>
|
747
|
-
<span class='line'>740</span> </span><span class="NAME">
|
748
|
-
<span class='line'>741</span> </span><span class="
|
749
|
-
<span class='line'>742</span>
|
750
|
-
<span class='line'>743</span>
|
751
|
-
<span class='line'>744</span>
|
752
|
-
<span class='line'>745</span>
|
753
|
-
<span class='line'>746</span>
|
754
|
-
<span class='line'>747</span>
|
755
|
-
<span class='line'>748</span> </span><span class="
|
756
|
-
<span class='line'>749</span>
|
757
|
-
<span class='line'>750</span>
|
758
|
-
<span class='line'>751</span>
|
759
|
-
<span class='line'>752</span>
|
760
|
-
<span class='line'>753</span>
|
761
|
-
<span class='line'>754</span>
|
762
|
-
<span class='line'>755</span> </span><span class="
|
763
|
-
<span class='line'>756</span>
|
764
|
-
<span class='line'>757</span>
|
765
|
-
<span class='line'>758</span> </span><span class="PUNC">
|
766
|
-
<span class='line'>759</span>
|
767
|
-
<span class='line'>760</span>
|
768
|
-
<span class='line'>761</span>
|
769
|
-
<span class='line'>762</span>
|
770
|
-
<span class='line'>763</span>
|
771
|
-
<span class='line'>764</span> </span><span class="
|
721
|
+
<span class='line'>714</span> </span><span class="NAME">clientOnlyAttr</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">attrName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
722
|
+
<span class='line'>715</span> </span><span class="NAME">this._clientOnlyAttrs.push</span><span class="PUNC">(</span><span class="NAME">attrName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
723
|
+
<span class='line'>716</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
724
|
+
<span class='line'>717</span>
|
725
|
+
<span class='line'>718</span> </span><span class="NAME">_identityCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
726
|
+
<span class='line'>719</span>
|
727
|
+
<span class='line'>720</span> </span><span class="NAME">getFromCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
728
|
+
<span class='line'>721</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">id</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
729
|
+
<span class='line'>722</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">id.cacheKey</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
730
|
+
<span class='line'>723</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
731
|
+
<span class='line'>724</span>
|
732
|
+
<span class='line'>725</span> </span><span class="NAME">putInCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
733
|
+
<span class='line'>726</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cacheKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">;</span><span class="WHIT">
|
734
|
+
<span class='line'>727</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">cacheKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
735
|
+
<span class='line'>728</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
736
|
+
<span class='line'>729</span> </span><span class="PUNC">}</span><span class="WHIT">
|
737
|
+
<span class='line'>730</span> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">cacheKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
|
738
|
+
<span class='line'>731</span> </span><span class="NAME">this.addToCollectionEntities</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
739
|
+
<span class='line'>732</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
740
|
+
<span class='line'>733</span>
|
741
|
+
<span class='line'>734</span> </span><span class="NAME">removeFromCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
742
|
+
<span class='line'>735</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cacheKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">;</span><span class="WHIT">
|
743
|
+
<span class='line'>736</span> </span><span class="KEYW">delete</span><span class="WHIT"> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">cacheKey</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
744
|
+
<span class='line'>737</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
745
|
+
<span class='line'>738</span>
|
746
|
+
<span class='line'>739</span> </span><span class="NAME">_collectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
747
|
+
<span class='line'>740</span> </span><span class="NAME">putCollectionEntity</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">key</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
748
|
+
<span class='line'>741</span> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</span><span class="NAME">key</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
|
749
|
+
<span class='line'>742</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
750
|
+
<span class='line'>743</span>
|
751
|
+
<span class='line'>744</span> </span><span class="NAME">addToCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
752
|
+
<span class='line'>745</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">;</span><span class="WHIT">
|
753
|
+
<span class='line'>746</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">key</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
754
|
+
<span class='line'>747</span> </span><span class="NAME">ces</span><span class="PUNC">[</span><span class="NAME">key</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">add</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
755
|
+
<span class='line'>748</span> </span><span class="PUNC">}</span><span class="WHIT">
|
756
|
+
<span class='line'>749</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
757
|
+
<span class='line'>750</span>
|
758
|
+
<span class='line'>751</span> </span><span class="NAME">updateInCollectionEntites</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
759
|
+
<span class='line'>752</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">;</span><span class="WHIT">
|
760
|
+
<span class='line'>753</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">key</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
761
|
+
<span class='line'>754</span> </span><span class="NAME">ces</span><span class="PUNC">[</span><span class="NAME">key</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">update</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
762
|
+
<span class='line'>755</span> </span><span class="PUNC">}</span><span class="WHIT">
|
763
|
+
<span class='line'>756</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
764
|
+
<span class='line'>757</span>
|
765
|
+
<span class='line'>758</span> </span><span class="NAME">removeFromCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
766
|
+
<span class='line'>759</span> </span><span class="NAME">Object.values</span><span class="PUNC">(</span><span class="NAME">this._collectionEntities</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">collectionEntity</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
767
|
+
<span class='line'>760</span> </span><span class="NAME">collectionEntity.remove</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
768
|
+
<span class='line'>761</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
769
|
+
<span class='line'>762</span> </span><span class="PUNC">}</span><span class="WHIT">
|
770
|
+
<span class='line'>763</span>
|
771
|
+
<span class='line'>764</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
772
772
|
<span class='line'>765</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
773
|
-
<span class='line'>766</span>
|
774
|
-
<span class='line'>767</span> </span><span class="NAME">
|
775
|
-
<span class='line'>768</span> </span><span class="
|
776
|
-
<span class='line'>769</span>
|
777
|
-
<span class='line'>770</span>
|
778
|
-
<span class='line'>771</span>
|
779
|
-
<span class='line'>772</span>
|
780
|
-
<span class='line'>773</span>
|
781
|
-
<span class='line'>774</span>
|
782
|
-
<span class='line'>775</span>
|
783
|
-
<span class='line'>776</span> </span><span class="PUNC">
|
784
|
-
<span class='line'>777</span>
|
785
|
-
<span class='line'>778</span>
|
786
|
-
<span class='line'>779</span> </span><span class="NAME">
|
787
|
-
<span class='line'>780</span>
|
788
|
-
<span class='line'>781</span>
|
789
|
-
<span class='line'>782</span>
|
790
|
-
<span class='line'>783</span> </span><span class="NAME">
|
791
|
-
<span class='line'>784</span>
|
792
|
-
<span class='line'>785</span>
|
793
|
-
<span class='line'>786</span> </span><span class="PUNC">
|
794
|
-
<span class='line'>787</span>
|
795
|
-
<span class='line'>788</span>
|
796
|
-
<span class='line'>789</span>
|
797
|
-
<span class='line'>790</span>
|
798
|
-
<span class='line'>791</span> </span><span class="
|
799
|
-
<span class='line'>792</span> </span><span class="PUNC">}</span><span class="WHIT">
|
800
|
-
<span class='line'>793</span>
|
801
|
-
<span class='line'>794</span>
|
802
|
-
<span class='line'>795</span>
|
803
|
-
<span class='line'>796</span> </span><span class="
|
804
|
-
<span class='line'>797</span>
|
805
|
-
<span class='line'>798</span>
|
806
|
-
<span class='line'>799</span>
|
807
|
-
<span class='line'>800</span>
|
808
|
-
<span class='line'>801</span>
|
809
|
-
<span class='line'>802</span>
|
810
|
-
<span class='line'>803</span>
|
811
|
-
<span class='line'>804</span>
|
812
|
-
<span class='line'>805</span>
|
813
|
-
<span class='line'>806</span>
|
814
|
-
<span class='line'>807</span>
|
815
|
-
<span class='line'>808</span>
|
816
|
-
<span class='line'>809</span> </span><span class="
|
817
|
-
<span class='line'>810</span>
|
818
|
-
<span class='line'>811</span>
|
819
|
-
<span class='line'>812</span>
|
820
|
-
<span class='line'>813</span> </span><span class="KEYW">
|
821
|
-
<span class='line'>814</span>
|
822
|
-
<span class='line'>815</span>
|
823
|
-
<span class='line'>816</span>
|
824
|
-
<span class='line'>817</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.
|
825
|
-
<span class='line'>818</span> </span><span class="NAME">
|
826
|
-
<span class='line'>819</span>
|
827
|
-
<span class='line'>820</span>
|
828
|
-
<span class='line'>821</span> </span><span class="PUNC">
|
829
|
-
<span class='line'>822</span>
|
830
|
-
<span class='line'>823</span>
|
831
|
-
<span class='line'>824</span> </span><span class="
|
832
|
-
<span class='line'>825</span>
|
833
|
-
<span class='line'>826</span>
|
834
|
-
<span class='line'>827</span> </span><span class="PUNC">
|
835
|
-
<span class='line'>828</span>
|
836
|
-
<span class='line'>829</span>
|
837
|
-
<span class='line'>830</span> </span><span class="
|
838
|
-
<span class='line'>831</span> </span><span class="PUNC">}</span><span class="
|
773
|
+
<span class='line'>766</span>
|
774
|
+
<span class='line'>767</span> </span><span class="NAME">hasChannel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
775
|
+
<span class='line'>768</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
776
|
+
<span class='line'>769</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
777
|
+
<span class='line'>770</span>
|
778
|
+
<span class='line'>771</span> </span><span class="NAME">channel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
779
|
+
<span class='line'>772</span> </span><span class="NAME">model.addMethods</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
780
|
+
<span class='line'>773</span> </span><span class="NAME">broadcast</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
781
|
+
<span class='line'>774</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">args</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
782
|
+
<span class='line'>775</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args.shift</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
783
|
+
<span class='line'>776</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">body</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
784
|
+
<span class='line'>777</span> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
785
|
+
<span class='line'>778</span> </span><span class="NAME">method</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="PUNC">,</span><span class="WHIT">
|
786
|
+
<span class='line'>779</span> </span><span class="NAME">args</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">args</span><span class="WHIT">
|
787
|
+
<span class='line'>780</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
788
|
+
<span class='line'>781</span>
|
789
|
+
<span class='line'>782</span> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Ajax.Request</span><span class="PUNC">(</span><span class="STRN">"/push/broadcast"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
790
|
+
<span class='line'>783</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
|
791
|
+
<span class='line'>784</span> </span><span class="NAME">method</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"get"</span><span class="PUNC">,</span><span class="WHIT">
|
792
|
+
<span class='line'>785</span> </span><span class="NAME">evalJSON</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
|
793
|
+
<span class='line'>786</span> </span><span class="NAME">evalJS</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
|
794
|
+
<span class='line'>787</span> </span><span class="NAME">parameters</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
795
|
+
<span class='line'>788</span> </span><span class="NAME">channel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.channelName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
796
|
+
<span class='line'>789</span> </span><span class="NAME">message</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">body</span><span class="PUNC">)</span><span class="WHIT">
|
797
|
+
<span class='line'>790</span> </span><span class="PUNC">}</span><span class="WHIT">
|
798
|
+
<span class='line'>791</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
799
|
+
<span class='line'>792</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
800
|
+
<span class='line'>793</span>
|
801
|
+
<span class='line'>794</span> </span><span class="NAME">channelName</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
802
|
+
<span class='line'>795</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">model</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"."</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
803
|
+
<span class='line'>796</span> </span><span class="PUNC">}</span><span class="WHIT">
|
804
|
+
<span class='line'>797</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
805
|
+
<span class='line'>798</span>
|
806
|
+
<span class='line'>799</span> </span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
807
|
+
<span class='line'>800</span> </span><span class="NAME">hasChannel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
808
|
+
<span class='line'>801</span>
|
809
|
+
<span class='line'>802</span> </span><span class="NAME">receiveBroadcast</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
810
|
+
<span class='line'>803</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">instance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
811
|
+
<span class='line'>804</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">instance</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
812
|
+
<span class='line'>805</span> </span><span class="NAME">instance</span><span class="PUNC">[</span><span class="NAME">options.method</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">apply</span><span class="PUNC">(</span><span class="NAME">instance</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">options.args</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
813
|
+
<span class='line'>806</span> </span><span class="PUNC">}</span><span class="WHIT">
|
814
|
+
<span class='line'>807</span> </span><span class="PUNC">}</span><span class="WHIT">
|
815
|
+
<span class='line'>808</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
816
|
+
<span class='line'>809</span> </span><span class="PUNC">}</span><span class="WHIT">
|
817
|
+
<span class='line'>810</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
818
|
+
<span class='line'>811</span>
|
819
|
+
<span class='line'>812</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">args.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">args.last</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">args.last</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">ATTR</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
820
|
+
<span class='line'>813</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">initializers</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args.last</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
821
|
+
<span class='line'>814</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Object.isString</span><span class="PUNC">(</span><span class="NAME">initializers.resource</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
822
|
+
<span class='line'>815</span> </span><span class="NAME">model.resource</span><span class="PUNC">(</span><span class="NAME">initializers.resource</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
823
|
+
<span class='line'>816</span> </span><span class="PUNC">}</span><span class="WHIT">
|
824
|
+
<span class='line'>817</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.channel</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
825
|
+
<span class='line'>818</span> </span><span class="NAME">model.channel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
826
|
+
<span class='line'>819</span> </span><span class="PUNC">}</span><span class="WHIT">
|
827
|
+
<span class='line'>820</span>
|
828
|
+
<span class='line'>821</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.hasMany</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
829
|
+
<span class='line'>822</span> </span><span class="NAME">initializers.hasMany.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
830
|
+
<span class='line'>823</span> </span><span class="NAME">model.hasMany</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
831
|
+
<span class='line'>824</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
832
|
+
<span class='line'>825</span> </span><span class="PUNC">}</span><span class="WHIT">
|
833
|
+
<span class='line'>826</span>
|
834
|
+
<span class='line'>827</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.belongsTo</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
835
|
+
<span class='line'>828</span> </span><span class="NAME">initializers.belongsTo.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
836
|
+
<span class='line'>829</span> </span><span class="NAME">model.belongsTo</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
837
|
+
<span class='line'>830</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
838
|
+
<span class='line'>831</span> </span><span class="PUNC">}</span><span class="WHIT">
|
839
839
|
<span class='line'>832</span>
|
840
|
-
<span class='line'>833</span> </span><span class="
|
841
|
-
<span class='line'>834</span> </span><span class="NAME">model.
|
842
|
-
<span class='line'>835</span> </span><span class="PUNC">}</span><span class="WHIT">
|
840
|
+
<span class='line'>833</span> </span><span class="PUNC">(</span><span class="NAME">initializers.clientOnlyAttrs</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">clientOnlyAttr</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
841
|
+
<span class='line'>834</span> </span><span class="NAME">model.clientOnlyAttr</span><span class="PUNC">(</span><span class="NAME">clientOnlyAttr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
842
|
+
<span class='line'>835</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
843
843
|
<span class='line'>836</span>
|
844
|
-
<span class='line'>837</span> </span><span class="
|
845
|
-
<span class='line'>838</span>
|
846
|
-
<span class='line'>839</span>
|
847
|
-
<span class='line'>840</span>
|
848
|
-
<span class='line'>841</span>
|
849
|
-
<span class='line'>842</span>
|
850
|
-
<span class='line'>843</span>
|
851
|
-
<span class='line'>844</span>
|
852
|
-
<span class='line'>845</span>
|
853
|
-
<span class='line'>846</span>
|
854
|
-
<span class='line'>847</span>
|
855
|
-
<span class='line'>848</span>
|
856
|
-
<span class='line'>849</span>
|
857
|
-
<span class='line'>850</span>
|
858
|
-
<span class='line'>851</span>
|
859
|
-
<span class='line'>852</span>
|
860
|
-
<span class='line'>853</span>
|
861
|
-
<span class='line'>854</span>
|
862
|
-
<span class='line'>855</span>
|
863
|
-
<span class='line'>856</span>
|
864
|
-
<span class='line'>857</span>
|
865
|
-
<span class='line'>858</span>
|
866
|
-
<span class='line'>859</span>
|
867
|
-
<span class='line'>860</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">
|
868
|
-
<span class='line'>861</span>
|
869
|
-
<span class='line'>862</span>
|
870
|
-
<span class='line'>863</span>
|
871
|
-
<span class='line'>864</span>
|
872
|
-
<span class='line'>865</span> </span><span class="KEYW">
|
873
|
-
<span class='line'>866</span>
|
874
|
-
<span class='line'>867</span>
|
875
|
-
<span class='line'>868</span>
|
876
|
-
<span class='line'>869</span>
|
877
|
-
<span class='line'>870</span>
|
878
|
-
<span class='line'>871</span>
|
879
|
-
<span class='line'>872</span> </span><span class="
|
880
|
-
<span class='line'>873</span>
|
881
|
-
<span class='line'>874</span>
|
882
|
-
<span class='line'>875</span>
|
883
|
-
<span class='line'>876</span>
|
884
|
-
<span class='line'>877</span> </span><span class="
|
885
|
-
<span class='line'>878</span>
|
886
|
-
<span class='line'>879</span>
|
887
|
-
<span class='line'>880</span>
|
888
|
-
<span class='line'>881</span>
|
889
|
-
<span class='line'>882</span>
|
890
|
-
<span class='line'>883</span>
|
891
|
-
<span class='line'>884</span> </span><span class="
|
892
|
-
<span class='line'>885</span>
|
893
|
-
<span class='line'>886</span>
|
894
|
-
<span class='line'>887</span>
|
895
|
-
<span class='line'>888</span>
|
896
|
-
<span class='line'>889</span> </span><span class="
|
897
|
-
<span class='line'>890</span>
|
898
|
-
<span class='line'>891</span>
|
899
|
-
<span class='line'>892</span>
|
900
|
-
<span class='line'>893</span>
|
901
|
-
<span class='line'>894</span>
|
902
|
-
<span class='line'>895</span>
|
903
|
-
<span class='line'>896</span> </span><span class="
|
904
|
-
<span class='line'>897</span>
|
905
|
-
<span class='line'>898</span>
|
906
|
-
<span class='line'>899</span>
|
907
|
-
<span class='line'>900</span>
|
908
|
-
<span class='line'>901</span> </span><span class="
|
909
|
-
<span class='line'>902</span>
|
910
|
-
<span class='line'>903</span>
|
911
|
-
<span class='line'>904</span>
|
912
|
-
<span class='line'>905</span> </span><span class="
|
913
|
-
<span class='line'>906</span>
|
914
|
-
<span class='line'>907</span> </span><span class="PUNC">
|
915
|
-
<span class='line'>908</span>
|
916
|
-
<span class='line'>909</span> </span><span class="KEYW">
|
917
|
-
<span class='line'>910</span> </span><span class="
|
918
|
-
<span class='line'>911</span>
|
919
|
-
<span class='line'>912</span>
|
920
|
-
<span class='line'>913</span> </span><span class="
|
921
|
-
<span class='line'>914</span>
|
922
|
-
<span class='line'>915</span>
|
923
|
-
<span class='line'>916</span>
|
924
|
-
<span class='line'>917</span> </span><span class="
|
925
|
-
<span class='line'>918</span>
|
926
|
-
<span class='line'>919</span>
|
927
|
-
<span class='line'>920</span>
|
928
|
-
<span class='line'>921</span> </span><span class="PUNC">
|
929
|
-
<span class='line'>922</span>
|
930
|
-
<span class='line'>923</span> </span><span class="KEYW">
|
931
|
-
<span class='line'>924</span>
|
932
|
-
<span class='line'>925</span> </span><span class="
|
933
|
-
<span class='line'>926</span>
|
934
|
-
<span class='line'>927</span> </span><span class="KEYW">
|
935
|
-
<span class='line'>928</span>
|
936
|
-
<span class='line'>929</span>
|
937
|
-
<span class='line'>930</span>
|
938
|
-
<span class='line'>931</span>
|
939
|
-
<span class='line'>932</span> </span><span class="NAME">
|
940
|
-
<span class='line'>933</span>
|
941
|
-
<span class='line'>934</span>
|
942
|
-
<span class='line'>935</span>
|
943
|
-
<span class='line'>936</span> </span><span class="NAME">
|
944
|
-
<span class='line'>937</span>
|
945
|
-
<span class='line'>938</span>
|
946
|
-
<span class='line'>939</span> </span><span class="NAME">
|
947
|
-
<span class='line'>940</span>
|
948
|
-
<span class='line'>941</span>
|
949
|
-
<span class='line'>942</span> </span><span class="
|
950
|
-
<span class='line'>943</span>
|
951
|
-
<span class='line'>944</span> </span><span class="
|
952
|
-
<span class='line'>945</span>
|
953
|
-
<span class='line'>946</span>
|
954
|
-
<span class='line'>947</span>
|
955
|
-
<span class='line'>948</span> </span><span class="KEYW">
|
956
|
-
<span class='line'>949</span>
|
957
|
-
<span class='line'>950</span>
|
958
|
-
<span class='line'>951</span>
|
959
|
-
<span class='line'>952</span> </span><span class="KEYW">
|
960
|
-
<span class='line'>953</span>
|
961
|
-
<span class='line'>954</span>
|
962
|
-
<span class='line'>955</span>
|
963
|
-
<span class='line'>956</span>
|
964
|
-
<span class='line'>957</span>
|
965
|
-
<span class='line'>958</span>
|
966
|
-
<span class='line'>959</span> </span><span class="PUNC">
|
967
|
-
<span class='line'>960</span>
|
968
|
-
<span class='line'>961</span>
|
969
|
-
<span class='line'>962</span>
|
970
|
-
<span class='line'>963</span>
|
971
|
-
<span class='line'>964</span>
|
972
|
-
<span class='line'>965</span> </span><span class="
|
973
|
-
<span class='line'>966</span>
|
974
|
-
<span class='line'>967</span>
|
975
|
-
<span class='line'>968</span>
|
976
|
-
<span class='line'>969</span>
|
977
|
-
<span class='line'>970</span>
|
978
|
-
<span class='line'>971</span>
|
979
|
-
<span class='line'>972</span> </span><span class="KEYW">
|
980
|
-
<span class='line'>973</span>
|
981
|
-
<span class='line'>974</span>
|
982
|
-
<span class='line'>975</span>
|
983
|
-
<span class='line'>976</span>
|
984
|
-
<span class='line'>977</span>
|
985
|
-
<span class='line'>978</span> </span><span class="COMM">//
|
986
|
-
<span class='line'>979</span> </span><span class="
|
987
|
-
<span class='line'>980</span>
|
988
|
-
<span class='line'>981</span>
|
989
|
-
<span class='line'>982</span>
|
990
|
-
<span class='line'>983</span>
|
991
|
-
<span class='line'>984</span>
|
992
|
-
<span class='line'>985</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"
|
993
|
-
<span class='line'>986</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.
|
994
|
-
<span class='line'>987</span> </span><span class="
|
995
|
-
<span class='line'>988</span>
|
996
|
-
<span class='line'>989</span>
|
997
|
-
<span class='line'>990</span>
|
998
|
-
<span class='line'>991</span>
|
999
|
-
<span class='line'>992</span> </span><span class="
|
1000
|
-
<span class='line'>993</span>
|
1001
|
-
<span class='line'>994</span>
|
1002
|
-
<span class='line'>995</span>
|
1003
|
-
<span class='line'>996</span>
|
1004
|
-
<span class='line'>997</span> </span><span class="PUNC">
|
1005
|
-
<span class='line'>998</span>
|
1006
|
-
<span class='line'>999</span>
|
1007
|
-
<span class='line'>1000</span>
|
1008
|
-
<span class='line'>1001</span>
|
1009
|
-
<span class='line'>1002</span>
|
1010
|
-
<span class='line'>1003</span>
|
1011
|
-
<span class='line'>1004</span>
|
1012
|
-
<span class='line'>1005</span>
|
1013
|
-
<span class='line'>1006</span>
|
1014
|
-
<span class='line'>1007</span>
|
1015
|
-
<span class='line'>1008</span>
|
1016
|
-
<span class='line'>1009</span>
|
1017
|
-
<span class='line'>1010</span>
|
1018
|
-
<span class='line'>1011</span>
|
1019
|
-
<span class='line'>1012</span>
|
1020
|
-
<span class='line'>1013</span>
|
1021
|
-
<span class='line'>1014</span>
|
1022
|
-
<span class='line'>1015</span>
|
1023
|
-
<span class='line'>1016</span> </span><span class="NAME">
|
1024
|
-
<span class='line'>1017</span>
|
1025
|
-
<span class='line'>1018</span>
|
1026
|
-
<span class='line'>1019</span>
|
1027
|
-
<span class='line'>1020</span>
|
1028
|
-
<span class='line'>1021</span>
|
1029
|
-
<span class='line'>1022</span> </span><span class="
|
1030
|
-
<span class='line'>1023</span>
|
1031
|
-
<span class='line'>1024</span>
|
1032
|
-
<span class='line'>1025</span>
|
1033
|
-
<span class='line'>1026</span>
|
1034
|
-
<span class='line'>1027</span>
|
1035
|
-
<span class='line'>1028</span> </span><span class="
|
1036
|
-
<span class='line'>1029</span> </span><span class="
|
1037
|
-
<span class='line'>1030</span>
|
1038
|
-
<span class='line'>1031</span>
|
1039
|
-
<span class='line'>1032</span>
|
1040
|
-
<span class='line'>1033</span>
|
1041
|
-
<span class='line'>1034</span>
|
1042
|
-
<span class='line'>1035</span>
|
1043
|
-
<span class='line'>1036</span> </span><span class="PUNC">
|
1044
|
-
<span class='line'>1037</span>
|
1045
|
-
<span class='line'>1038</span>
|
1046
|
-
<span class='line'>1039</span>
|
1047
|
-
<span class='line'>1040</span> </span><span class="
|
1048
|
-
<span class='line'>1041</span>
|
1049
|
-
<span class='line'>1042</span> </span><span class="
|
1050
|
-
<span class='line'>1043</span>
|
1051
|
-
<span class='line'>1044</span>
|
1052
|
-
<span class='line'>1045</span> </span><span class="
|
1053
|
-
<span class='line'>1046</span>
|
1054
|
-
<span class='line'>1047</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1055
|
-
<span class='line'>1048</span> </span><span class="PUNC">}</span><span class="
|
1056
|
-
<span class='line'>1049</span>
|
1057
|
-
<span class='line'>1050</span>
|
1058
|
-
<span class='line'>1051</span> </span><span class="PUNC">
|
1059
|
-
<span class='line'>1052</span>
|
1060
|
-
<span class='line'>1053</span>
|
1061
|
-
<span class='line'>1054</span>
|
1062
|
-
<span class='line'>1055</span>
|
1063
|
-
<span class='line'>1056</span>
|
1064
|
-
<span class='line'>1057</span>
|
1065
|
-
<span class='line'>1058</span>
|
1066
|
-
<span class='line'>1059</span>
|
1067
|
-
<span class='line'>1060</span>
|
1068
|
-
<span class='line'>1061</span>
|
1069
|
-
<span class='line'>1062</span>
|
1070
|
-
<span class='line'>1063</span>
|
1071
|
-
<span class='line'>1064</span>
|
1072
|
-
<span class='line'>1065</span>
|
1073
|
-
<span class='line'>1066</span>
|
1074
|
-
<span class='line'>1067</span>
|
1075
|
-
<span class='line'>1068</span> </span><span class="PUNC">
|
844
|
+
<span class='line'>837</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.undoEnabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
845
|
+
<span class='line'>838</span> </span><span class="NAME">model.undoEnabled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
846
|
+
<span class='line'>839</span> </span><span class="PUNC">}</span><span class="WHIT">
|
847
|
+
<span class='line'>840</span>
|
848
|
+
<span class='line'>841</span> </span><span class="NAME">rio.Model.extend</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">initializers.methods</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
849
|
+
<span class='line'>842</span> </span><span class="PUNC">}</span><span class="WHIT">
|
850
|
+
<span class='line'>843</span>
|
851
|
+
<span class='line'>844</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">;</span><span class="WHIT">
|
852
|
+
<span class='line'>845</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
853
|
+
<span class='line'>846</span>
|
854
|
+
<span class='line'>847</span> </span><span class="NAME">_findAllRequests</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
855
|
+
<span class='line'>848</span> </span><span class="NAME">afterActiveQueries</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">fcn</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
856
|
+
<span class='line'>849</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
857
|
+
<span class='line'>850</span> </span><span class="NAME">this._findAllRequests.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">far</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
858
|
+
<span class='line'>851</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">far._complete</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
859
|
+
<span class='line'>852</span> </span><span class="NAME">count</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
860
|
+
<span class='line'>853</span> </span><span class="NAME">far.options.onComplete</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">far.options.onComplete</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">wrap</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">proceed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
861
|
+
<span class='line'>854</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ret</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">proceed</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
862
|
+
<span class='line'>855</span> </span><span class="NAME">count</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="WHIT">
|
863
|
+
<span class='line'>856</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">fcn</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
864
|
+
<span class='line'>857</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">ret</span><span class="PUNC">;</span><span class="WHIT">
|
865
|
+
<span class='line'>858</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
866
|
+
<span class='line'>859</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
867
|
+
<span class='line'>860</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">fcn</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
868
|
+
<span class='line'>861</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
869
|
+
<span class='line'>862</span>
|
870
|
+
<span class='line'>863</span> </span><span class="NAME">filterJson</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
871
|
+
<span class='line'>864</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">json.attributes</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">json.attributes</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
872
|
+
<span class='line'>865</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.includeRootInJson</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">Object.values</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">json</span><span class="PUNC">;</span><span class="WHIT">
|
873
|
+
<span class='line'>866</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
874
|
+
<span class='line'>867</span>
|
875
|
+
<span class='line'>868</span> </span><span class="NAME">remoteCreate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
876
|
+
<span class='line'>869</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
877
|
+
<span class='line'>870</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
878
|
+
<span class='line'>871</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteCreate</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
879
|
+
<span class='line'>872</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
880
|
+
<span class='line'>873</span> </span><span class="NAME">rio.Undo.registerUndo</span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
881
|
+
<span class='line'>874</span> </span><span class="PUNC">}</span><span class="WHIT">
|
882
|
+
<span class='line'>875</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
883
|
+
<span class='line'>876</span> </span><span class="NAME">rio.error</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Remote create error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
884
|
+
<span class='line'>877</span> </span><span class="PUNC">}</span><span class="WHIT">
|
885
|
+
<span class='line'>878</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
886
|
+
<span class='line'>879</span>
|
887
|
+
<span class='line'>880</span> </span><span class="NAME">remoteUpdate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
888
|
+
<span class='line'>881</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
889
|
+
<span class='line'>882</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
890
|
+
<span class='line'>883</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteUpdate</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
891
|
+
<span class='line'>884</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
892
|
+
<span class='line'>885</span> </span><span class="NAME">rio.Undo.registerUndo</span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
893
|
+
<span class='line'>886</span> </span><span class="PUNC">}</span><span class="WHIT">
|
894
|
+
<span class='line'>887</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
895
|
+
<span class='line'>888</span> </span><span class="NAME">rio.error</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Remote update error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
896
|
+
<span class='line'>889</span> </span><span class="PUNC">}</span><span class="WHIT">
|
897
|
+
<span class='line'>890</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
898
|
+
<span class='line'>891</span>
|
899
|
+
<span class='line'>892</span> </span><span class="NAME">remoteDestroy</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
900
|
+
<span class='line'>893</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
901
|
+
<span class='line'>894</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
902
|
+
<span class='line'>895</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteDestroy</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
903
|
+
<span class='line'>896</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
904
|
+
<span class='line'>897</span> </span><span class="NAME">rio.Undo.registerUndo</span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
905
|
+
<span class='line'>898</span> </span><span class="PUNC">}</span><span class="WHIT">
|
906
|
+
<span class='line'>899</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
907
|
+
<span class='line'>900</span> </span><span class="NAME">rio.error</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Remote destroy error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
908
|
+
<span class='line'>901</span> </span><span class="PUNC">}</span><span class="WHIT">
|
909
|
+
<span class='line'>902</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
910
|
+
<span class='line'>903</span>
|
911
|
+
<span class='line'>904</span> </span><span class="NAME">doRemoteCreate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
912
|
+
<span class='line'>905</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
913
|
+
<span class='line'>906</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
914
|
+
<span class='line'>907</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">fromCache</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
915
|
+
<span class='line'>908</span> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">(</span><span class="NAME">model._filterAndProcessJson</span><span class="PUNC">(</span><span class="NAME">options.json</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
916
|
+
<span class='line'>909</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
917
|
+
<span class='line'>910</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
918
|
+
<span class='line'>911</span> </span><span class="PUNC">}</span><span class="WHIT">
|
919
|
+
<span class='line'>912</span>
|
920
|
+
<span class='line'>913</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
921
|
+
<span class='line'>914</span> </span><span class="NAME">undoFunction</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">model.undoEnabled</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
922
|
+
<span class='line'>915</span> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">fromCache.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">destroy</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
923
|
+
<span class='line'>916</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT">
|
924
|
+
<span class='line'>917</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
925
|
+
<span class='line'>918</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
926
|
+
<span class='line'>919</span>
|
927
|
+
<span class='line'>920</span> </span><span class="NAME">doRemoteUpdate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
928
|
+
<span class='line'>921</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
929
|
+
<span class='line'>922</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">instance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
930
|
+
<span class='line'>923</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">instance</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
931
|
+
<span class='line'>924</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
932
|
+
<span class='line'>925</span> </span><span class="PUNC">}</span><span class="WHIT">
|
933
|
+
<span class='line'>926</span>
|
934
|
+
<span class='line'>927</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">json</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._filterAndProcessJson</span><span class="PUNC">(</span><span class="NAME">options.json</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
935
|
+
<span class='line'>928</span>
|
936
|
+
<span class='line'>929</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
937
|
+
<span class='line'>930</span>
|
938
|
+
<span class='line'>931</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">model.undoEnabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
939
|
+
<span class='line'>932</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">oldState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">instance.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
940
|
+
<span class='line'>933</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">processUndo</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
941
|
+
<span class='line'>934</span> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">instance.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateAttributes</span><span class="PUNC">(</span><span class="NAME">oldState</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
942
|
+
<span class='line'>935</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
943
|
+
<span class='line'>936</span> </span><span class="NAME">results.undoFunction</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">processUndo</span><span class="PUNC">;</span><span class="WHIT">
|
944
|
+
<span class='line'>937</span> </span><span class="PUNC">}</span><span class="WHIT">
|
945
|
+
<span class='line'>938</span>
|
946
|
+
<span class='line'>939</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">attributes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">without</span><span class="PUNC">(</span><span class="STRN">"id"</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">inject</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">acc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">k</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
947
|
+
<span class='line'>940</span> </span><span class="NAME">acc</span><span class="PUNC">[</span><span class="NAME">k.camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">json</span><span class="PUNC">[</span><span class="NAME">k</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
948
|
+
<span class='line'>941</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">acc</span><span class="PUNC">;</span><span class="WHIT">
|
949
|
+
<span class='line'>942</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
950
|
+
<span class='line'>943</span> </span><span class="NAME">instance.updateAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">skipSave</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
951
|
+
<span class='line'>944</span> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">updateInCollectionEntites</span><span class="PUNC">(</span><span class="NAME">instance</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
952
|
+
<span class='line'>945</span>
|
953
|
+
<span class='line'>946</span> </span><span class="NAME">instance._lastSavedState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">instance.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
954
|
+
<span class='line'>947</span>
|
955
|
+
<span class='line'>948</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
956
|
+
<span class='line'>949</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
957
|
+
<span class='line'>950</span>
|
958
|
+
<span class='line'>951</span> </span><span class="NAME">doRemoteDestroy</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
959
|
+
<span class='line'>952</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
960
|
+
<span class='line'>953</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
961
|
+
<span class='line'>954</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
962
|
+
<span class='line'>955</span>
|
963
|
+
<span class='line'>956</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fromCache</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
964
|
+
<span class='line'>957</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">model.undoEnabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
965
|
+
<span class='line'>958</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">oldState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">fromCache.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
966
|
+
<span class='line'>959</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">processUndo</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
967
|
+
<span class='line'>960</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">instance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">(</span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">fromCache.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">oldState</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
968
|
+
<span class='line'>961</span> </span><span class="NAME">instance._lastSavedState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
969
|
+
<span class='line'>962</span> </span><span class="NAME">instance.save</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
970
|
+
<span class='line'>963</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
971
|
+
<span class='line'>964</span> </span><span class="NAME">results.undoFunction</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">processUndo</span><span class="PUNC">;</span><span class="WHIT">
|
972
|
+
<span class='line'>965</span> </span><span class="PUNC">}</span><span class="WHIT">
|
973
|
+
<span class='line'>966</span>
|
974
|
+
<span class='line'>967</span> </span><span class="NAME">fromCache.removeFromCaches</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
975
|
+
<span class='line'>968</span>
|
976
|
+
<span class='line'>969</span> </span><span class="NAME">fromCache.fire</span><span class="PUNC">(</span><span class="STRN">"destroy"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
977
|
+
<span class='line'>970</span> </span><span class="PUNC">}</span><span class="WHIT">
|
978
|
+
<span class='line'>971</span>
|
979
|
+
<span class='line'>972</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
980
|
+
<span class='line'>973</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
981
|
+
<span class='line'>974</span>
|
982
|
+
<span class='line'>975</span> </span><span class="NAME">remoteTransaction</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">transactionData</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
983
|
+
<span class='line'>976</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">transactionData.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
984
|
+
<span class='line'>977</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
985
|
+
<span class='line'>978</span> </span><span class="COMM">// TODO: Two potential bugs here</span><span class="WHIT">
|
986
|
+
<span class='line'>979</span> </span><span class="COMM">//</span><span class="WHIT">
|
987
|
+
<span class='line'>980</span> </span><span class="COMM">// 1) Need to execute this in a rio.Attr.transaction</span><span class="WHIT">
|
988
|
+
<span class='line'>981</span> </span><span class="COMM">// 2) Need to get back the collection entity process functions from _filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="WHIT">
|
989
|
+
<span class='line'>982</span> </span><span class="COMM">// and run them at the end. Otherwise we might have reification collisions.</span><span class="WHIT">
|
990
|
+
<span class='line'>983</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">resultSets</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">transactionData.transaction.map</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
991
|
+
<span class='line'>984</span> </span><span class="KEYW">switch</span><span class="PUNC">(</span><span class="NAME">t.action</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
992
|
+
<span class='line'>985</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"create"</span><span class="PUNC">:</span><span class="WHIT">
|
993
|
+
<span class='line'>986</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteCreate</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
994
|
+
<span class='line'>987</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"update"</span><span class="PUNC">:</span><span class="WHIT">
|
995
|
+
<span class='line'>988</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteUpdate</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
996
|
+
<span class='line'>989</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"destroy"</span><span class="PUNC">:</span><span class="WHIT">
|
997
|
+
<span class='line'>990</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteDestroy</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
998
|
+
<span class='line'>991</span> </span><span class="PUNC">}</span><span class="WHIT">
|
999
|
+
<span class='line'>992</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1000
|
+
<span class='line'>993</span>
|
1001
|
+
<span class='line'>994</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">undos</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">resultSets.map</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">r.undoFunction</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">compact</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1002
|
+
<span class='line'>995</span>
|
1003
|
+
<span class='line'>996</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">undos.empty</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1004
|
+
<span class='line'>997</span> </span><span class="NAME">rio.Undo.registerUndo</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1005
|
+
<span class='line'>998</span> </span><span class="NAME">undos.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">undo</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1006
|
+
<span class='line'>999</span> </span><span class="NAME">undo</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1007
|
+
<span class='line'>1000</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1008
|
+
<span class='line'>1001</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1009
|
+
<span class='line'>1002</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1010
|
+
<span class='line'>1003</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1011
|
+
<span class='line'>1004</span> </span><span class="NAME">rio.error</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Remote transaction error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1012
|
+
<span class='line'>1005</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1013
|
+
<span class='line'>1006</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
1014
|
+
<span class='line'>1007</span>
|
1015
|
+
<span class='line'>1008</span> </span><span class="NAME">extend</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">extension</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1016
|
+
<span class='line'>1009</span>
|
1017
|
+
<span class='line'>1010</span> </span><span class="NAME">extension.__initialize</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">extension.initialize</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">;</span><span class="WHIT">
|
1018
|
+
<span class='line'>1011</span> </span><span class="NAME">extension.initialize</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1019
|
+
<span class='line'>1012</span> </span><span class="NAME">this.__model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">;</span><span class="WHIT">
|
1020
|
+
<span class='line'>1013</span>
|
1021
|
+
<span class='line'>1014</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1022
|
+
<span class='line'>1015</span> </span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1023
|
+
<span class='line'>1016</span> </span><span class="NAME">this._id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.id</span><span class="PUNC">;</span><span class="WHIT">
|
1024
|
+
<span class='line'>1017</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1025
|
+
<span class='line'>1018</span>
|
1026
|
+
<span class='line'>1019</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.id.constructor</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">rio.Id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1027
|
+
<span class='line'>1020</span> </span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1028
|
+
<span class='line'>1021</span> </span><span class="NAME">this.setId</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1029
|
+
<span class='line'>1022</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1030
|
+
<span class='line'>1023</span>
|
1031
|
+
<span class='line'>1024</span> </span><span class="COMM">// Set assiated id's from belongsTo associations</span><span class="WHIT">
|
1032
|
+
<span class='line'>1025</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">model._belongsToAssociations</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">belongsToName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1033
|
+
<span class='line'>1026</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">associationValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">[</span><span class="NAME">belongsToName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
1034
|
+
<span class='line'>1027</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">associationValue</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1035
|
+
<span class='line'>1028</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">belongsToOptions</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._belongsToAssociations</span><span class="PUNC">[</span><span class="NAME">belongsToName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
1036
|
+
<span class='line'>1029</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">belongsToOptions.foreignKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">associationValue.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1037
|
+
<span class='line'>1030</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1038
|
+
<span class='line'>1031</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1039
|
+
<span class='line'>1032</span>
|
1040
|
+
<span class='line'>1033</span> </span><span class="PUNC">(</span><span class="NAME">this.__initialize.bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1041
|
+
<span class='line'>1034</span>
|
1042
|
+
<span class='line'>1035</span> </span><span class="COMM">// Add the hasManyAssocitation#create methods</span><span class="WHIT">
|
1043
|
+
<span class='line'>1036</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">model._hasManyAssociations</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1044
|
+
<span class='line'>1037</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._hasManyAssociations</span><span class="PUNC">[</span><span class="NAME">hasManyName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
1045
|
+
<span class='line'>1038</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">hasManyName</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">create</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">createOptions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1046
|
+
<span class='line'>1039</span> </span><span class="COMM">// In the case that the entity is still new, we should preload the association</span><span class="WHIT">
|
1047
|
+
<span class='line'>1040</span> </span><span class="COMM">// to make sure no entries are missed</span><span class="WHIT">
|
1048
|
+
<span class='line'>1041</span> </span><span class="COMM">// TODO: before we can wrap in isNew, we need to make the spec fixture proxy include created entities</span><span class="WHIT">
|
1049
|
+
<span class='line'>1042</span> </span><span class="COMM">// if (this.isNew()) {</span><span class="WHIT">
|
1050
|
+
<span class='line'>1043</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="PUNC">(</span><span class="STRN">"get-"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1051
|
+
<span class='line'>1044</span> </span><span class="COMM">// }</span><span class="WHIT">
|
1052
|
+
<span class='line'>1045</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Object.clone</span><span class="PUNC">(</span><span class="NAME">options.parameters</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1053
|
+
<span class='line'>1046</span> </span><span class="NAME">parameters</span><span class="PUNC">[</span><span class="NAME">options.foreignKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1054
|
+
<span class='line'>1047</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">create</span><span class="PUNC">(</span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="NAME">createOptions</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1055
|
+
<span class='line'>1048</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1056
|
+
<span class='line'>1049</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1057
|
+
<span class='line'>1050</span>
|
1058
|
+
<span class='line'>1051</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">model.hasChannel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1059
|
+
<span class='line'>1052</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.push</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1060
|
+
<span class='line'>1053</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">addChannel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1061
|
+
<span class='line'>1054</span> </span><span class="NAME">rio.push.addChannel</span><span class="PUNC">(</span><span class="NAME">this.channelName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1062
|
+
<span class='line'>1055</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1063
|
+
<span class='line'>1056</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.id.temporary</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1064
|
+
<span class='line'>1057</span> </span><span class="NAME">options.id.doAfterReification</span><span class="PUNC">(</span><span class="NAME">addChannel</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1065
|
+
<span class='line'>1058</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1066
|
+
<span class='line'>1059</span> </span><span class="NAME">addChannel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1067
|
+
<span class='line'>1060</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1068
|
+
<span class='line'>1061</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1069
|
+
<span class='line'>1062</span> </span><span class="NAME">rio.warn</span><span class="PUNC">(</span><span class="STRN">"Attempted to add a channel without an available push server"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1070
|
+
<span class='line'>1063</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1071
|
+
<span class='line'>1064</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1072
|
+
<span class='line'>1065</span>
|
1073
|
+
<span class='line'>1066</span> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
1074
|
+
<span class='line'>1067</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1075
|
+
<span class='line'>1068</span> </span><span class="NAME">model.putInCache</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1076
|
+
<span class='line'>1069</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1077
|
+
<span class='line'>1070</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.id.temporary</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">options.id.temporary</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1078
|
+
<span class='line'>1071</span> </span><span class="NAME">this._lastSavedState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1079
|
+
<span class='line'>1072</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1080
|
+
<span class='line'>1073</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
1081
|
+
<span class='line'>1074</span>
|
1082
|
+
<span class='line'>1075</span> </span><span class="NAME">rio.Attr.extend</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">extension</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1083
|
+
<span class='line'>1076</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
1084
|
+
<span class='line'>1077</span>
|
1085
|
+
<span class='line'>1078</span> </span><span class="NAME">toString</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1086
|
+
<span class='line'>1079</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Model"</span><span class="PUNC">;</span><span class="WHIT">
|
1087
|
+
<span class='line'>1080</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1088
|
+
<span class='line'>1081</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|