Skip to content

Commit 0bb7b4d

Browse files
chronvasakarnokd
authored andcommitted
2.x composite disposable docs (ReactiveX#6432)
* 2.x: Improving NPE message in CompositeDisposable add(..) when param is null * 2.x: Improving NPE message in CompositeDisposable addAll(..) when item in vararg param is null * 2.x: Improved in CompositeDisposable: NPE error messages, parameter naming at methods, added @throws javadoc where applicable * 2.x: Applied PR suggestions in javadoc and messages for CompositeDisposable
1 parent 9a74adf commit 0bb7b4d

File tree

1 file changed

+36
-31
lines changed

1 file changed

+36
-31
lines changed

src/main/java/io/reactivex/disposables/CompositeDisposable.java

Lines changed: 36 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -38,26 +38,28 @@ public CompositeDisposable() {
3838

3939
/**
4040
* Creates a CompositeDisposables with the given array of initial elements.
41-
* @param resources the array of Disposables to start with
41+
* @param disposables the array of Disposables to start with
42+
* @throws NullPointerException if {@code disposables} or any of its array items is null
4243
*/
43-
public CompositeDisposable(@NonNull Disposable... resources) {
44-
ObjectHelper.requireNonNull(resources, "resources is null");
45-
this.resources = new OpenHashSet<Disposable>(resources.length + 1);
46-
for (Disposable d : resources) {
47-
ObjectHelper.requireNonNull(d, "Disposable item is null");
44+
public CompositeDisposable(@NonNull Disposable... disposables) {
45+
ObjectHelper.requireNonNull(disposables, "disposables is null");
46+
this.resources = new OpenHashSet<Disposable>(disposables.length + 1);
47+
for (Disposable d : disposables) {
48+
ObjectHelper.requireNonNull(d, "A Disposable in the disposables array is null");
4849
this.resources.add(d);
4950
}
5051
}
5152

5253
/**
5354
* Creates a CompositeDisposables with the given Iterable sequence of initial elements.
54-
* @param resources the Iterable sequence of Disposables to start with
55+
* @param disposables the Iterable sequence of Disposables to start with
56+
* @throws NullPointerException if {@code disposables} or any of its items is null
5557
*/
56-
public CompositeDisposable(@NonNull Iterable<? extends Disposable> resources) {
57-
ObjectHelper.requireNonNull(resources, "resources is null");
58+
public CompositeDisposable(@NonNull Iterable<? extends Disposable> disposables) {
59+
ObjectHelper.requireNonNull(disposables, "disposables is null");
5860
this.resources = new OpenHashSet<Disposable>();
59-
for (Disposable d : resources) {
60-
ObjectHelper.requireNonNull(d, "Disposable item is null");
61+
for (Disposable d : disposables) {
62+
ObjectHelper.requireNonNull(d, "A Disposable item in the disposables sequence is null");
6163
this.resources.add(d);
6264
}
6365
}
@@ -88,12 +90,13 @@ public boolean isDisposed() {
8890
/**
8991
* Adds a disposable to this container or disposes it if the
9092
* container has been disposed.
91-
* @param d the disposable to add, not null
93+
* @param disposable the disposable to add, not null
9294
* @return true if successful, false if this container has been disposed
95+
* @throws NullPointerException if {@code disposable} is null
9396
*/
9497
@Override
95-
public boolean add(@NonNull Disposable d) {
96-
ObjectHelper.requireNonNull(d, "d is null");
98+
public boolean add(@NonNull Disposable disposable) {
99+
ObjectHelper.requireNonNull(disposable, "disposable is null");
97100
if (!disposed) {
98101
synchronized (this) {
99102
if (!disposed) {
@@ -102,40 +105,41 @@ public boolean add(@NonNull Disposable d) {
102105
set = new OpenHashSet<Disposable>();
103106
resources = set;
104107
}
105-
set.add(d);
108+
set.add(disposable);
106109
return true;
107110
}
108111
}
109112
}
110-
d.dispose();
113+
disposable.dispose();
111114
return false;
112115
}
113116

114117
/**
115118
* Atomically adds the given array of Disposables to the container or
116119
* disposes them all if the container has been disposed.
117-
* @param ds the array of Disposables
120+
* @param disposables the array of Disposables
118121
* @return true if the operation was successful, false if the container has been disposed
122+
* @throws NullPointerException if {@code disposables} or any of its array items is null
119123
*/
120-
public boolean addAll(@NonNull Disposable... ds) {
121-
ObjectHelper.requireNonNull(ds, "ds is null");
124+
public boolean addAll(@NonNull Disposable... disposables) {
125+
ObjectHelper.requireNonNull(disposables, "disposables is null");
122126
if (!disposed) {
123127
synchronized (this) {
124128
if (!disposed) {
125129
OpenHashSet<Disposable> set = resources;
126130
if (set == null) {
127-
set = new OpenHashSet<Disposable>(ds.length + 1);
131+
set = new OpenHashSet<Disposable>(disposables.length + 1);
128132
resources = set;
129133
}
130-
for (Disposable d : ds) {
131-
ObjectHelper.requireNonNull(d, "d is null");
134+
for (Disposable d : disposables) {
135+
ObjectHelper.requireNonNull(d, "A Disposable in the disposables array is null");
132136
set.add(d);
133137
}
134138
return true;
135139
}
136140
}
137141
}
138-
for (Disposable d : ds) {
142+
for (Disposable d : disposables) {
139143
d.dispose();
140144
}
141145
return false;
@@ -144,13 +148,13 @@ public boolean addAll(@NonNull Disposable... ds) {
144148
/**
145149
* Removes and disposes the given disposable if it is part of this
146150
* container.
147-
* @param d the disposable to remove and dispose, not null
151+
* @param disposable the disposable to remove and dispose, not null
148152
* @return true if the operation was successful
149153
*/
150154
@Override
151-
public boolean remove(@NonNull Disposable d) {
152-
if (delete(d)) {
153-
d.dispose();
155+
public boolean remove(@NonNull Disposable disposable) {
156+
if (delete(disposable)) {
157+
disposable.dispose();
154158
return true;
155159
}
156160
return false;
@@ -159,12 +163,13 @@ public boolean remove(@NonNull Disposable d) {
159163
/**
160164
* Removes (but does not dispose) the given disposable if it is part of this
161165
* container.
162-
* @param d the disposable to remove, not null
166+
* @param disposable the disposable to remove, not null
163167
* @return true if the operation was successful
168+
* @throws NullPointerException if {@code disposable} is null
164169
*/
165170
@Override
166-
public boolean delete(@NonNull Disposable d) {
167-
ObjectHelper.requireNonNull(d, "Disposable item is null");
171+
public boolean delete(@NonNull Disposable disposable) {
172+
ObjectHelper.requireNonNull(disposable, "disposables is null");
168173
if (disposed) {
169174
return false;
170175
}
@@ -174,7 +179,7 @@ public boolean delete(@NonNull Disposable d) {
174179
}
175180

176181
OpenHashSet<Disposable> set = resources;
177-
if (set == null || !set.remove(d)) {
182+
if (set == null || !set.remove(disposable)) {
178183
return false;
179184
}
180185
}

0 commit comments

Comments
 (0)