Skip to content

Commit 030da40

Browse files
committed
Add constructor collaborators and fix classes scope
1 parent 4f0bcdf commit 030da40

File tree

5 files changed

+28
-21
lines changed

5 files changed

+28
-21
lines changed

app/src/main/java/com/fernandocejas/android10/rx/sample/activity/ActivityObservableConcatVsFlatMapSample.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,16 @@
1919
import android.content.Intent;
2020
import android.os.Bundle;
2121
import android.util.Log;
22-
import android.widget.Button;
2322
import android.widget.TextView;
2423
import android.widget.Toast;
2524
import butterknife.ButterKnife;
2625
import butterknife.InjectView;
2726
import butterknife.OnClick;
2827
import com.fernandocejas.android10.rx.sample.R;
2928
import com.fernandocejas.android10.rx.sample.data.DataManager;
29+
import com.fernandocejas.android10.rx.sample.data.NumberGenerator;
30+
import com.fernandocejas.android10.rx.sample.data.RandomStringGenerator;
31+
import com.fernandocejas.android10.rx.sample.executor.JobExecutor;
3032
import rx.Observable;
3133
import rx.Observer;
3234
import rx.Subscription;
@@ -50,8 +52,6 @@ public class ActivityObservableConcatVsFlatMapSample extends BaseActivity {
5052
@InjectView(R.id.tv_streamOriginalOrder) TextView tv_streamOriginalOrder;
5153
@InjectView(R.id.tv_flatMapResult) TextView tv_flatMapResult;
5254
@InjectView(R.id.tv_concatMapResult) TextView tv_concatMapResult;
53-
@InjectView(R.id.btn_flatMap) Button btn_flatMap;
54-
@InjectView(R.id.btn_concatMap) Button btn_concatMap;
5555

5656
private DataManager dataManager;
5757
private Subscription subscription;
@@ -77,7 +77,8 @@ protected void onDestroy() {
7777
}
7878

7979
private void initialize() {
80-
this.dataManager = new DataManager();
80+
this.dataManager = new DataManager(new RandomStringGenerator(), new NumberGenerator(),
81+
JobExecutor.getInstance());
8182
this.subscription = Subscriptions.empty();
8283
}
8384

@@ -132,7 +133,7 @@ private void initialize() {
132133
}
133134

134135
private Observable<Integer> buildNumbersObservable() {
135-
return this.dataManager.getNumbers();
136+
return this.dataManager.numbers();
136137
}
137138

138139
private void showToast(String message) {
@@ -153,7 +154,7 @@ private void printConcatMapResult(String result) {
153154

154155
private void populateData() {
155156
StringBuilder stringBuilder = new StringBuilder(15);
156-
for (int number : dataManager.getNumbersSync()) {
157+
for (int number : dataManager.getNumbersSynchronously()) {
157158
stringBuilder.append(number);
158159
stringBuilder.append(SEPARATOR);
159160
}

app/src/main/java/com/fernandocejas/android10/rx/sample/activity/ActivitySubscriberSample.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@
2727
import com.fernandocejas.android10.rx.sample.R;
2828
import com.fernandocejas.android10.rx.sample.adapter.ElementsAdapter;
2929
import com.fernandocejas.android10.rx.sample.data.DataManager;
30+
import com.fernandocejas.android10.rx.sample.data.NumberGenerator;
31+
import com.fernandocejas.android10.rx.sample.data.RandomStringGenerator;
32+
import com.fernandocejas.android10.rx.sample.executor.JobExecutor;
3033
import rx.Subscription;
3134
import rx.subscriptions.Subscriptions;
3235

@@ -61,18 +64,19 @@ protected void onDestroy() {
6164

6265
private void initialize() {
6366
this.subscription = Subscriptions.empty();
64-
this.dataManager = new DataManager();
67+
this.dataManager = new DataManager(new RandomStringGenerator(), new NumberGenerator(),
68+
JobExecutor.getInstance());
6569
this.adapter = new ElementsAdapter(this);
6670
this.rv_elements.setLayoutManager(new LinearLayoutManager(this));
6771
this.rv_elements.setAdapter(this.adapter);
6872
}
6973

7074
private void fillData() {
71-
this.subscription = this.dataManager.getElements().subscribe(this.adapter);
75+
this.subscription = this.dataManager.elements().subscribe(this.adapter);
7276
}
7377

7478
@OnClick(android.R.id.button1) void onAddElementClick() {
75-
this.subscription = this.dataManager.getNewElement().subscribe(this.adapter);
79+
this.subscription = this.dataManager.newElement().subscribe(this.adapter);
7680
Toast.makeText(this, "Element added using an observable!!!", Toast.LENGTH_SHORT).show();
7781
}
7882
}

app/src/main/java/com/fernandocejas/android10/rx/sample/data/DataManager.java

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
*/
1616
package com.fernandocejas.android10.rx.sample.data;
1717

18-
import com.fernandocejas.android10.rx.sample.executor.JobExecutor;
1918
import java.util.ArrayList;
2019
import java.util.Arrays;
2120
import java.util.List;
@@ -28,7 +27,9 @@ public class DataManager {
2827

2928
private final List<Integer> numbers;
3029
private final List<String> elements;
30+
3131
private final RandomStringGenerator randomStringGenerator;
32+
private final NumberGenerator numberGenerator;
3233
private final Executor jobExecutor;
3334

3435
private static final Func1<String, String> RANDOM_ITEM_FUNCTION = new Func1<String, String>() {
@@ -37,32 +38,33 @@ public class DataManager {
3738
}
3839
};
3940

40-
public DataManager() {
41+
public DataManager(RandomStringGenerator randomStringGenerator, NumberGenerator numberGenerator,
42+
Executor jobExecutor) {
4143
this.numbers = new ArrayList<>(Arrays.asList(2, 3, 4, 5, 6, 7, 8, 9, 10));
4244
this.elements = new ArrayList<>();
43-
this.randomStringGenerator = new RandomStringGenerator();
44-
45+
this.randomStringGenerator = randomStringGenerator;
46+
this.numberGenerator = numberGenerator;
47+
this.jobExecutor = jobExecutor;
4548
populateUsernameList();
46-
jobExecutor = JobExecutor.getInstance();
4749
}
4850

49-
public Observable<Integer> getNumbers() {
51+
public Observable<Integer> numbers() {
5052
return Observable.from(numbers);
5153
}
5254

53-
public List<Integer> getNumbersSync() {
55+
public List<Integer> getNumbersSynchronously() {
5456
return this.numbers;
5557
}
5658

5759
public Observable<Integer> squareOfAsync(int number) {
5860
return Observable.just(number * number).subscribeOn(Schedulers.from(this.jobExecutor));
5961
}
6062

61-
public Observable<String> getElements() {
63+
public Observable<String> elements() {
6264
return Observable.from(elements);
6365
}
6466

65-
public Observable<String> getNewElement() {
67+
public Observable<String> newElement() {
6668
return Observable.just(randomStringGenerator.nextString()).map(RANDOM_ITEM_FUNCTION);
6769
}
6870

app/src/main/java/com/fernandocejas/android10/rx/sample/data/NumberGenerator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
public class NumberGenerator {
2424

25-
public static final Func2<Integer, Integer, Integer> sumNumbers =
25+
private static final Func2<Integer, Integer, Integer> sumNumbers =
2626
new Func2<Integer, Integer, Integer>() {
2727
@Override public Integer call(Integer integer, Integer integer2) {
2828
return integer + integer2;
@@ -31,7 +31,7 @@ public class NumberGenerator {
3131

3232
public NumberGenerator() {}
3333

34-
public Observable<Integer> getResults() {
34+
Observable<Integer> results() {
3535
return Observable.zip(getNumbersFast(), getNumbersSlow(), sumNumbers);
3636
}
3737

app/src/main/java/com/fernandocejas/android10/rx/sample/data/RandomStringGenerator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public RandomStringGenerator(int stringLength) {
4747
this.random = new Random();
4848
}
4949

50-
public String nextString() {
50+
String nextString() {
5151
for (int i = 0; i < charArray.length; i++) {
5252
charArray[i] = symbols[random.nextInt(symbols.length)];
5353
}

0 commit comments

Comments
 (0)