Commit 2f16a01d authored by Phillip Webb's avatar Phillip Webb

Polish

parent fffc6f5d
...@@ -97,13 +97,17 @@ public class EnvironmentEndpointTests extends AbstractEndpointTests<EnvironmentE ...@@ -97,13 +97,17 @@ public class EnvironmentEndpointTests extends AbstractEndpointTests<EnvironmentE
EnvironmentEndpoint report = getEndpointBean(); EnvironmentEndpoint report = getEndpointBean();
Map<String, Object> env = report.invoke(); Map<String, Object> env = report.invoke();
assertEquals("******", assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("my.services.amqp-free.credentials.uri")); ((Map<String, Object>) env.get("systemProperties"))
.get("my.services.amqp-free.credentials.uri"));
assertEquals("******", assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("credentials.http_api_uri")); ((Map<String, Object>) env.get("systemProperties"))
.get("credentials.http_api_uri"));
assertEquals("******", assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("my.services.cleardb-free.credentials")); ((Map<String, Object>) env.get("systemProperties"))
.get("my.services.cleardb-free.credentials"));
assertEquals("******", assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("foo.mycredentials.uri")); ((Map<String, Object>) env.get("systemProperties"))
.get("foo.mycredentials.uri"));
} }
......
...@@ -22,10 +22,7 @@ import java.util.Collections; ...@@ -22,10 +22,7 @@ import java.util.Collections;
import java.util.HashSet; import java.util.HashSet;
import java.util.Set; import java.util.Set;
import com.mongodb.DB; import org.springframework.beans.BeanUtils;
import com.mongodb.Mongo;
import com.mongodb.MongoClient;
import org.springframework.beans.factory.BeanClassLoaderAware; import org.springframework.beans.factory.BeanClassLoaderAware;
import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.NoSuchBeanDefinitionException; import org.springframework.beans.factory.NoSuchBeanDefinitionException;
...@@ -62,6 +59,10 @@ import org.springframework.util.Assert; ...@@ -62,6 +59,10 @@ import org.springframework.util.Assert;
import org.springframework.util.ClassUtils; import org.springframework.util.ClassUtils;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import com.mongodb.DB;
import com.mongodb.Mongo;
import com.mongodb.MongoClient;
/** /**
* {@link EnableAutoConfiguration Auto-configuration} for Spring Data's mongo support. * {@link EnableAutoConfiguration Auto-configuration} for Spring Data's mongo support.
* <p> * <p>
...@@ -137,20 +138,10 @@ public class MongoDataAutoConfiguration implements BeanClassLoaderAware { ...@@ -137,20 +138,10 @@ public class MongoDataAutoConfiguration implements BeanClassLoaderAware {
throws ClassNotFoundException { throws ClassNotFoundException {
MongoMappingContext context = new MongoMappingContext(); MongoMappingContext context = new MongoMappingContext();
context.setInitialEntitySet(getInitialEntitySet(beanFactory)); context.setInitialEntitySet(getInitialEntitySet(beanFactory));
Class<? extends FieldNamingStrategy> fieldNamingStrategyClass = this.properties. Class<? extends FieldNamingStrategy> strategyClass = this.properties
getFieldNamingStrategy(); .getFieldNamingStrategy();
if (fieldNamingStrategyClass != null) { if (strategyClass != null) {
try { context.setFieldNamingStrategy(BeanUtils.instantiate(strategyClass));
context.setFieldNamingStrategy(fieldNamingStrategyClass.newInstance());
}
catch (InstantiationException e) {
throw new IllegalArgumentException("Invalid custom FieldNamingStrategy " +
"(is it abstract?) '" + fieldNamingStrategyClass.getName() + "'", e);
}
catch (IllegalAccessException e) {
throw new IllegalArgumentException("Invalid custom FieldNamingStrategy " +
"(is the constructor accessible?)'" + fieldNamingStrategyClass.getName() + "'", e);
}
} }
return context; return context;
} }
......
...@@ -133,7 +133,8 @@ public class MongoProperties { ...@@ -133,7 +133,8 @@ public class MongoProperties {
return this.fieldNamingStrategy; return this.fieldNamingStrategy;
} }
public void setFieldNamingStrategy(Class<? extends FieldNamingStrategy> fieldNamingStrategy) { public void setFieldNamingStrategy(
Class<? extends FieldNamingStrategy> fieldNamingStrategy) {
this.fieldNamingStrategy = fieldNamingStrategy; this.fieldNamingStrategy = fieldNamingStrategy;
} }
......
...@@ -35,23 +35,21 @@ public class JspTemplateAvailabilityProvider implements TemplateAvailabilityProv ...@@ -35,23 +35,21 @@ public class JspTemplateAvailabilityProvider implements TemplateAvailabilityProv
public boolean isTemplateAvailable(String view, Environment environment, public boolean isTemplateAvailable(String view, Environment environment,
ClassLoader classLoader, ResourceLoader resourceLoader) { ClassLoader classLoader, ResourceLoader resourceLoader) {
if (ClassUtils.isPresent("org.apache.jasper.compiler.JspConfig", classLoader)) { if (ClassUtils.isPresent("org.apache.jasper.compiler.JspConfig", classLoader)) {
String prefix = getProperty(environment, "spring.mvc.view.prefix", "spring.view.prefix", String prefix = getProperty(environment, "spring.mvc.view.prefix",
WebMvcAutoConfiguration.DEFAULT_PREFIX); "spring.view.prefix", WebMvcAutoConfiguration.DEFAULT_PREFIX);
String suffix = getProperty(environment, "spring.mvc.view.suffix", "spring.view.suffix", String suffix = getProperty(environment, "spring.mvc.view.suffix",
WebMvcAutoConfiguration.DEFAULT_SUFFIX); "spring.view.suffix", WebMvcAutoConfiguration.DEFAULT_SUFFIX);
return resourceLoader.getResource(prefix + view + suffix).exists(); return resourceLoader.getResource(prefix + view + suffix).exists();
} }
return false; return false;
} }
private String getProperty(Environment environment, String key, String deprecatedKey, String defaultValue) { private String getProperty(Environment environment, String key, String deprecatedKey,
String defaultValue) {
if (environment.containsProperty(key)) { if (environment.containsProperty(key)) {
return environment.getProperty(key); return environment.getProperty(key);
} }
if (environment.containsProperty(deprecatedKey)) { return environment.getProperty(deprecatedKey, defaultValue);
return environment.getProperty(deprecatedKey);
}
return defaultValue;
} }
} }
...@@ -131,7 +131,7 @@ public class WebMvcProperties { ...@@ -131,7 +131,7 @@ public class WebMvcProperties {
private String suffix; private String suffix;
public String getPrefix() { public String getPrefix() {
return prefix; return this.prefix;
} }
public void setPrefix(String prefix) { public void setPrefix(String prefix) {
...@@ -139,11 +139,13 @@ public class WebMvcProperties { ...@@ -139,11 +139,13 @@ public class WebMvcProperties {
} }
public String getSuffix() { public String getSuffix() {
return suffix; return this.suffix;
} }
public void setSuffix(String suffix) { public void setSuffix(String suffix) {
this.suffix = suffix; this.suffix = suffix;
} }
} }
} }
...@@ -23,6 +23,7 @@ import org.hamcrest.Matchers; ...@@ -23,6 +23,7 @@ import org.hamcrest.Matchers;
import org.junit.After; import org.junit.After;
import org.junit.Rule; import org.junit.Rule;
import org.junit.Test; import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.springframework.boot.autoconfigure.AutoConfigurationPackages; import org.springframework.boot.autoconfigure.AutoConfigurationPackages;
import org.springframework.boot.autoconfigure.PropertyPlaceholderAutoConfiguration; import org.springframework.boot.autoconfigure.PropertyPlaceholderAutoConfiguration;
import org.springframework.boot.autoconfigure.data.mongo.city.City; import org.springframework.boot.autoconfigure.data.mongo.city.City;
...@@ -41,7 +42,6 @@ import org.springframework.data.mongodb.gridfs.GridFsTemplate; ...@@ -41,7 +42,6 @@ import org.springframework.data.mongodb.gridfs.GridFsTemplate;
import org.springframework.test.util.ReflectionTestUtils; import org.springframework.test.util.ReflectionTestUtils;
import com.mongodb.Mongo; import com.mongodb.Mongo;
import org.junit.rules.ExpectedException;
import static org.hamcrest.Matchers.hasSize; import static org.hamcrest.Matchers.hasSize;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
...@@ -124,11 +124,12 @@ public class MongoDataAutoConfigurationTests { ...@@ -124,11 +124,12 @@ public class MongoDataAutoConfigurationTests {
@Test @Test
public void interfaceFieldNamingStrategy() { public void interfaceFieldNamingStrategy() {
thrown.expectMessage("Invalid custom FieldNamingStrategy"); this.thrown.expectMessage("Invalid custom FieldNamingStrategy");
testFieldNamingStrategy(FieldNamingStrategy.class.getName(), null); testFieldNamingStrategy(FieldNamingStrategy.class.getName(), null);
} }
public void testFieldNamingStrategy(String strategy, Class<? extends FieldNamingStrategy> expectedType) { public void testFieldNamingStrategy(String strategy,
Class<? extends FieldNamingStrategy> expectedType) {
this.context = new AnnotationConfigApplicationContext(); this.context = new AnnotationConfigApplicationContext();
if (strategy != null) { if (strategy != null) {
EnvironmentTestUtils.addEnvironment(this.context, EnvironmentTestUtils.addEnvironment(this.context,
...@@ -137,9 +138,10 @@ public class MongoDataAutoConfigurationTests { ...@@ -137,9 +138,10 @@ public class MongoDataAutoConfigurationTests {
this.context.register(PropertyPlaceholderAutoConfiguration.class, this.context.register(PropertyPlaceholderAutoConfiguration.class,
MongoAutoConfiguration.class, MongoDataAutoConfiguration.class); MongoAutoConfiguration.class, MongoDataAutoConfiguration.class);
this.context.refresh(); this.context.refresh();
MongoMappingContext mappingContext = this.context.getBean(MongoMappingContext.class); MongoMappingContext mappingContext = this.context
FieldNamingStrategy fieldNamingStrategy = .getBean(MongoMappingContext.class);
(FieldNamingStrategy) ReflectionTestUtils.getField(mappingContext, "fieldNamingStrategy"); FieldNamingStrategy fieldNamingStrategy = (FieldNamingStrategy) ReflectionTestUtils
.getField(mappingContext, "fieldNamingStrategy");
assertEquals(expectedType, fieldNamingStrategy.getClass()); assertEquals(expectedType, fieldNamingStrategy.getClass());
} }
......
...@@ -36,7 +36,6 @@ import org.apache.maven.plugins.annotations.Parameter; ...@@ -36,7 +36,6 @@ import org.apache.maven.plugins.annotations.Parameter;
import org.apache.maven.project.MavenProject; import org.apache.maven.project.MavenProject;
import org.apache.maven.shared.artifact.filter.collection.AbstractArtifactFeatureFilter; import org.apache.maven.shared.artifact.filter.collection.AbstractArtifactFeatureFilter;
import org.apache.maven.shared.artifact.filter.collection.FilterArtifacts; import org.apache.maven.shared.artifact.filter.collection.FilterArtifacts;
import org.springframework.boot.loader.tools.FileUtils; import org.springframework.boot.loader.tools.FileUtils;
import org.springframework.boot.loader.tools.MainClassFinder; import org.springframework.boot.loader.tools.MainClassFinder;
...@@ -349,7 +348,8 @@ public abstract class AbstractRunMojo extends AbstractDependencyFilterMojo { ...@@ -349,7 +348,8 @@ public abstract class AbstractRunMojo extends AbstractDependencyFilterMojo {
private void addDependencies(List<URL> urls) throws MalformedURLException, private void addDependencies(List<URL> urls) throws MalformedURLException,
MojoExecutionException { MojoExecutionException {
FilterArtifacts filters = this.useTestClasspath ? getFilters() : getFilters(new TestArtifactFilter()); FilterArtifacts filters = this.useTestClasspath ? getFilters()
: getFilters(new TestArtifactFilter());
Set<Artifact> artifacts = filterDependencies(this.project.getArtifacts(), filters); Set<Artifact> artifacts = filterDependencies(this.project.getArtifacts(), filters);
for (Artifact artifact : artifacts) { for (Artifact artifact : artifacts) {
if (artifact.getFile() != null) { if (artifact.getFile() != null) {
......
...@@ -151,7 +151,7 @@ mvn spring-boot:run ...@@ -151,7 +151,7 @@ mvn spring-boot:run
in such a way that any dependency that is excluded in the plugin's configuration gets excluded in such a way that any dependency that is excluded in the plugin's configuration gets excluded
from the classpath as well. See {{{./examples/exclude-dependency.html}Exclude a dependency}} for from the classpath as well. See {{{./examples/exclude-dependency.html}Exclude a dependency}} for
more details. more details.
Sometimes it is useful to include test dependencies when running the application. For example, Sometimes it is useful to include test dependencies when running the application. For example,
if you want to run your application in a test mode that uses stub classes. If you wish to do this, if you want to run your application in a test mode that uses stub classes. If you wish to do this,
you can set the <<<useTestClasspath>>> parameter to true. Note that this is only applied when you you can set the <<<useTestClasspath>>> parameter to true. Note that this is only applied when you
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment