@@ -4782,17 +4782,149 @@ public static <T> Observable<T> amb(Iterable<? extends Observable<? extends T>>
4782
4782
/**
4783
4783
* Invokes an action for each element in the observable sequence.
4784
4784
*
4785
- * @param func
4785
+ * @param observer
4786
4786
* The action to invoke for each element in the source sequence.
4787
4787
*
4788
4788
* @return
4789
4789
* The source sequence with the side-effecting behavior applied.
4790
- * @see <a href="http://msdn.microsoft.com/en-us/library/%3Cspan%20class="x x-first x-last">hh229115 (v=vs.103).aspx">MSDN: Observable.Amb </a>
4790
+ * @see <a href="http://msdn.microsoft.com/en-us/library/%3Cspan%20class="x x-first x-last">hh229307 (v=vs.103).aspx">MSDN: Observable.Do </a>
4791
4791
*/
4792
4792
public Observable <T > doOnEach (Observer <? super T > observer ) {
4793
4793
return create (OperationDoOnEach .doOnEach (this , observer ));
4794
4794
}
4795
4795
4796
+ /**
4797
+ * Invokes an action for each element in the observable sequence.
4798
+ *
4799
+ * @param onNext
4800
+ * The action to invoke for each element in the source sequence.
4801
+ *
4802
+ * @return
4803
+ * The source sequence with the side-effecting behavior applied.
4804
+ * @see <a href="http://msdn.microsoft.com/en-us/library/hh229804(v=vs.103).aspx">MSDN: Observable.Do</a>
4805
+ */
4806
+ public Observable <T > doOnEach (final Action1 <T > onNext ) {
4807
+ Observer <T > observer = new Observer <T >() {
4808
+ @ Override
4809
+ public void onCompleted () {}
4810
+
4811
+ @ Override
4812
+ public void onError (Throwable e ) {}
4813
+
4814
+ @ Override
4815
+ public void onNext (T args ) {
4816
+ onNext .call (args );
4817
+ }
4818
+
4819
+ };
4820
+
4821
+
4822
+ return create (OperationDoOnEach .doOnEach (this , observer ));
4823
+ }
4824
+
4825
+ /**
4826
+ * Invokes an action for each element in the observable sequence.
4827
+ *
4828
+ * @param onNext
4829
+ * The action to invoke for each element in the source sequence.
4830
+ * @param onCompleted
4831
+ * The action to invoke when the source sequence is completed.
4832
+ *
4833
+ * @return
4834
+ * The source sequence with the side-effecting behavior applied.
4835
+ * @see <a href="http://msdn.microsoft.com/en-us/library/hh229659(v=vs.103).aspx">MSDN: Observable.Do</a>
4836
+ */
4837
+ public Observable <T > doOnEach (final Action1 <T > onNext , final Action0 onCompleted ) {
4838
+ Observer <T > observer = new Observer <T >() {
4839
+ @ Override
4840
+ public void onCompleted () {
4841
+ onCompleted .call ();
4842
+ }
4843
+
4844
+ @ Override
4845
+ public void onError (Throwable e ) {}
4846
+
4847
+ @ Override
4848
+ public void onNext (T args ) {
4849
+ onNext .call (args );
4850
+ }
4851
+
4852
+ };
4853
+
4854
+
4855
+ return create (OperationDoOnEach .doOnEach (this , observer ));
4856
+ }
4857
+
4858
+ /**
4859
+ * Invokes an action for each element in the observable sequence.
4860
+ *
4861
+ * @param onNext
4862
+ * The action to invoke for each element in the source sequence.
4863
+ * @param onError
4864
+ * The action to invoke when the source sequence calls onError.
4865
+ *
4866
+ * @return
4867
+ * The source sequence with the side-effecting behavior applied.
4868
+ * @see <a href="http://msdn.microsoft.com/en-us/library/hh229539(v=vs.103).aspx">MSDN: Observable.Do</a>
4869
+ */
4870
+ public Observable <T > doOnEach (final Action1 <T > onNext , final Action1 <Throwable > onError ) {
4871
+ Observer <T > observer = new Observer <T >() {
4872
+ @ Override
4873
+ public void onCompleted () {}
4874
+
4875
+ @ Override
4876
+ public void onError (Throwable e ) {
4877
+ onError .call (e );
4878
+ }
4879
+
4880
+ @ Override
4881
+ public void onNext (T args ) {
4882
+ onNext .call (args );
4883
+ }
4884
+
4885
+ };
4886
+
4887
+
4888
+ return create (OperationDoOnEach .doOnEach (this , observer ));
4889
+ }
4890
+
4891
+
4892
+ /**
4893
+ * Invokes an action for each element in the observable sequence.
4894
+ *
4895
+ * @param onNext
4896
+ * The action to invoke for each element in the source sequence.
4897
+ * @param onError
4898
+ * The action to invoke when the source sequence calls onError.
4899
+ * @param onCompleted
4900
+ * The action to invoke when the source sequence is completed.
4901
+ *
4902
+ * @return
4903
+ * The source sequence with the side-effecting behavior applied.
4904
+ * @see <a href="http://msdn.microsoft.com/en-us/library/hh229830(v=vs.103).aspx">MSDN: Observable.Do</a>
4905
+ */
4906
+ public Observable <T > doOnEach (final Action1 <T > onNext , final Action1 <Throwable > onError , final Action0 onCompleted ) {
4907
+ Observer <T > observer = new Observer <T >() {
4908
+ @ Override
4909
+ public void onCompleted () {
4910
+ onCompleted .call ();
4911
+ }
4912
+
4913
+ @ Override
4914
+ public void onError (Throwable e ) {
4915
+ onError .call (e );
4916
+ }
4917
+
4918
+ @ Override
4919
+ public void onNext (T args ) {
4920
+ onNext .call (args );
4921
+ }
4922
+
4923
+ };
4924
+
4925
+
4926
+ return create (OperationDoOnEach .doOnEach (this , observer ));
4927
+ }
4796
4928
4797
4929
/**
4798
4930
* Whether a given {@link Function} is an internal implementation inside rx.* packages or not.
0 commit comments