Home / Function/ doReadMessages() — netty Function Reference

doReadMessages() — netty Function Reference

Architecture documentation for the doReadMessages() function in OioSctpServerChannel.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  ff282730_6a0a_2538_3851_86e4c5047cb3["doReadMessages()"]
  6afb1ded_b47f_ea85_aaad_a3a81300c88f["OioSctpServerChannel"]
  ff282730_6a0a_2538_3851_86e4c5047cb3 -->|defined in| 6afb1ded_b47f_ea85_aaad_a3a81300c88f
  cc024ebd_6a64_6081_9544_eb2ffce0acec["isActive()"]
  ff282730_6a0a_2538_3851_86e4c5047cb3 -->|calls| cc024ebd_6a64_6081_9544_eb2ffce0acec
  style ff282730_6a0a_2538_3851_86e4c5047cb3 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

transport-sctp/src/main/java/io/netty/channel/sctp/oio/OioSctpServerChannel.java lines 181–220

    @Override
    protected int doReadMessages(List<Object> buf) throws Exception {
        if (!isActive()) {
            return -1;
        }

        SctpChannel s = null;
        int acceptedChannels = 0;
        try {
            final int selectedKeys = selector.select(SO_TIMEOUT);
            if (selectedKeys > 0) {
                final Iterator<SelectionKey> selectionKeys = selector.selectedKeys().iterator();
                for (;;) {
                    SelectionKey key = selectionKeys.next();
                    selectionKeys.remove();
                    if (key.isAcceptable()) {
                        s = sch.accept();
                        if (s != null) {
                            buf.add(new OioSctpChannel(this, s));
                            acceptedChannels ++;
                        }
                    }
                    if (!selectionKeys.hasNext()) {
                        return acceptedChannels;
                    }
                }
            }
        } catch (Throwable t) {
            logger.warn("Failed to create a new channel from an accepted sctp channel.", t);
            if (s != null) {
                try {
                    s.close();
                } catch (Throwable t2) {
                    logger.warn("Failed to close a sctp channel.", t2);
                }
            }
        }

        return acceptedChannels;
    }

Domain

Subdomains

Calls

Frequently Asked Questions

What does doReadMessages() do?
doReadMessages() is a function in the netty codebase, defined in transport-sctp/src/main/java/io/netty/channel/sctp/oio/OioSctpServerChannel.java.
Where is doReadMessages() defined?
doReadMessages() is defined in transport-sctp/src/main/java/io/netty/channel/sctp/oio/OioSctpServerChannel.java at line 181.
What does doReadMessages() call?
doReadMessages() calls 1 function(s): isActive.

Analyze Your Own Codebase

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

Try Supermodel Free