Home / Function/ writeOutbound() — netty Function Reference

writeOutbound() — netty Function Reference

Architecture documentation for the writeOutbound() function in EmbeddedChannel.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  559e3175_ce9d_28f8_2409_73365664ed18["writeOutbound()"]
  0bb3a58a_67ea_3870_31f9_00e0edf95132["EmbeddedChannel"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|defined in| 0bb3a58a_67ea_3870_31f9_00e0edf95132
  ee828ff2_4205_3c25_0416_ea7ba5f24c11["ensureOpen()"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|calls| ee828ff2_4205_3c25_0416_ea7ba5f24c11
  0e10d469_d4c1_c7c4_e516_3f924e2981f0["isNotEmpty()"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|calls| 0e10d469_d4c1_c7c4_e516_3f924e2981f0
  10460cae_06a7_41c7_b61d_1d0585247e82["flushOutbound0()"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|calls| 10460cae_06a7_41c7_b61d_1d0585247e82
  7a0b636d_b15b_cbcf_fa5b_2074f256ceb4["recordException()"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|calls| 7a0b636d_b15b_cbcf_fa5b_2074f256ceb4
  af353ce5_1ef0_a5fe_9c65_65651743b5a2["runPendingTasks()"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|calls| af353ce5_1ef0_a5fe_9c65_65651743b5a2
  fb4fa721_0ffb_13af_d1b0_d9acaa6268de["maybeRunPendingTasks()"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|calls| fb4fa721_0ffb_13af_d1b0_d9acaa6268de
  70b625c1_6e87_a39c_a9d8_9114b432c979["checkException()"]
  559e3175_ce9d_28f8_2409_73365664ed18 -->|calls| 70b625c1_6e87_a39c_a9d8_9114b432c979
  style 559e3175_ce9d_28f8_2409_73365664ed18 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

transport/src/main/java/io/netty/channel/embedded/EmbeddedChannel.java lines 440–478

    public boolean writeOutbound(Object... msgs) {
        ensureOpen();
        if (msgs.length == 0) {
            return isNotEmpty(outboundMessages);
        }

        executingStackCnt++;
        RecyclableArrayList futures = RecyclableArrayList.newInstance(msgs.length);
        try {
            try {
                for (Object m : msgs) {
                    if (m == null) {
                        break;
                    }
                    futures.add(write(m));
                }

                flushOutbound0();

                int size = futures.size();
                for (int i = 0; i < size; i++) {
                    ChannelFuture future = (ChannelFuture) futures.get(i);
                    if (future.isDone()) {
                        recordException(future);
                    } else {
                        // The write may be delayed to run later by runPendingTasks()
                        future.addListener(recordExceptionListener);
                    }
                }
            } finally {
                executingStackCnt--;
                maybeRunPendingTasks();
            }
            checkException();
            return isNotEmpty(outboundMessages);
        } finally {
            futures.recycle();
        }
    }

Domain

Subdomains

Frequently Asked Questions

What does writeOutbound() do?
writeOutbound() is a function in the netty codebase, defined in transport/src/main/java/io/netty/channel/embedded/EmbeddedChannel.java.
Where is writeOutbound() defined?
writeOutbound() is defined in transport/src/main/java/io/netty/channel/embedded/EmbeddedChannel.java at line 440.
What does writeOutbound() call?
writeOutbound() calls 7 function(s): checkException, ensureOpen, flushOutbound0, isNotEmpty, maybeRunPendingTasks, recordException, runPendingTasks.

Analyze Your Own Codebase

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

Try Supermodel Free