Home / Function/ process() — netty Function Reference

process() — netty Function Reference

Architecture documentation for the process() function in StompSubframeDecoder.java from the netty codebase.

Function java Buffer Allocators calls 2 called by 1

Entity Profile

Dependency Diagram

graph TD
  9bde2ed0_d958_c955_31d0_73b2f06ed949["process()"]
  5d38ba31_ba08_3a99_f6d7_484d97fb7ad5["Utf8LineParser"]
  9bde2ed0_d958_c955_31d0_73b2f06ed949 -->|defined in| 5d38ba31_ba08_3a99_f6d7_484d97fb7ad5
  7625c351_feff_b906_08e6_200b708f58f8["process()"]
  7625c351_feff_b906_08e6_200b708f58f8 -->|calls| 9bde2ed0_d958_c955_31d0_73b2f06ed949
  7625c351_feff_b906_08e6_200b708f58f8["process()"]
  9bde2ed0_d958_c955_31d0_73b2f06ed949 -->|calls| 7625c351_feff_b906_08e6_200b708f58f8
  55abd999_2586_69c2_96cb_976793a79a2b["appendTo()"]
  9bde2ed0_d958_c955_31d0_73b2f06ed949 -->|calls| 55abd999_2586_69c2_96cb_976793a79a2b
  style 9bde2ed0_d958_c955_31d0_73b2f06ed949 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

codec-stomp/src/main/java/io/netty/handler/codec/stomp/StompSubframeDecoder.java lines 285–323

        @Override
        public boolean process(byte nextByte) throws Exception {
            if (nextByte == StompConstants.CR) {
                ++lineLength;
                return true;
            }

            if (nextByte == StompConstants.LF) {
                return false;
            }

            if (++lineLength > maxLineLength) {
                throw new TooLongFrameException("An STOMP line is larger than " + maxLineLength + " bytes.");
            }

            // 1 byte   -   0xxxxxxx                    -  7 bits
            // 2 byte   -   110xxxxx 10xxxxxx           -  11 bits
            // 3 byte   -   1110xxxx 10xxxxxx 10xxxxxx  -  16 bits
            if (nextRead) {
                interim |= (nextByte & 0x3F) << 6;
                nextRead = false;
            } else if (interim != 0) { // flush 2 or 3 byte
                appendTo(charSeq, (char) (interim | (nextByte & 0x3F)));
                interim = 0;
            } else if (nextByte >= 0) { // INITIAL BRANCH
                // The first 128 characters (US-ASCII) need one byte.
                appendTo(charSeq, (char) nextByte);
            } else if ((nextByte & 0xE0) == 0xC0) {
                // The next 1920 characters need two bytes and we can define
                // a first byte by mask 110xxxxx.
                interim = (char) ((nextByte & 0x1F) << 6);
            } else {
                // The rest of characters need three bytes.
                interim = (char) ((nextByte & 0x0F) << 12);
                nextRead = true;
            }

            return true;
        }

Domain

Subdomains

Called By

Frequently Asked Questions

What does process() do?
process() is a function in the netty codebase, defined in codec-stomp/src/main/java/io/netty/handler/codec/stomp/StompSubframeDecoder.java.
Where is process() defined?
process() is defined in codec-stomp/src/main/java/io/netty/handler/codec/stomp/StompSubframeDecoder.java at line 285.
What does process() call?
process() calls 2 function(s): appendTo, process.
What calls process()?
process() is called by 1 function(s): process.

Analyze Your Own Codebase

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

Try Supermodel Free