
org.jtrim2.cancel.SimpleChildCancellationSource Maven / Gradle / Ivy
package org.jtrim2.cancel;
import java.util.Objects;
/**
* @see Cancellation#createChildCancellationSource(CancellationToken)
*/
final class SimpleChildCancellationSource implements CancellationSource {
private final CancellationToken token;
private final CancellationController controller;
public SimpleChildCancellationSource(CancellationToken parentToken) {
Objects.requireNonNull(parentToken, "parentToken");
CancellationSource cancelSource = Cancellation.createCancellationSource();
this.token = Cancellation.anyToken(parentToken, cancelSource.getToken());
this.controller = cancelSource.getController();
}
@Override
public CancellationController getController() {
return controller;
}
@Override
public CancellationToken getToken() {
return token;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy