33import com .intellij .util .xmlb .Converter ;
44import com .intellij .xml .util .XmlStringUtil ;
55import org .jetbrains .annotations .NotNull ;
6+ import org .jetbrains .annotations .Nullable ;
67
78import java .util .regex .Pattern ;
89
@@ -16,29 +17,14 @@ public class CsvValueSeparator extends CsvCustomizableElement {
1617 public static final CsvValueSeparator COLON = new CsvValueSeparator (":" , "Colon (:)" , "COLON" );
1718 public static final CsvValueSeparator RS = new CsvValueSeparator ("\u001E " , "Record Separator ([RS])" , "RS" , true );
1819
19- public static CsvValueSeparator getDefaultValueSeparator (String character ) {
20- if (character != null ) {
21- switch (character ) {
22- case "COMMA" :
23- case "," :
24- return COMMA ;
25- case "SEMICOLON" :
26- case ";" :
27- return SEMICOLON ;
28- case "PIPE" :
29- case "|" :
30- return PIPE ;
31- case "TAB" :
32- case "\t " :
33- return TAB ;
34- case "COLON" :
35- case ":" :
36- return COLON ;
37- case "RS" :
38- case "\u001E " :
39- return RS ;
40- default :
41- break ;
20+ public static CsvValueSeparator @ NotNull [] values () {
21+ return new CsvValueSeparator []{ COMMA , SEMICOLON , PIPE , TAB , COLON , RS };
22+ }
23+
24+ private static @ Nullable CsvValueSeparator getDefaultValueSeparator (@ NotNull String character ) {
25+ for (CsvValueSeparator defaultVS : values ()) {
26+ if (defaultVS .getCharacter ().equals (character ) || defaultVS .getName ().equals (character )) {
27+ return defaultVS ;
4228 }
4329 }
4430 return null ;
@@ -52,10 +38,6 @@ public static CsvValueSeparator create(String character) {
5238 return defaultValueSeparator == null ? new CsvValueSeparator (character ) : defaultValueSeparator ;
5339 }
5440
55- public static CsvValueSeparator [] values () {
56- return new CsvValueSeparator []{COMMA , SEMICOLON , PIPE , TAB , COLON , RS };
57- }
58-
5941 public static class CsvValueSeparatorConverter extends Converter <CsvValueSeparator > {
6042 public CsvValueSeparator fromString (@ NotNull String value ) {
6143 return CsvValueSeparator .create (XmlStringUtil .unescapeIllegalXmlChars (value ));
0 commit comments