mirror of
https://github.com/spring-projects/spring-boot.git
synced 2024-08-29 03:06:45 +08:00
Polish
This commit is contained in:
parent
68d875bdc6
commit
f0f5f78e25
@ -84,7 +84,9 @@ public class MessageSourceAutoConfiguration {
|
||||
messageSource
|
||||
.setBasenames(commaDelimitedListToStringArray(trimAllWhitespace(this.basename)));
|
||||
}
|
||||
messageSource.setDefaultEncoding(this.encoding.name());
|
||||
if (this.encoding != null) {
|
||||
messageSource.setDefaultEncoding(this.encoding.name());
|
||||
}
|
||||
messageSource.setCacheSeconds(this.cacheSeconds);
|
||||
return messageSource;
|
||||
}
|
||||
|
@ -33,7 +33,6 @@ import org.springframework.jndi.JndiLocatorDelegate;
|
||||
*
|
||||
* @author Eddú Meléndez
|
||||
* @author Stephane Nicoll
|
||||
* @since 1.3.0
|
||||
*/
|
||||
@Configuration
|
||||
@ConditionalOnClass(Session.class)
|
||||
|
@ -18,6 +18,7 @@ package org.springframework.boot.autoconfigure.mail;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
|
||||
import javax.activation.MimeType;
|
||||
import javax.mail.Session;
|
||||
import javax.mail.internet.MimeMessage;
|
||||
@ -78,7 +79,9 @@ public class MailSenderAutoConfiguration {
|
||||
}
|
||||
sender.setUsername(this.properties.getUsername());
|
||||
sender.setPassword(this.properties.getPassword());
|
||||
sender.setDefaultEncoding(this.properties.getDefaultEncoding().name());
|
||||
if (this.properties.getDefaultEncoding() != null) {
|
||||
sender.setDefaultEncoding(this.properties.getDefaultEncoding().name());
|
||||
}
|
||||
if (!this.properties.getProperties().isEmpty()) {
|
||||
sender.setJavaMailProperties(asProperties(this.properties.getProperties()));
|
||||
}
|
||||
@ -90,10 +93,9 @@ public class MailSenderAutoConfiguration {
|
||||
return properties;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Condition to trigger the creation of a {@link JavaMailSenderImpl}. This kicks
|
||||
* in if either the host or jndi name property is set.
|
||||
* Condition to trigger the creation of a {@link JavaMailSenderImpl}. This kicks in if
|
||||
* either the host or jndi name property is set.
|
||||
*/
|
||||
static class MailSenderCondition extends AnyNestedCondition {
|
||||
|
||||
|
@ -146,7 +146,9 @@ public abstract class AbstractTemplateViewResolverProperties extends
|
||||
resolver.setPrefix(getPrefix());
|
||||
resolver.setSuffix(getSuffix());
|
||||
resolver.setCache(isCache());
|
||||
resolver.setContentType(getContentType().toString());
|
||||
if (getContentType() != null) {
|
||||
resolver.setContentType(getContentType().toString());
|
||||
}
|
||||
resolver.setViewNames(getViewNames());
|
||||
resolver.setExposeRequestAttributes(isExposeRequestAttributes());
|
||||
resolver.setAllowRequestOverride(isAllowRequestOverride());
|
||||
|
@ -17,8 +17,6 @@
|
||||
package org.springframework.boot.autoconfigure.template;
|
||||
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@ -103,8 +101,13 @@ public abstract class AbstractViewResolverProperties {
|
||||
}
|
||||
|
||||
public MimeType getContentType() {
|
||||
return (this.contentType.getCharSet() != null ? this.contentType :
|
||||
new MimeType(this.contentType, cloneParametersWithCustomCharset(this.contentType, this.charset)));
|
||||
if (this.contentType.getCharSet() == null) {
|
||||
Map<String, String> parameters = new LinkedHashMap<String, String>();
|
||||
parameters.put("charset", this.charset.name());
|
||||
parameters.putAll(this.contentType.getParameters());
|
||||
return new MimeType(this.contentType, parameters);
|
||||
}
|
||||
return this.contentType;
|
||||
}
|
||||
|
||||
public void setContentType(MimeType contentType) {
|
||||
@ -123,11 +126,4 @@ public abstract class AbstractViewResolverProperties {
|
||||
this.charset = charset;
|
||||
}
|
||||
|
||||
private static Map<String,String> cloneParametersWithCustomCharset(MimeType contentType, Charset charset) {
|
||||
LinkedHashMap<String,String> clone = new LinkedHashMap<String, String>();
|
||||
clone.put("charset", charset.name());
|
||||
clone.putAll(contentType.getParameters());
|
||||
return clone;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -97,7 +97,9 @@ public class ThymeleafAutoConfiguration {
|
||||
resolver.setPrefix(this.properties.getPrefix());
|
||||
resolver.setSuffix(this.properties.getSuffix());
|
||||
resolver.setTemplateMode(this.properties.getMode());
|
||||
resolver.setCharacterEncoding(this.properties.getEncoding().name());
|
||||
if (this.properties.getEncoding() != null) {
|
||||
resolver.setCharacterEncoding(this.properties.getEncoding().name());
|
||||
}
|
||||
resolver.setCacheable(this.properties.isCache());
|
||||
return resolver;
|
||||
}
|
||||
@ -212,10 +214,10 @@ public class ThymeleafAutoConfiguration {
|
||||
if (type.getCharSet() != null) {
|
||||
return type.toString();
|
||||
}
|
||||
LinkedHashMap<String,String> clone = new LinkedHashMap<String, String>();
|
||||
clone.put("charset", charset);
|
||||
clone.putAll(type.getParameters());
|
||||
return new MimeType(type, clone).toString();
|
||||
LinkedHashMap<String, String> parameters = new LinkedHashMap<String, String>();
|
||||
parameters.put("charset", charset);
|
||||
parameters.putAll(type.getParameters());
|
||||
return new MimeType(type, parameters).toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -61,7 +61,7 @@ public class ThymeleafProperties {
|
||||
/**
|
||||
* Template encoding.
|
||||
*/
|
||||
private Charset encoding = DEFAULT_ENCODING;
|
||||
private Charset encoding = DEFAULT_ENCODING;
|
||||
|
||||
/**
|
||||
* Content-Type value.
|
||||
|
@ -19,7 +19,6 @@ package org.springframework.boot.autoconfigure.template;
|
||||
import java.nio.charset.Charset;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.util.MimeTypeUtils;
|
||||
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
@ -32,10 +31,10 @@ import static org.hamcrest.Matchers.hasToString;
|
||||
*/
|
||||
public class ViewResolverPropertiesTest {
|
||||
|
||||
|
||||
@Test
|
||||
public void defaultContentType() {
|
||||
assertThat(new ViewResolverProperties().getContentType(), hasToString("text/html;charset=UTF-8"));
|
||||
assertThat(new ViewResolverProperties().getContentType(),
|
||||
hasToString("text/html;charset=UTF-8"));
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -65,11 +64,12 @@ public class ViewResolverPropertiesTest {
|
||||
ViewResolverProperties properties = new ViewResolverProperties();
|
||||
properties.setContentType(MimeTypeUtils.parseMimeType("text/plain;foo=bar"));
|
||||
properties.setCharset(Charset.forName("UTF-16"));
|
||||
assertThat(properties.getContentType(), hasToString("text/plain;charset=UTF-16;foo=bar"));
|
||||
assertThat(properties.getContentType(),
|
||||
hasToString("text/plain;charset=UTF-16;foo=bar"));
|
||||
}
|
||||
|
||||
|
||||
private static class ViewResolverProperties extends AbstractViewResolverProperties {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -205,7 +205,8 @@ public class ServerPropertiesTests {
|
||||
Map<String, String> map = new HashMap<String, String>();
|
||||
map.put("server.tomcat.uriEncoding", "US-ASCII");
|
||||
bindProperties(map);
|
||||
assertEquals(Charset.forName("US-ASCII"), this.properties.getTomcat().getUriEncoding());
|
||||
assertEquals(Charset.forName("US-ASCII"), this.properties.getTomcat()
|
||||
.getUriEncoding());
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -74,8 +74,9 @@ public class MavenSettings {
|
||||
private final List<Profile> activeProfiles;
|
||||
|
||||
/**
|
||||
* @param settings
|
||||
* @param decryptedSettings
|
||||
* Create a new {@link MavenSettings} instance.
|
||||
* @param settings the source settings
|
||||
* @param decryptedSettings the decrypted settings
|
||||
*/
|
||||
public MavenSettings(Settings settings, SettingsDecryptionResult decryptedSettings) {
|
||||
this.offline = settings.isOffline();
|
||||
@ -166,7 +167,8 @@ public class MavenSettings {
|
||||
org.apache.maven.model.Profile modelProfile = new org.apache.maven.model.Profile();
|
||||
modelProfile.setId(profile.getId());
|
||||
if (profile.getActivation() != null) {
|
||||
modelProfile.setActivation(createModelActivation(profile.getActivation()));
|
||||
modelProfile
|
||||
.setActivation(createModelActivation(profile.getActivation()));
|
||||
}
|
||||
modelProfiles.add(modelProfile);
|
||||
}
|
||||
|
@ -91,15 +91,16 @@ public class MavenSettingsReader {
|
||||
return settingsDecrypter;
|
||||
}
|
||||
|
||||
private void setField(Class<?> clazz, String fieldName, Object target, Object value) {
|
||||
private void setField(Class<?> sourceClass, String fieldName, Object target,
|
||||
Object value) {
|
||||
try {
|
||||
Field field = clazz.getDeclaredField(fieldName);
|
||||
Field field = sourceClass.getDeclaredField(fieldName);
|
||||
field.setAccessible(true);
|
||||
field.set(target, value);
|
||||
}
|
||||
catch (Exception e) {
|
||||
catch (Exception ex) {
|
||||
throw new IllegalStateException("Failed to set field '" + fieldName
|
||||
+ "' on '" + target + "'", e);
|
||||
+ "' on '" + target + "'", ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -44,7 +44,6 @@ public final class RepositoryConfigurationFactory {
|
||||
"spring-snapshot", URI.create("http://repo.spring.io/snapshot"), true);
|
||||
|
||||
private RepositoryConfigurationFactory() {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -27,7 +27,7 @@
|
||||
<password>somepassword</password>
|
||||
</proxy>
|
||||
</proxies>
|
||||
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>active-by-default</id>
|
||||
@ -58,4 +58,4 @@
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
</settings>
|
||||
</settings>
|
||||
|
@ -508,6 +508,8 @@ to configure Aether. The following configuration settings are honored by the CLI
|
||||
Please refer to https://maven.apache.org/settings.html[Maven's settings documentation] for
|
||||
further information.
|
||||
|
||||
|
||||
|
||||
[[cli-whats-next]]
|
||||
== What to read next
|
||||
There are some {github-code}/spring-boot-cli/samples[sample groovy
|
||||
|
@ -26,7 +26,7 @@ import java.util.Locale;
|
||||
*/
|
||||
class DescriptionExtractor {
|
||||
|
||||
static final String NEW_LINE = System.getProperty("line.separator");
|
||||
private static final String NEW_LINE = System.getProperty("line.separator");
|
||||
|
||||
public String getShortDescription(String description) {
|
||||
if (description == null) {
|
||||
|
@ -27,41 +27,42 @@ import static org.junit.Assert.assertEquals;
|
||||
*/
|
||||
public class DescriptionExtractorTests {
|
||||
|
||||
private static final String NEW_LINE = System.getProperty("line.separator");
|
||||
|
||||
private DescriptionExtractor extractor = new DescriptionExtractor();
|
||||
|
||||
@Test
|
||||
public void extractShortDescription() {
|
||||
assertEquals("My short description.",
|
||||
this.extractor.getShortDescription("My short description. More stuff."));
|
||||
String description = this.extractor.getShortDescription("My short "
|
||||
+ "description. More stuff.");
|
||||
assertEquals("My short description.", description);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void extractShortDescriptionNewLineBeforeDot() {
|
||||
assertEquals("My short description.",
|
||||
this.extractor.getShortDescription("My short" + DescriptionExtractor.NEW_LINE +
|
||||
"description." + DescriptionExtractor.NEW_LINE + "More stuff."));
|
||||
String description = this.extractor.getShortDescription("My short" + NEW_LINE
|
||||
+ "description." + NEW_LINE + "More stuff.");
|
||||
assertEquals("My short description.", description);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void extractShortDescriptionNewLineBeforeDotWithSpaces() {
|
||||
assertEquals("My short description.",
|
||||
this.extractor
|
||||
.getShortDescription("My short "
|
||||
+ DescriptionExtractor.NEW_LINE + " description. "
|
||||
+ DescriptionExtractor.NEW_LINE + "More stuff."));
|
||||
String description = this.extractor.getShortDescription("My short " + NEW_LINE
|
||||
+ " description. " + NEW_LINE + "More stuff.");
|
||||
assertEquals("My short description.", description);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void extractShortDescriptionNoDot() {
|
||||
assertEquals("My short description",
|
||||
this.extractor.getShortDescription("My short description"));
|
||||
String description = this.extractor.getShortDescription("My short description");
|
||||
assertEquals("My short description", description);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void extractShortDescriptionNoDotMultipleLines() {
|
||||
assertEquals("My short description",
|
||||
this.extractor.getShortDescription("My short description "
|
||||
+ DescriptionExtractor.NEW_LINE + " More stuff"));
|
||||
String description = this.extractor.getShortDescription("My short description "
|
||||
+ NEW_LINE + " More stuff");
|
||||
assertEquals("My short description", description);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -35,7 +35,8 @@ class ExpressionTree extends ReflectionWrapper {
|
||||
|
||||
private final Class<?> methodInvocationTreeType = findClass("com.sun.source.tree.MethodInvocationTree");
|
||||
|
||||
private final Method methodInvocationArgumentsMethod = findMethod(this.methodInvocationTreeType, "getArguments");
|
||||
private final Method methodInvocationArgumentsMethod = findMethod(
|
||||
this.methodInvocationTreeType, "getArguments");
|
||||
|
||||
private final Class<?> newArrayTreeType = findClass("com.sun.source.tree.NewArrayTree");
|
||||
|
||||
@ -59,7 +60,8 @@ class ExpressionTree extends ReflectionWrapper {
|
||||
|
||||
public Object getFactoryValue() throws Exception {
|
||||
if (this.methodInvocationTreeType.isAssignableFrom(getInstance().getClass())) {
|
||||
List<?> arguments = (List<?>) this.methodInvocationArgumentsMethod.invoke(getInstance());
|
||||
List<?> arguments = (List<?>) this.methodInvocationArgumentsMethod
|
||||
.invoke(getInstance());
|
||||
if (arguments.size() == 1) {
|
||||
return new ExpressionTree(arguments.get(0)).getLiteralValue();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user