Home / Class/ SpdyCodecUtil Class — netty Architecture

SpdyCodecUtil Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf["SpdyCodecUtil"]
  38f2f8ae_91eb_ccab_f09c_9bbee75e5a1a["SpdyCodecUtil.java"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|defined in| 38f2f8ae_91eb_ccab_f09c_9bbee75e5a1a
  ebba7a0a_fe67_fc15_4ccc_6edf05c77604["SpdyCodecUtil()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| ebba7a0a_fe67_fc15_4ccc_6edf05c77604
  8dab82c0_1285_b50a_f185_6b533dd03bc1["getUnsignedShort()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| 8dab82c0_1285_b50a_f185_6b533dd03bc1
  d749fa85_0b1a_8ef7_418d_b3cd1361ab69["getUnsignedMedium()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| d749fa85_0b1a_8ef7_418d_b3cd1361ab69
  d42ade12_af28_68c3_1cba_d14eaf98aa78["getUnsignedInt()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| d42ade12_af28_68c3_1cba_d14eaf98aa78
  4f59a618_974d_7e9c_e4e4_0d2ac1582677["getSignedInt()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| 4f59a618_974d_7e9c_e4e4_0d2ac1582677
  673db846_f201_9dbe_f520_0a378af46f2f["isServerId()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| 673db846_f201_9dbe_f520_0a378af46f2f
  c48142f8_7377_d361_e56e_8ccc37e89cd5["validateHeaderName()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| c48142f8_7377_d361_e56e_8ccc37e89cd5
  a2f70c70_724e_cde8_fba4_655e6e4eef16["validateHeaderValue()"]
  f1977c7d_b1bb_ca38_4f32_4a5d0b3425cf -->|method| a2f70c70_724e_cde8_fba4_655e6e4eef16

Relationship Graph

Source Code

codec-http/src/main/java/io/netty/handler/codec/spdy/SpdyCodecUtil.java lines 23–328

final class SpdyCodecUtil {

    static final int SPDY_SESSION_STREAM_ID = 0;

    static final int SPDY_HEADER_TYPE_OFFSET   = 2;
    static final int SPDY_HEADER_FLAGS_OFFSET  = 4;
    static final int SPDY_HEADER_LENGTH_OFFSET = 5;
    static final int SPDY_HEADER_SIZE          = 8;

    static final int SPDY_MAX_LENGTH = 0xFFFFFF; // Length is a 24-bit field

    static final byte SPDY_DATA_FLAG_FIN = 0x01;

    static final int SPDY_DATA_FRAME          = 0;
    static final int SPDY_SYN_STREAM_FRAME    = 1;
    static final int SPDY_SYN_REPLY_FRAME     = 2;
    static final int SPDY_RST_STREAM_FRAME    = 3;
    static final int SPDY_SETTINGS_FRAME      = 4;
    static final int SPDY_PUSH_PROMISE_FRAME  = 5;
    static final int SPDY_PING_FRAME          = 6;
    static final int SPDY_GOAWAY_FRAME        = 7;
    static final int SPDY_HEADERS_FRAME       = 8;
    static final int SPDY_WINDOW_UPDATE_FRAME = 9;

    static final byte SPDY_FLAG_FIN            = 0x01;
    static final byte SPDY_FLAG_UNIDIRECTIONAL = 0x02;

    static final byte SPDY_SETTINGS_CLEAR         = 0x01;
    static final byte SPDY_SETTINGS_PERSIST_VALUE = 0x01;
    static final byte SPDY_SETTINGS_PERSISTED     = 0x02;

    static final int SPDY_SETTINGS_MAX_ID = 0xFFFFFF; // ID is a 24-bit field

    static final int SPDY_MAX_NV_LENGTH = 0xFFFF; // Length is a 16-bit field

    // Zlib Dictionary
    static final byte[] SPDY_DICT = {
        0x00, 0x00, 0x00, 0x07, 0x6f, 0x70, 0x74, 0x69,   // - - - - o p t i
        0x6f, 0x6e, 0x73, 0x00, 0x00, 0x00, 0x04, 0x68,   // o n s - - - - h
        0x65, 0x61, 0x64, 0x00, 0x00, 0x00, 0x04, 0x70,   // e a d - - - - p
        0x6f, 0x73, 0x74, 0x00, 0x00, 0x00, 0x03, 0x70,   // o s t - - - - p
        0x75, 0x74, 0x00, 0x00, 0x00, 0x06, 0x64, 0x65,   // u t - - - - d e
        0x6c, 0x65, 0x74, 0x65, 0x00, 0x00, 0x00, 0x05,   // l e t e - - - -
        0x74, 0x72, 0x61, 0x63, 0x65, 0x00, 0x00, 0x00,   // t r a c e - - -
        0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x00,   // - a c c e p t -
        0x00, 0x00, 0x0e, 0x61, 0x63, 0x63, 0x65, 0x70,   // - - - a c c e p
        0x74, 0x2d, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65,   // t - c h a r s e
        0x74, 0x00, 0x00, 0x00, 0x0f, 0x61, 0x63, 0x63,   // t - - - - a c c
        0x65, 0x70, 0x74, 0x2d, 0x65, 0x6e, 0x63, 0x6f,   // e p t - e n c o
        0x64, 0x69, 0x6e, 0x67, 0x00, 0x00, 0x00, 0x0f,   // d i n g - - - -
        0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x2d, 0x6c,   // a c c e p t - l
        0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x00,   // a n g u a g e -
        0x00, 0x00, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x70,   // - - - a c c e p
        0x74, 0x2d, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73,   // t - r a n g e s
        0x00, 0x00, 0x00, 0x03, 0x61, 0x67, 0x65, 0x00,   // - - - - a g e -
        0x00, 0x00, 0x05, 0x61, 0x6c, 0x6c, 0x6f, 0x77,   // - - - a l l o w
        0x00, 0x00, 0x00, 0x0d, 0x61, 0x75, 0x74, 0x68,   // - - - - a u t h
        0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,   // o r i z a t i o
        0x6e, 0x00, 0x00, 0x00, 0x0d, 0x63, 0x61, 0x63,   // n - - - - c a c
        0x68, 0x65, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x72,   // h e - c o n t r
        0x6f, 0x6c, 0x00, 0x00, 0x00, 0x0a, 0x63, 0x6f,   // o l - - - - c o
        0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,   // n n e c t i o n
        0x00, 0x00, 0x00, 0x0c, 0x63, 0x6f, 0x6e, 0x74,   // - - - - c o n t
        0x65, 0x6e, 0x74, 0x2d, 0x62, 0x61, 0x73, 0x65,   // e n t - b a s e
        0x00, 0x00, 0x00, 0x10, 0x63, 0x6f, 0x6e, 0x74,   // - - - - c o n t
        0x65, 0x6e, 0x74, 0x2d, 0x65, 0x6e, 0x63, 0x6f,   // e n t - e n c o
        0x64, 0x69, 0x6e, 0x67, 0x00, 0x00, 0x00, 0x10,   // d i n g - - - -
        0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d,   // c o n t e n t -
        0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,   // l a n g u a g e
        0x00, 0x00, 0x00, 0x0e, 0x63, 0x6f, 0x6e, 0x74,   // - - - - c o n t
        0x65, 0x6e, 0x74, 0x2d, 0x6c, 0x65, 0x6e, 0x67,   // e n t - l e n g
        0x74, 0x68, 0x00, 0x00, 0x00, 0x10, 0x63, 0x6f,   // t h - - - - c o
        0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, 0x6c, 0x6f,   // n t e n t - l o
        0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x00,   // c a t i o n - -
        0x00, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,   // - - c o n t e n
        0x74, 0x2d, 0x6d, 0x64, 0x35, 0x00, 0x00, 0x00,   // t - m d 5 - - -
        0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,   // - c o n t e n t
        0x2d, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x00, 0x00,   // - r a n g e - -
        0x00, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,   // - - c o n t e n
        0x74, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x00, 0x00,   // t - t y p e - -
        0x00, 0x04, 0x64, 0x61, 0x74, 0x65, 0x00, 0x00,   // - - d a t e - -

Frequently Asked Questions

What is the SpdyCodecUtil class?
SpdyCodecUtil is a class in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/spdy/SpdyCodecUtil.java.
Where is SpdyCodecUtil defined?
SpdyCodecUtil is defined in codec-http/src/main/java/io/netty/handler/codec/spdy/SpdyCodecUtil.java at line 23.

Analyze Your Own Codebase

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

Try Supermodel Free