Home / Class/ CaseIgnoringComparator Class — netty Architecture

CaseIgnoringComparator Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  21b254d0_037f_fd41_8caf_d1200f0ab77d["CaseIgnoringComparator"]
  f167816d_d50d_c1b0_8d9c_34eab5a1f482["CaseIgnoringComparator.java"]
  21b254d0_037f_fd41_8caf_d1200f0ab77d -->|defined in| f167816d_d50d_c1b0_8d9c_34eab5a1f482
  e245c584_8c8e_040c_e439_fb0e03102a40["CaseIgnoringComparator()"]
  21b254d0_037f_fd41_8caf_d1200f0ab77d -->|method| e245c584_8c8e_040c_e439_fb0e03102a40
  8d781efd_dc6a_e135_e27a_801800c9237b["compare()"]
  21b254d0_037f_fd41_8caf_d1200f0ab77d -->|method| 8d781efd_dc6a_e135_e27a_801800c9237b
  71013b3f_9298_2f4c_6894_28144d04b2dc["Object()"]
  21b254d0_037f_fd41_8caf_d1200f0ab77d -->|method| 71013b3f_9298_2f4c_6894_28144d04b2dc

Relationship Graph

Source Code

codec-http/src/main/java/io/netty/handler/codec/http/multipart/CaseIgnoringComparator.java lines 21–56

final class CaseIgnoringComparator implements Comparator<CharSequence>, Serializable {

    private static final long serialVersionUID = 4582133183775373862L;

    static final CaseIgnoringComparator INSTANCE = new CaseIgnoringComparator();

    private CaseIgnoringComparator() {
    }

    @Override
    public int compare(CharSequence o1, CharSequence o2) {
        int o1Length = o1.length();
        int o2Length = o2.length();
        int min = Math.min(o1Length, o2Length);
        for (int i = 0; i < min; i++) {
            char c1 = o1.charAt(i);
            char c2 = o2.charAt(i);
            if (c1 != c2) {
                c1 = Character.toUpperCase(c1);
                c2 = Character.toUpperCase(c2);
                if (c1 != c2) {
                    c1 = Character.toLowerCase(c1);
                    c2 = Character.toLowerCase(c2);
                    if (c1 != c2) {
                        return c1 - c2;
                    }
                }
            }
        }
        return o1Length - o2Length;
    }

    private Object readResolve() {
        return INSTANCE;
    }
}

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free