public final class PatternParser
extends java.lang.Object
EnhancedPatternLayout class
is delegated to the PatternParser class.
It is this class that parses conversion patterns and creates
a chained list of PatternConverters.
| Modifier and Type | Class and Description |
|---|---|
private static class |
PatternParser.ReadOnlyMap
The class wraps another Map but throws exceptions on any attempt to modify the map.
|
| Modifier and Type | Field and Description |
|---|---|
private static int |
CONVERTER_STATE
In converter name state.
|
private static int |
DOT_STATE
Dot state.
|
private static char |
ESCAPE_CHAR
Escape character for format specifier.
|
private static java.util.Map |
FILENAME_PATTERN_RULES
Standard format specifiers for rolling file appenders.
|
private static int |
LITERAL_STATE
Literal state.
|
private static int |
MAX_STATE
Max state.
|
private static int |
MIN_STATE
Min state.
|
private static java.util.Map |
PATTERN_LAYOUT_RULES
Standard format specifiers for EnhancedPatternLayout.
|
| Modifier | Constructor and Description |
|---|---|
private |
PatternParser()
Private constructor.
|
| Modifier and Type | Method and Description |
|---|---|
private static PatternConverter |
createConverter(java.lang.String converterId,
java.lang.StringBuffer currentLiteral,
java.util.Map converterRegistry,
java.util.Map rules,
java.util.List options)
Creates a new PatternConverter.
|
private static int |
extractConverter(char lastChar,
java.lang.String pattern,
int i,
java.lang.StringBuffer convBuf,
java.lang.StringBuffer currentLiteral)
Extract the converter identifier found at position i.
|
private static int |
extractOptions(java.lang.String pattern,
int i,
java.util.List options)
Extract options.
|
private static int |
finalizeConverter(char c,
java.lang.String pattern,
int i,
java.lang.StringBuffer currentLiteral,
FormattingInfo formattingInfo,
java.util.Map converterRegistry,
java.util.Map rules,
java.util.List patternConverters,
java.util.List formattingInfos)
Processes a format specifier sequence.
|
static java.util.Map |
getFileNamePatternRules()
Get standard format specifiers for rolling file appender file specification.
|
static java.util.Map |
getPatternLayoutRules()
Get standard format specifiers for EnhancedPatternLayout.
|
static void |
parse(java.lang.String pattern,
java.util.List patternConverters,
java.util.List formattingInfos,
java.util.Map converterRegistry,
java.util.Map rules)
Parse a format specifier.
|
private static final char ESCAPE_CHAR
private static final int LITERAL_STATE
private static final int CONVERTER_STATE
private static final int DOT_STATE
private static final int MIN_STATE
private static final int MAX_STATE
private static final java.util.Map PATTERN_LAYOUT_RULES
private static final java.util.Map FILENAME_PATTERN_RULES
public static java.util.Map getPatternLayoutRules()
public static java.util.Map getFileNamePatternRules()
private static int extractConverter(char lastChar,
java.lang.String pattern,
int i,
java.lang.StringBuffer convBuf,
java.lang.StringBuffer currentLiteral)
lastChar - last processed character.pattern - format string.i - current index into pattern format.convBuf - buffer to receive conversion specifier.currentLiteral - literal to be output in case format specifier in unrecognized.private static int extractOptions(java.lang.String pattern,
int i,
java.util.List options)
pattern - conversion pattern.i - start of options.options - array to receive extracted optionspublic static void parse(java.lang.String pattern,
java.util.List patternConverters,
java.util.List formattingInfos,
java.util.Map converterRegistry,
java.util.Map rules)
pattern - pattern to parse.patternConverters - list to receive pattern converters.formattingInfos - list to receive field specifiers corresponding to pattern converters.converterRegistry - map of user-supported pattern converters keyed by format specifier, may be null.rules - map of stock pattern converters keyed by format specifier.private static PatternConverter createConverter(java.lang.String converterId, java.lang.StringBuffer currentLiteral, java.util.Map converterRegistry, java.util.Map rules, java.util.List options)
converterId - converterId.currentLiteral - literal to be used if converter is unrecognized or following converter
if converterId contains extra characters.converterRegistry - map of user-supported pattern converters keyed by format specifier, may be null.rules - map of stock pattern converters keyed by format specifier.options - converter options.private static int finalizeConverter(char c,
java.lang.String pattern,
int i,
java.lang.StringBuffer currentLiteral,
FormattingInfo formattingInfo,
java.util.Map converterRegistry,
java.util.Map rules,
java.util.List patternConverters,
java.util.List formattingInfos)
c - initial character of format specifier.pattern - conversion patterni - current position in conversion pattern.currentLiteral - current literal.formattingInfo - current field specifier.converterRegistry - map of user-provided pattern converters keyed by format specifier, may be null.rules - map of stock pattern converters keyed by format specifier.patternConverters - list to receive parsed pattern converter.formattingInfos - list to receive corresponding field specifier.