Home / Class/ DefaultChannelPromise Class — netty Architecture

DefaultChannelPromise Class — netty Architecture

Architecture documentation for the DefaultChannelPromise class in DefaultChannelPromise.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b["DefaultChannelPromise"]
  937736ae_9314_bd46_2f83_d9b5ac1321a6["DefaultChannelPromise.java"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|defined in| 937736ae_9314_bd46_2f83_d9b5ac1321a6
  0eec42aa_529f_6b40_f8ba_3d12b4333ab8["DefaultChannelPromise()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| 0eec42aa_529f_6b40_f8ba_3d12b4333ab8
  f496056e_ac8f_725e_c00d_463b53f88a78["EventExecutor()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| f496056e_ac8f_725e_c00d_463b53f88a78
  4e3143db_6fda_08ab_f43b_295b29ceeca6["Channel()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| 4e3143db_6fda_08ab_f43b_295b29ceeca6
  544e3c82_a9d8_04a4_d261_8fc7b794da30["ChannelPromise()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| 544e3c82_a9d8_04a4_d261_8fc7b794da30
  6dcaee63_5d5d_ef38_0c69_e7d26ebbdb92["trySuccess()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| 6dcaee63_5d5d_ef38_0c69_e7d26ebbdb92
  611ee2f3_9f77_123f_2fbe_ccb8846c3bb5["flushCheckpoint()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| 611ee2f3_9f77_123f_2fbe_ccb8846c3bb5
  89359d71_19c3_ab46_f4ce_20d6d4519e9d["checkDeadLock()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| 89359d71_19c3_ab46_f4ce_20d6d4519e9d
  c9cdcdda_a89c_77f6_a04d_4040eb4a6d87["isVoid()"]
  c541b8cb_f248_5ac1_a9ac_1ff2de2ef09b -->|method| c9cdcdda_a89c_77f6_a04d_4040eb4a6d87

Relationship Graph

Source Code

transport/src/main/java/io/netty/channel/DefaultChannelPromise.java lines 30–172

public class DefaultChannelPromise extends DefaultPromise<Void> implements ChannelPromise, FlushCheckpoint {

    private final Channel channel;
    private long checkpoint;

    /**
     * Creates a new instance.
     *
     * @param channel
     *        the {@link Channel} associated with this future
     */
    public DefaultChannelPromise(Channel channel) {
        this.channel = checkNotNull(channel, "channel");
    }

    /**
     * Creates a new instance.
     *
     * @param channel
     *        the {@link Channel} associated with this future
     */
    public DefaultChannelPromise(Channel channel, EventExecutor executor) {
        super(executor);
        this.channel = checkNotNull(channel, "channel");
    }

    @Override
    protected EventExecutor executor() {
        EventExecutor e = super.executor();
        if (e == null) {
            return channel().eventLoop();
        } else {
            return e;
        }
    }

    @Override
    public Channel channel() {
        return channel;
    }

    @Override
    public ChannelPromise setSuccess() {
        return setSuccess(null);
    }

    @Override
    public ChannelPromise setSuccess(Void result) {
        super.setSuccess(result);
        return this;
    }

    @Override
    public boolean trySuccess() {
        return trySuccess(null);
    }

    @Override
    public ChannelPromise setFailure(Throwable cause) {
        super.setFailure(cause);
        return this;
    }

    @Override
    public ChannelPromise addListener(GenericFutureListener<? extends Future<? super Void>> listener) {
        super.addListener(listener);
        return this;
    }

    @Override
    public ChannelPromise addListeners(GenericFutureListener<? extends Future<? super Void>>... listeners) {
        super.addListeners(listeners);
        return this;
    }

    @Override
    public ChannelPromise removeListener(GenericFutureListener<? extends Future<? super Void>> listener) {
        super.removeListener(listener);
        return this;
    }

Frequently Asked Questions

What is the DefaultChannelPromise class?
DefaultChannelPromise is a class in the netty codebase, defined in transport/src/main/java/io/netty/channel/DefaultChannelPromise.java.
Where is DefaultChannelPromise defined?
DefaultChannelPromise is defined in transport/src/main/java/io/netty/channel/DefaultChannelPromise.java at line 30.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free