下面列出了org.springframework.util.PropertyPlaceholderHelper#PlaceholderResolver ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private MessageTemplatePlaceholderResolver getPropertyResolver(@NonNull MessageTemplateCompiler compiler) {
Set<PropertyPlaceholderHelper.PlaceholderResolver> resolvers = new HashSet<>();
resolvers.add(compiler.getVariables());
resolvers.addAll(compiler.getResolverSet());
Locale locale = null;
if (compiler.getGuild() != null) {
locale = contextService.getLocale(compiler.getGuild());
resolvers.add(GuildPlaceholderResolver.of(compiler.getGuild(), locale, applicationContext, "server"));
}
if (compiler.getMember() != null) {
if (locale == null) {
locale = contextService.getLocale(compiler.getMember().getGuild());
}
resolvers.add(MemberPlaceholderResolver.of(compiler.getMember(), locale, applicationContext, "member"));
}
TextChannel channel = getTargetChannel(compiler);
if (channel != null) {
if (locale == null) {
locale = contextService.getLocale(channel.getGuild());
}
resolvers.add(ChannelPlaceholderResolver.of(channel, locale, applicationContext, "channel"));
}
return new MessageTemplatePlaceholderResolver(resolvers);
}
public MessageTemplateCompiler withResolver(PropertyPlaceholderHelper.PlaceholderResolver resolver) {
this.resolverSet.add(resolver);
return this;
}
public MessageTemplatePlaceholderResolver(PropertyPlaceholderHelper.PlaceholderResolver... resolvers) {
this(resolvers != null ? Arrays.asList(resolvers) : Collections.emptySet());
}
public MessageTemplatePlaceholderResolver(Collection<? extends PropertyPlaceholderHelper.PlaceholderResolver> resolvers) {
this.resolvers = Set.copyOf(resolvers);
}
private String replacePlaceholders(
PropertyPlaceholderHelper.PlaceholderResolver resolver, String input) {
return this.propertyPlaceholderHelper.replacePlaceholders(input, resolver);
}