Browse Source

DATAMONGO-2173 - Polishing.

Set interrupted thread state after catching InterruptedException. Fix potential NPE by checking the cursor. Streamline generics to not hide class-level generic types.

Original pull request: #634.
pull/640/head
Mark Paluch 7 years ago
parent
commit
267decf189
  1. 8
      spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/messaging/CursorReadingTask.java

8
spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/messaging/CursorReadingTask.java

@ -91,7 +91,7 @@ abstract class CursorReadingTask<T, R> implements Task { @@ -91,7 +91,7 @@ abstract class CursorReadingTask<T, R> implements Task {
synchronized (lifecycleMonitor) {
state = State.CANCELLED;
}
Thread.interrupted();
Thread.currentThread().interrupt();
}
}
}
@ -126,7 +126,7 @@ abstract class CursorReadingTask<T, R> implements Task { @@ -126,7 +126,7 @@ abstract class CursorReadingTask<T, R> implements Task {
if (valid) {
this.cursor = cursor;
state = State.RUNNING;
} else {
} else if(cursor != null){
cursor.close();
}
}
@ -141,7 +141,7 @@ abstract class CursorReadingTask<T, R> implements Task { @@ -141,7 +141,7 @@ abstract class CursorReadingTask<T, R> implements Task {
synchronized (lifecycleMonitor) {
state = State.CANCELLED;
}
Thread.interrupted();
Thread.currentThread().interrupt();
}
}
} while (State.STARTING.equals(getState()));
@ -258,7 +258,7 @@ abstract class CursorReadingTask<T, R> implements Task { @@ -258,7 +258,7 @@ abstract class CursorReadingTask<T, R> implements Task {
* @throws RuntimeException The potentially translated exception.
*/
@Nullable
private <T> T execute(Supplier<T> callback) {
private <V> V execute(Supplier<V> callback) {
try {
return callback.get();

Loading…
Cancel
Save