DefaultProgressivePromise Class — netty Architecture
Architecture documentation for the DefaultProgressivePromise class in DefaultProgressivePromise.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a["DefaultProgressivePromise"] 4a00391d_bffa_d779_54f4_036f0f37bb25["DefaultProgressivePromise.java"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|defined in| 4a00391d_bffa_d779_54f4_036f0f37bb25 885bc750_6859_9750_d2d1_089105a46e00["DefaultProgressivePromise()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| 885bc750_6859_9750_d2d1_089105a46e00 a68b0318_d647_7094_b0cb_e431e6d372a7["setProgress()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| a68b0318_d647_7094_b0cb_e431e6d372a7 79268a6f_29db_afe5_8c2f_3cd63cbb0156["tryProgress()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| 79268a6f_29db_afe5_8c2f_3cd63cbb0156 b6654cce_f1fd_0b9e_c358_1903fe2fdd65["addListener()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| b6654cce_f1fd_0b9e_c358_1903fe2fdd65 d55456f2_069c_6f34_4800_2f698904c559["addListeners()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| d55456f2_069c_6f34_4800_2f698904c559 c70599a6_f168_6ffd_1f1c_c6e088ace445["removeListener()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| c70599a6_f168_6ffd_1f1c_c6e088ace445 d66c952d_19fe_e522_3b79_b6fb6ae2a682["removeListeners()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| d66c952d_19fe_e522_3b79_b6fb6ae2a682 0125cf5f_5e55_d2d9_b63a_1cea5dd57d65["sync()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| 0125cf5f_5e55_d2d9_b63a_1cea5dd57d65 43fd99d2_19f7_0c19_4be1_5887e8bd3866["syncUninterruptibly()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| 43fd99d2_19f7_0c19_4be1_5887e8bd3866 1fbbca3e_154d_bc47_cf6a_fd8291c95132["await()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| 1fbbca3e_154d_bc47_cf6a_fd8291c95132 e989d384_cca7_c1cf_40f4_fb3048368915["awaitUninterruptibly()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| e989d384_cca7_c1cf_40f4_fb3048368915 dc9135c7_ffda_a30c_f8e0_4461ea5d69a2["setSuccess()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| dc9135c7_ffda_a30c_f8e0_4461ea5d69a2 65f1fdd1_b24f_eb8c_b22c_e55ed8598032["setFailure()"] b24fe5e0_3f85_bfcd_60fb_d12dfc91b56a -->|method| 65f1fdd1_b24f_eb8c_b22c_e55ed8598032
Relationship Graph
Source Code
common/src/main/java/io/netty/util/concurrent/DefaultProgressivePromise.java lines 21–130
public class DefaultProgressivePromise<V> extends DefaultPromise<V> implements ProgressivePromise<V> {
/**
* Creates a new instance.
*
* It is preferable to use {@link EventExecutor#newProgressivePromise()} to create a new progressive promise
*
* @param executor
* the {@link EventExecutor} which is used to notify the promise when it progresses or it is complete
*/
public DefaultProgressivePromise(EventExecutor executor) {
super(executor);
}
protected DefaultProgressivePromise() { /* only for subclasses */ }
@Override
public ProgressivePromise<V> setProgress(long progress, long total) {
if (total < 0) {
// total unknown
total = -1; // normalize
checkPositiveOrZero(progress, "progress");
} else if (progress < 0 || progress > total) {
throw new IllegalArgumentException(
"progress: " + progress + " (expected: 0 <= progress <= total (" + total + "))");
}
if (isDone()) {
throw new IllegalStateException("complete already");
}
notifyProgressiveListeners(progress, total);
return this;
}
@Override
public boolean tryProgress(long progress, long total) {
if (total < 0) {
total = -1;
if (progress < 0 || isDone()) {
return false;
}
} else if (progress < 0 || progress > total || isDone()) {
return false;
}
notifyProgressiveListeners(progress, total);
return true;
}
@Override
public ProgressivePromise<V> addListener(GenericFutureListener<? extends Future<? super V>> listener) {
super.addListener(listener);
return this;
}
@Override
public ProgressivePromise<V> addListeners(GenericFutureListener<? extends Future<? super V>>... listeners) {
super.addListeners(listeners);
return this;
}
@Override
public ProgressivePromise<V> removeListener(GenericFutureListener<? extends Future<? super V>> listener) {
super.removeListener(listener);
return this;
}
@Override
public ProgressivePromise<V> removeListeners(GenericFutureListener<? extends Future<? super V>>... listeners) {
super.removeListeners(listeners);
return this;
}
@Override
public ProgressivePromise<V> sync() throws InterruptedException {
super.sync();
return this;
}
@Override
Source
Frequently Asked Questions
What is the DefaultProgressivePromise class?
DefaultProgressivePromise is a class in the netty codebase, defined in common/src/main/java/io/netty/util/concurrent/DefaultProgressivePromise.java.
Where is DefaultProgressivePromise defined?
DefaultProgressivePromise is defined in common/src/main/java/io/netty/util/concurrent/DefaultProgressivePromise.java at line 21.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free