124 if (lastEntry != null) {
125 toAddTo.append('&');
126 if (showWhiteSpace)
127 toAddTo.append(' ');
128 lastEntry.appendQuotedChars(toAddTo);
129 appendQuotedExtension(toAddTo);
130 if (showWhiteSpace)
131 toAddTo.append(' ');
132 }
133 switch (strength) {
134 case Collator.IDENTICAL: toAddTo.append('='); break;
135 case Collator.TERTIARY: toAddTo.append(','); break;
136 case Collator.SECONDARY: toAddTo.append(';'); break;
137 case Collator.PRIMARY: toAddTo.append('<'); break;
138 case RESET: toAddTo.append('&'); break;
139 case UNSET: toAddTo.append('?'); break;
140 }
141 if (showWhiteSpace)
142 toAddTo.append(' ');
143 appendQuoted(chars,toAddTo);
144 if (showExtension && extension.length() != 0) {
145 toAddTo.append('/');
146 appendQuoted(extension,toAddTo);
147 }
148 }
149
150 static void appendQuoted(String chars, StringBuffer toAddTo) {
151 boolean inQuote = false;
152 char ch = chars.charAt(0);
153 if (Character.isSpaceChar(ch)) {
154 inQuote = true;
155 toAddTo.append('\'');
156 } else {
157 if (PatternEntry.isSpecialChar(ch)) {
158 inQuote = true;
159 toAddTo.append('\'');
160 } else {
161 switch (ch) {
162 case 0x0010: case '\f': case '\r':
163 case '\t': case '\n': case '@':
164 inQuote = true;
|
124 if (lastEntry != null) {
125 toAddTo.append('&');
126 if (showWhiteSpace)
127 toAddTo.append(' ');
128 lastEntry.appendQuotedChars(toAddTo);
129 appendQuotedExtension(toAddTo);
130 if (showWhiteSpace)
131 toAddTo.append(' ');
132 }
133 switch (strength) {
134 case Collator.IDENTICAL: toAddTo.append('='); break;
135 case Collator.TERTIARY: toAddTo.append(','); break;
136 case Collator.SECONDARY: toAddTo.append(';'); break;
137 case Collator.PRIMARY: toAddTo.append('<'); break;
138 case RESET: toAddTo.append('&'); break;
139 case UNSET: toAddTo.append('?'); break;
140 }
141 if (showWhiteSpace)
142 toAddTo.append(' ');
143 appendQuoted(chars,toAddTo);
144 if (showExtension && !extension.isEmpty()) {
145 toAddTo.append('/');
146 appendQuoted(extension,toAddTo);
147 }
148 }
149
150 static void appendQuoted(String chars, StringBuffer toAddTo) {
151 boolean inQuote = false;
152 char ch = chars.charAt(0);
153 if (Character.isSpaceChar(ch)) {
154 inQuote = true;
155 toAddTo.append('\'');
156 } else {
157 if (PatternEntry.isSpecialChar(ch)) {
158 inQuote = true;
159 toAddTo.append('\'');
160 } else {
161 switch (ch) {
162 case 0x0010: case '\f': case '\r':
163 case '\t': case '\n': case '@':
164 inQuote = true;
|