下面列出了怎么用org.apache.logging.log4j.core.pattern.PatternConverter的API类实例代码及写法,或者点击链接到github查看源代码。
/**
* Constructor.
* @param pattern The file pattern.
*/
public PatternProcessor(final String pattern) {
this.pattern = pattern;
final PatternParser parser = createPatternParser();
// FIXME: this seems to expect List<ArrayPatternConverter> in practice; types need to be fixed around this
final List<PatternConverter> converters = new ArrayList<>();
final List<FormattingInfo> fields = new ArrayList<>();
parser.parse(pattern, converters, fields, false, false, false);
final FormattingInfo[] infoArray = new FormattingInfo[fields.size()];
patternFields = fields.toArray(infoArray);
final ArrayPatternConverter[] converterArray = new ArrayPatternConverter[converters.size()];
patternConverters = converters.toArray(converterArray);
this.fileExtension = FileExtension.lookupForFile(pattern);
for (final ArrayPatternConverter converter : patternConverters) {
// TODO: extract common interface
if (converter instanceof DatePatternConverter) {
final DatePatternConverter dateConverter = (DatePatternConverter) converter;
frequency = calculateFrequency(dateConverter.getPattern());
} else if (converter instanceof FileDatePatternConverter) {
frequency = calculateFrequency(((FileDatePatternConverter) converter).getPattern());
}
}
}
@Test
public void testPlugin(){
PluginManager pm = new PluginManager(PatternConverter.CATEGORY);
pm.collectPlugins();
for(Entry<String, PluginType<?>> entry : pm.getPlugins().entrySet()){
logger.info("{} : {}", entry.getKey(), entry.getValue());
}
logger.error("[testPlugin]", new IOException("io exception message..."));
}