001package gudusoft.gsqlparser.dlineage.graph.utils; 002 003public class EntityArrays { 004 005 private static final String[][] ISO8859_1_ESCAPE_TABLE = new String[][]{ 006 {" ", " "}, {"¡", "¡"}, {"¢", "¢"}, {"£", "£"}, 007 {"¤", "¤"}, {"¥", "¥"}, {"¦", "¦"}, {"§", "§"}, 008 {"¨", "¨"}, {"©", "©"}, {"ª", "ª"}, {"«", "«"}, 009 {"¬", "¬"}, {"\u00ad", "­"}, {"®", "®"}, {"¯", "¯"}, 010 {"°", "°"}, {"±", "±"}, {"²", "²"}, {"³", "³"}, 011 {"´", "´"}, {"µ", "µ"}, {"¶", "¶"}, {"·", "·"}, 012 {"¸", "¸"}, {"¹", "¹"}, {"º", "º"}, {"»", "»"}, 013 {"¼", "¼"}, {"½", "½"}, {"¾", "¾"}, {"¿", "¿"}, 014 {"À", "À"}, {"Á", "Á"}, {"Â", "Â"}, {"Ã", "Ã"}, 015 {"Ä", "Ä"}, {"Å", "Å"}, {"Æ", "Æ"}, {"Ç", "Ç"}, 016 {"È", "È"}, {"É", "É"}, {"Ê", "Ê"}, {"Ë", "Ë"}, 017 {"Ì", "Ì"}, {"Í", "Í"}, {"Î", "Î"}, {"Ï", "Ï"}, 018 {"Ð", "Ð"}, {"Ñ", "Ñ"}, {"Ò", "Ò"}, {"Ó", "Ó"}, 019 {"Ô", "Ô"}, {"Õ", "Õ"}, {"Ö", "Ö"}, {"×", "×"}, 020 {"Ø", "Ø"}, {"Ù", "Ù"}, {"Ú", "Ú"}, {"Û", "Û"}, 021 {"Ü", "Ü"}, {"Ý", "Ý"}, {"Þ", "Þ"}, {"ß", "ß"}, 022 {"à", "à"}, {"á", "á"}, {"â", "â"}, {"ã", "ã"}, 023 {"ä", "ä"}, {"å", "å"}, {"æ", "æ"}, {"ç", "ç"}, 024 {"è", "è"}, {"é", "é"}, {"ê", "ê"}, {"ë", "ë"}, 025 {"ì", "ì"}, {"í", "í"}, {"î", "î"}, {"ï", "ï"}, 026 {"ð", "ð"}, {"ñ", "ñ"}, {"ò", "ò"}, {"ó", "ó"}, 027 {"ô", "ô"}, {"õ", "õ"}, {"ö", "ö"}, {"÷", "÷"}, 028 {"ø", "ø"}, {"ù", "ù"}, {"ú", "ú"}, {"û", "û"}, 029 {"ü", "ü"}, {"ý", "ý"}, {"þ", "þ"}, {"ÿ", "ÿ"} 030 }; 031 032 private static final String[][] ISO8859_1_UNESCAPE_TABLE; 033 private static final String[][] HTML40_EXTENDED_ESCAPE_TABLE; 034 private static final String[][] HTML40_EXTENDED_UNESCAPE_TABLE; 035 private static final String[][] BASIC_ESCAPE_TABLE; 036 private static final String[][] BASIC_UNESCAPE_TABLE; 037 private static final String[][] APOS_ESCAPE_TABLE; 038 private static final String[][] APOS_UNESCAPE_TABLE; 039 private static final String[][] JAVA_CTRL_CHARS_ESCAPE_TABLE; 040 private static final String[][] JAVA_CTRL_CHARS_UNESCAPE_TABLE; 041 042 public EntityArrays() { 043 } 044 045 public static String[][] getIso8859_1Escape() { 046 return ISO8859_1_ESCAPE_TABLE.clone(); 047 } 048 049 public static String[][] getIso8859_1Unescape() { 050 return ISO8859_1_UNESCAPE_TABLE.clone(); 051 } 052 053 public static String[][] getHtml40ExtendedEscape() { 054 return HTML40_EXTENDED_ESCAPE_TABLE.clone(); 055 } 056 057 public static String[][] getHtml40ExtendedUnescape() { 058 return HTML40_EXTENDED_UNESCAPE_TABLE.clone(); 059 } 060 061 public static String[][] getBasicEscape() { 062 return BASIC_ESCAPE_TABLE.clone(); 063 } 064 065 public static String[][] getBasicUnescape() { 066 return BASIC_UNESCAPE_TABLE.clone(); 067 } 068 069 public static String[][] getAposEscape() { 070 return APOS_ESCAPE_TABLE.clone(); 071 } 072 073 public static String[][] getAposUnescape() { 074 return APOS_UNESCAPE_TABLE.clone(); 075 } 076 077 public static String[][] getJavaCtrlCharsEscape() { 078 return JAVA_CTRL_CHARS_ESCAPE_TABLE.clone(); 079 } 080 081 public static String[][] getJavaCtrlCharsUnescape() { 082 return JAVA_CTRL_CHARS_UNESCAPE_TABLE.clone(); 083 } 084 085 public static String[][] invert(String[][] array) { 086 String[][] inverted = new String[array.length][2]; 087 for (int i = 0; i < array.length; i++) { 088 inverted[i][0] = array[i][1]; 089 inverted[i][1] = array[i][0]; 090 } 091 return inverted; 092 } 093 094 static { 095 ISO8859_1_UNESCAPE_TABLE = invert(ISO8859_1_ESCAPE_TABLE); 096 097 HTML40_EXTENDED_ESCAPE_TABLE = new String[][]{ 098 {"ƒ", "ƒ"}, {"Α", "Α"}, {"Β", "Β"}, {"Γ", "Γ"}, 099 {"Δ", "Δ"}, {"Ε", "Ε"}, {"Ζ", "Ζ"}, {"Η", "Η"}, 100 {"Θ", "Θ"}, {"Ι", "Ι"}, {"Κ", "Κ"}, {"Λ", "Λ"}, 101 {"Μ", "Μ"}, {"Ν", "Ν"}, {"Ξ", "Ξ"}, {"Ο", "Ο"}, 102 {"Π", "Π"}, {"Ρ", "Ρ"}, {"Σ", "Σ"}, {"Τ", "Τ"}, 103 {"Υ", "Υ"}, {"Φ", "Φ"}, {"Χ", "Χ"}, {"Ψ", "Ψ"}, 104 {"Ω", "Ω"}, {"α", "α"}, {"β", "β"}, {"γ", "γ"}, 105 {"δ", "δ"}, {"ε", "ε"}, {"ζ", "ζ"}, {"η", "η"}, 106 {"θ", "θ"}, {"ι", "ι"}, {"κ", "κ"}, {"λ", "λ"}, 107 {"μ", "μ"}, {"ν", "ν"}, {"ξ", "ξ"}, {"ο", "ο"}, 108 {"π", "π"}, {"ρ", "ρ"}, {"ς", "ς"}, {"σ", "σ"}, 109 {"τ", "τ"}, {"υ", "υ"}, {"φ", "φ"}, {"χ", "χ"}, 110 {"ψ", "ψ"}, {"ω", "ω"}, {"ϑ", "ϑ"}, {"ϒ", "ϒ"}, 111 {"ϖ", "ϖ"}, {"•", "•"}, {"…", "…"}, {"′", "′"}, 112 {"″", "″"}, {"‾", "‾"}, {"⁄", "⁄"}, {"℘", "℘"}, 113 {"ℑ", "ℑ"}, {"ℜ", "ℜ"}, {"™", "™"}, {"ℵ", "ℵ"}, 114 {"←", "←"}, {"↑", "↑"}, {"→", "→"}, {"↓", "↓"}, 115 {"↔", "↔"}, {"↵", "↵"}, {"⇐", "⇐"}, {"⇑", "⇑"}, 116 {"⇒", "⇒"}, {"⇓", "⇓"}, {"⇔", "⇔"}, {"∀", "∀"}, 117 {"∂", "∂"}, {"∃", "∃"}, {"∅", "∅"}, {"∇", "∇"}, 118 {"∈", "∈"}, {"∉", "∉"}, {"∋", "∋"}, {"∏", "∏"}, 119 {"∑", "∑"}, {"−", "−"}, {"∗", "∗"}, {"√", "√"}, 120 {"∝", "∝"}, {"∞", "∞"}, {"∠", "∠"}, {"∧", "∧"}, 121 {"∨", "∨"}, {"∩", "∩"}, {"∪", "∪"}, {"∫", "∫"}, 122 {"∴", "∴"}, {"∼", "∼"}, {"≅", "≅"}, {"≈", "≈"}, 123 {"≠", "≠"}, {"≡", "≡"}, {"≤", "≤"}, {"≥", "≥"}, 124 {"⊂", "⊂"}, {"⊃", "⊃"}, {"⊄", "⊄"}, {"⊆", "⊆"}, 125 {"⊇", "⊇"}, {"⊕", "⊕"}, {"⊗", "⊗"}, {"⊥", "⊥"}, 126 {"⋅", "⋅"}, {"⌈", "⌈"}, {"⌉", "⌉"}, {"⌊", "⌊"}, 127 {"⌋", "⌋"}, {"〈", "⟨"}, {"〉", "⟩"}, {"◊", "◊"}, 128 {"♠", "♠"}, {"♣", "♣"}, {"♥", "♥"}, {"♦", "♦"}, 129 {"Œ", "Œ"}, {"œ", "œ"}, {"Š", "Š"}, {"š", "š"}, 130 {"Ÿ", "Ÿ"}, {"ˆ", "ˆ"}, {"˜", "˜"}, {" ", " "}, 131 {" ", " "}, {" ", " "}, {"\u200c", "‌"}, {"\u200d", "‍"}, 132 {"\u200e", "‎"}, {"\u200f", "‏"}, {"–", "–"}, {"—", "—"}, 133 {"‘", "‘"}, {"’", "’"}, {"‚", "‚"}, {"“", "“"}, 134 {"”", "”"}, {"„", "„"}, {"†", "†"}, {"‡", "‡"}, 135 {"‰", "‰"}, {"‹", "‹"}, {"›", "›"}, {"€", "€"} 136 }; 137 HTML40_EXTENDED_UNESCAPE_TABLE = invert(HTML40_EXTENDED_ESCAPE_TABLE); 138 139 BASIC_ESCAPE_TABLE = new String[][]{{"\"", """}, {"&", "&"}, {"<", "<"}, {">", ">"}}; 140 BASIC_UNESCAPE_TABLE = invert(BASIC_ESCAPE_TABLE); 141 142 APOS_ESCAPE_TABLE = new String[][]{{"'", "'"}}; 143 APOS_UNESCAPE_TABLE = invert(APOS_ESCAPE_TABLE); 144 145 JAVA_CTRL_CHARS_ESCAPE_TABLE = new String[][]{{"\b", "\\b"}, {"\n", "\\n"}, {"\t", "\\t"}, {"\f", "\\f"}, {"\r", "\\r"}}; 146 JAVA_CTRL_CHARS_UNESCAPE_TABLE = invert(JAVA_CTRL_CHARS_ESCAPE_TABLE); 147 } 148}