mirror of
https://github.com/tommyskeff/futur4j.git
synced 2026-01-18 07:16:45 +00:00
make other modules compatible with 1.2.0
This commit is contained in:
@@ -1,33 +0,0 @@
|
||||
package dev.tommyjs.futur.promise;
|
||||
|
||||
import dev.tommyjs.futur.scheduler.Scheduler;
|
||||
import org.slf4j.Logger;
|
||||
|
||||
public class PooledPromise<T> extends AbstractPromise<T> {
|
||||
|
||||
private final Scheduler scheduler;
|
||||
private final Logger logger;
|
||||
private final PromiseFactory factory;
|
||||
|
||||
public PooledPromise(Scheduler scheduler, Logger logger, PromiseFactory factory) {
|
||||
this.scheduler = scheduler;
|
||||
this.logger = logger;
|
||||
this.factory = factory;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Scheduler getScheduler() {
|
||||
return scheduler;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Logger getLogger() {
|
||||
return logger;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PromiseFactory getFactory() {
|
||||
return factory;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
package dev.tommyjs.futur.promise;
|
||||
|
||||
import dev.tommyjs.futur.scheduler.Scheduler;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.slf4j.Logger;
|
||||
|
||||
public class PooledPromiseFactory implements PromiseFactory {
|
||||
|
||||
private final Scheduler scheduler;
|
||||
private final Logger logger;
|
||||
|
||||
public PooledPromiseFactory(Scheduler scheduler, Logger logger) {
|
||||
this.scheduler = scheduler;
|
||||
this.logger = logger;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull <T> Promise<T> resolve(T value) {
|
||||
AbstractPromise<T> promise = new PooledPromise<>(scheduler, logger, this);
|
||||
promise.setCompletion(new PromiseCompletion<>(value));
|
||||
return promise;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull <T> Promise<T> unresolved() {
|
||||
return new PooledPromise<>(scheduler, logger, this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull <T> Promise<T> error(Throwable error) {
|
||||
AbstractPromise<T> promise = new PooledPromise<>(scheduler, logger, this);
|
||||
promise.completeExceptionally(error);
|
||||
return promise;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Promise<Void> start() {
|
||||
return resolve(null);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user