|
26 | 26 | import java.util.concurrent.TimeUnit;
|
27 | 27 |
|
28 | 28 | import rx.concurrency.Schedulers;
|
| 29 | +import rx.joins.Pattern2; |
| 30 | +import rx.joins.Plan0; |
29 | 31 | import rx.observables.BlockingObservable;
|
30 | 32 | import rx.observables.ConnectableObservable;
|
31 | 33 | import rx.observables.GroupedObservable;
|
|
51 | 53 | import rx.operators.OperationFirstOrDefault;
|
52 | 54 | import rx.operators.OperationGroupBy;
|
53 | 55 | import rx.operators.OperationInterval;
|
| 56 | +import rx.operators.OperationJoinPatterns; |
54 | 57 | import rx.operators.OperationLast;
|
55 | 58 | import rx.operators.OperationMap;
|
56 | 59 | import rx.operators.OperationMaterialize;
|
@@ -5689,5 +5692,173 @@ private boolean isInternalImplementation(Object o) {
|
5689 | 5692 | return isInternal;
|
5690 | 5693 | }
|
5691 | 5694 | }
|
5692 |
| - |
| 5695 | + /** |
| 5696 | + * Creates a pattern that matches when both observable sequences have an available element. |
| 5697 | + * @param right Observable sequence to match with the left sequence. |
| 5698 | + * @return Pattern object that matches when both observable sequences have an available element. |
| 5699 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229153.aspx'>MSDN: Observable.And</a> |
| 5700 | + * @throws NullPointerException if right is null |
| 5701 | + */ |
| 5702 | + public <T2> Pattern2<T, T2> and(Observable<T2> right) { |
| 5703 | + return OperationJoinPatterns.and(this, right); |
| 5704 | + } |
| 5705 | + /** |
| 5706 | + * Matches when the observable sequence has an available element and projects the element by invoking the selector function. |
| 5707 | + * @param selector Selector that will be invoked for elements in the source sequence. |
| 5708 | + * @return Plan that produces the projected results, to be fed (with other plans) to the When operator. |
| 5709 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh211662.aspx'>MSDN: Observable.Then</a> |
| 5710 | + * @throws NullPointerException if selector is null |
| 5711 | + */ |
| 5712 | + public <R> Plan0<R> then(Func1<T, R> selector) { |
| 5713 | + return OperationJoinPatterns.then(this, selector); |
| 5714 | + } |
| 5715 | + /** |
| 5716 | + * Joins together the results from several patterns. |
| 5717 | + * @param plans A series of plans created by use of the Then operator on patterns. |
| 5718 | + * @return An observable sequence with the results from matching several patterns. |
| 5719 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5720 | + * @throws NullPointerException if plans is null |
| 5721 | + */ |
| 5722 | + public static <R> Observable<R> when(Plan0<R>... plans) { |
| 5723 | + return create(OperationJoinPatterns.when(plans)); |
| 5724 | + } |
| 5725 | + /** |
| 5726 | + * Joins together the results from several patterns. |
| 5727 | + * @param plans A series of plans created by use of the Then operator on patterns. |
| 5728 | + * @return An observable sequence with the results from matching several patterns. |
| 5729 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229558.aspx'>MSDN: Observable.When</a> |
| 5730 | + * @throws NullPointerException if plans is null |
| 5731 | + */ |
| 5732 | + public static <R> Observable<R> when(Iterable<? extends Plan0<R>> plans) { |
| 5733 | + if (plans == null) { |
| 5734 | + throw new NullPointerException("plans"); |
| 5735 | + } |
| 5736 | + return create(OperationJoinPatterns.when(plans)); |
| 5737 | + } |
| 5738 | + /** |
| 5739 | + * Joins the results from a pattern. |
| 5740 | + * @param p1 the plan to join |
| 5741 | + * @return An observable sequence with the results from matching a pattern |
| 5742 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5743 | + */ |
| 5744 | + @SuppressWarnings("unchecked") |
| 5745 | + public static <R> Observable<R> when(Plan0<R> p1) { |
| 5746 | + return create(OperationJoinPatterns.when(p1)); |
| 5747 | + } |
| 5748 | + /** |
| 5749 | + * Joins together the results from several patterns. |
| 5750 | + * @param p1 a plan |
| 5751 | + * @param p2 a plan |
| 5752 | + * @return An observable sequence with the results from matching several patterns |
| 5753 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5754 | + */ |
| 5755 | + @SuppressWarnings("unchecked") |
| 5756 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2) { |
| 5757 | + return create(OperationJoinPatterns.when(p1, p2)); |
| 5758 | + } |
| 5759 | + /** |
| 5760 | + * Joins together the results from several patterns. |
| 5761 | + * @param p1 a plan |
| 5762 | + * @param p2 a plan |
| 5763 | + * @param p3 a plan |
| 5764 | + * @return An observable sequence with the results from matching several patterns |
| 5765 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5766 | + */ |
| 5767 | + @SuppressWarnings("unchecked") |
| 5768 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2, Plan0<R> p3) { |
| 5769 | + return create(OperationJoinPatterns.when(p1, p2, p3)); |
| 5770 | + } |
| 5771 | + /** |
| 5772 | + * Joins together the results from several patterns. |
| 5773 | + * @param p1 a plan |
| 5774 | + * @param p2 a plan |
| 5775 | + * @param p3 a plan |
| 5776 | + * @param p4 a plan |
| 5777 | + * @return An observable sequence with the results from matching several patterns |
| 5778 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5779 | + */ |
| 5780 | + @SuppressWarnings("unchecked") |
| 5781 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2, Plan0<R> p3, Plan0<R> p4) { |
| 5782 | + return create(OperationJoinPatterns.when(p1, p2, p3, p4)); |
| 5783 | + } |
| 5784 | + /** |
| 5785 | + * Joins together the results from several patterns. |
| 5786 | + * @param p1 a plan |
| 5787 | + * @param p2 a plan |
| 5788 | + * @param p3 a plan |
| 5789 | + * @param p4 a plan |
| 5790 | + * @param p5 a plan |
| 5791 | + * @return An observable sequence with the results from matching several patterns |
| 5792 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5793 | + */ |
| 5794 | + @SuppressWarnings("unchecked") |
| 5795 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2, Plan0<R> p3, Plan0<R> p4, Plan0<R> p5) { |
| 5796 | + return create(OperationJoinPatterns.when(p1, p2, p3, p4, p5)); |
| 5797 | + } |
| 5798 | + /** |
| 5799 | + * Joins together the results from several patterns. |
| 5800 | + * @param p1 a plan |
| 5801 | + * @param p2 a plan |
| 5802 | + * @param p3 a plan |
| 5803 | + * @param p4 a plan |
| 5804 | + * @param p5 a plan |
| 5805 | + * @param p6 a plan |
| 5806 | + * @return An observable sequence with the results from matching several patterns |
| 5807 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5808 | + */ |
| 5809 | + @SuppressWarnings("unchecked") |
| 5810 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2, Plan0<R> p3, Plan0<R> p4, Plan0<R> p5, Plan0<R> p6) { |
| 5811 | + return create(OperationJoinPatterns.when(p1, p2, p3, p4, p5, p6)); |
| 5812 | + } |
| 5813 | + /** |
| 5814 | + * Joins together the results from several patterns. |
| 5815 | + * @param p1 a plan |
| 5816 | + * @param p2 a plan |
| 5817 | + * @param p3 a plan |
| 5818 | + * @param p4 a plan |
| 5819 | + * @param p5 a plan |
| 5820 | + * @param p6 a plan |
| 5821 | + * @param p7 a plan |
| 5822 | + * @return An observable sequence with the results from matching several patterns |
| 5823 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5824 | + */ |
| 5825 | + @SuppressWarnings("unchecked") |
| 5826 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2, Plan0<R> p3, Plan0<R> p4, Plan0<R> p5, Plan0<R> p6, Plan0<R> p7) { |
| 5827 | + return create(OperationJoinPatterns.when(p1, p2, p3, p4, p5, p6, p7)); |
| 5828 | + } |
| 5829 | + /** |
| 5830 | + * Joins together the results from several patterns. |
| 5831 | + * @param p1 a plan |
| 5832 | + * @param p2 a plan |
| 5833 | + * @param p3 a plan |
| 5834 | + * @param p4 a plan |
| 5835 | + * @param p5 a plan |
| 5836 | + * @param p6 a plan |
| 5837 | + * @param p7 a plan |
| 5838 | + * @param p8 a plan |
| 5839 | + * @return An observable sequence with the results from matching several patterns |
| 5840 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5841 | + */ |
| 5842 | + @SuppressWarnings("unchecked") |
| 5843 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2, Plan0<R> p3, Plan0<R> p4, Plan0<R> p5, Plan0<R> p6, Plan0<R> p7, Plan0<R> p8) { |
| 5844 | + return create(OperationJoinPatterns.when(p1, p2, p3, p4, p5, p6, p7, p8)); |
| 5845 | + } |
| 5846 | + /** |
| 5847 | + * Joins together the results from several patterns. |
| 5848 | + * @param p1 a plan |
| 5849 | + * @param p2 a plan |
| 5850 | + * @param p3 a plan |
| 5851 | + * @param p4 a plan |
| 5852 | + * @param p5 a plan |
| 5853 | + * @param p6 a plan |
| 5854 | + * @param p7 a plan |
| 5855 | + * @param p8 a plan |
| 5856 | + * @param p9 a plan |
| 5857 | + * @return An observable sequence with the results from matching several patterns |
| 5858 | + * @see <a href='http://msdn.microsoft.com/en-us/library/hh229889.aspx'>MSDN: Observable.When</a> |
| 5859 | + */ |
| 5860 | + @SuppressWarnings("unchecked") |
| 5861 | + public static <R> Observable<R> when(Plan0<R> p1, Plan0<R> p2, Plan0<R> p3, Plan0<R> p4, Plan0<R> p5, Plan0<R> p6, Plan0<R> p7, Plan0<R> p8, Plan0<R> p9) { |
| 5862 | + return create(OperationJoinPatterns.when(p1, p2, p3, p4, p5, p6, p7, p8, p9)); |
| 5863 | + } |
5693 | 5864 | }
|
0 commit comments