mirror of
https://gitee.com/dcren/initializr.git
synced 2025-11-09 19:05:01 +08:00
polishing
This commit is contained in:
@@ -54,7 +54,7 @@ class InitializrAutoConfiguration {
|
|||||||
@Bean
|
@Bean
|
||||||
@ConditionalOnMissingBean(InitializrMetadataProvider)
|
@ConditionalOnMissingBean(InitializrMetadataProvider)
|
||||||
InitializrMetadataProvider initializrMetadataProvider(InitializrMetadata metadata) {
|
InitializrMetadataProvider initializrMetadataProvider(InitializrMetadata metadata) {
|
||||||
return new DefaultInitializrMetadataProvider(metadata)
|
new DefaultInitializrMetadataProvider(metadata)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
@@ -66,18 +66,17 @@ class InitializrAutoConfiguration {
|
|||||||
@ConditionalOnMissingBean(CacheManager)
|
@ConditionalOnMissingBean(CacheManager)
|
||||||
CacheManager cacheManager() {
|
CacheManager cacheManager() {
|
||||||
SimpleCacheManager cacheManager = new SimpleCacheManager()
|
SimpleCacheManager cacheManager = new SimpleCacheManager()
|
||||||
cacheManager.setCaches(Arrays.asList(
|
cacheManager.caches = Arrays.asList(
|
||||||
createConcurrentMapCache(600, 'initializr')
|
createConcurrentMapCache(600, 'initializr'))
|
||||||
))
|
|
||||||
cacheManager
|
cacheManager
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ConcurrentMapCache createConcurrentMapCache(Long timeToLive, String name) {
|
private static ConcurrentMapCache createConcurrentMapCache(Long timeToLive, String name) {
|
||||||
CacheBuilder<Object, Object> cacheBuilder =
|
CacheBuilder<Object, Object> cacheBuilder =
|
||||||
CacheBuilder.newBuilder().expireAfterWrite(timeToLive, TimeUnit.SECONDS);
|
CacheBuilder.newBuilder().expireAfterWrite(timeToLive, TimeUnit.SECONDS)
|
||||||
|
|
||||||
ConcurrentMap<Object, Object> map = cacheBuilder.build().asMap();
|
ConcurrentMap<Object, Object> map = cacheBuilder.build().asMap()
|
||||||
new ConcurrentMapCache(name, map, false);
|
new ConcurrentMapCache(name, map, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ class InitializrMetadata {
|
|||||||
* no such dependency exists.
|
* no such dependency exists.
|
||||||
*/
|
*/
|
||||||
Dependency getDependency(String id) {
|
Dependency getDependency(String id) {
|
||||||
return indexedDependencies.get(id)
|
indexedDependencies.get(id)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -214,7 +214,7 @@ class InitializrMetadata {
|
|||||||
* and {@code artifactId}.
|
* and {@code artifactId}.
|
||||||
*/
|
*/
|
||||||
boolean hasCoordinates() {
|
boolean hasCoordinates() {
|
||||||
return groupId != null && artifactId != null
|
groupId != null && artifactId != null
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -313,7 +313,7 @@ class InitializrMetadata {
|
|||||||
}
|
}
|
||||||
|
|
||||||
boolean isDefault() {
|
boolean isDefault() {
|
||||||
return this.defaultValue
|
this.defaultValue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import org.springframework.util.StringUtils
|
|||||||
*/
|
*/
|
||||||
class ProjectGenerationMetricsListener implements ProjectGenerationListener {
|
class ProjectGenerationMetricsListener implements ProjectGenerationListener {
|
||||||
|
|
||||||
private final CounterService counterService;
|
private final CounterService counterService
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
ProjectGenerationMetricsListener(CounterService counterService) {
|
ProjectGenerationMetricsListener(CounterService counterService) {
|
||||||
|
|||||||
@@ -16,6 +16,9 @@
|
|||||||
|
|
||||||
package io.spring.initializr
|
package io.spring.initializr
|
||||||
|
|
||||||
|
import org.slf4j.Logger
|
||||||
|
import org.slf4j.LoggerFactory
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired
|
import org.springframework.beans.factory.annotation.Autowired
|
||||||
import org.springframework.beans.factory.annotation.Value
|
import org.springframework.beans.factory.annotation.Value
|
||||||
import org.springframework.util.Assert
|
import org.springframework.util.Assert
|
||||||
@@ -31,6 +34,8 @@ import static io.spring.initializr.support.GroovyTemplate.template
|
|||||||
*/
|
*/
|
||||||
class ProjectGenerator {
|
class ProjectGenerator {
|
||||||
|
|
||||||
|
private static final Logger logger = LoggerFactory.getLogger(ProjectGenerator)
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
InitializrMetadata metadata
|
InitializrMetadata metadata
|
||||||
|
|
||||||
@@ -153,6 +158,11 @@ class ProjectGenerator {
|
|||||||
Assert.notNull request.bootVersion, 'boot version must not be null'
|
Assert.notNull request.bootVersion, 'boot version must not be null'
|
||||||
def model = [:]
|
def model = [:]
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
|
|
||||||
|
// request resolved so we can log what has been requested
|
||||||
|
logger.info('Processing request{type=' + request.type + ', ' +
|
||||||
|
'dependencies=' + request.dependencies.collect {it.id}+ '}')
|
||||||
|
|
||||||
request.properties.each { model[it.key] = it.value }
|
request.properties.each { model[it.key] = it.value }
|
||||||
model
|
model
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ class GroovyTemplate {
|
|||||||
|
|
||||||
static String template(String name, Map<String, ?> model) throws IOException,
|
static String template(String name, Map<String, ?> model) throws IOException,
|
||||||
CompilationFailedException, ClassNotFoundException {
|
CompilationFailedException, ClassNotFoundException {
|
||||||
return template(new GStringTemplateEngine(), name, model)
|
template(new GStringTemplateEngine(), name, model)
|
||||||
}
|
}
|
||||||
|
|
||||||
static String template(TemplateEngine engine, String name, Map<String, ?> model)
|
static String template(TemplateEngine engine, String name, Map<String, ?> model)
|
||||||
@@ -40,7 +40,7 @@ class GroovyTemplate {
|
|||||||
Writable writable = getTemplate(engine, name).make(model)
|
Writable writable = getTemplate(engine, name).make(model)
|
||||||
StringWriter result = new StringWriter()
|
StringWriter result = new StringWriter()
|
||||||
writable.writeTo(result)
|
writable.writeTo(result)
|
||||||
return result.toString()
|
result.toString()
|
||||||
}
|
}
|
||||||
|
|
||||||
static Template getTemplate(TemplateEngine engine, String name)
|
static Template getTemplate(TemplateEngine engine, String name)
|
||||||
|
|||||||
@@ -35,14 +35,14 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
|
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setup() {
|
void setup() {
|
||||||
TestCounterService counterService = new TestCounterService()
|
TestCounterService counterService = new TestCounterService()
|
||||||
listener = new ProjectGenerationMetricsListener(counterService)
|
listener = new ProjectGenerationMetricsListener(counterService)
|
||||||
metricsAssert = new MetricsAssert(counterService)
|
metricsAssert = new MetricsAssert(counterService)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void projectGenerationCount() {
|
void projectGenerationCount() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
listener.onGeneratedProject(request)
|
listener.onGeneratedProject(request)
|
||||||
@@ -50,7 +50,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void dependencies() {
|
void dependencies() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.style << 'security' << 'spring-data'
|
request.style << 'security' << 'spring-data'
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
@@ -60,7 +60,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void resolvedWebDependency() {
|
void resolvedWebDependency() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.style << 'spring-data'
|
request.style << 'spring-data'
|
||||||
request.packaging = 'war'
|
request.packaging = 'war'
|
||||||
@@ -71,7 +71,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void aliasedDependencyUseStandardId() {
|
void aliasedDependencyUseStandardId() {
|
||||||
InitializrMetadata.Dependency dependency = new InitializrMetadata.Dependency()
|
InitializrMetadata.Dependency dependency = new InitializrMetadata.Dependency()
|
||||||
dependency.id ='foo'
|
dependency.id ='foo'
|
||||||
dependency.aliases << 'foo-old'
|
dependency.aliases << 'foo-old'
|
||||||
@@ -86,7 +86,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultType() {
|
void defaultType() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
listener.onGeneratedProject(request)
|
listener.onGeneratedProject(request)
|
||||||
@@ -94,7 +94,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void explicitType() {
|
void explicitType() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.type = 'build.gradle'
|
request.type = 'build.gradle'
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
@@ -103,7 +103,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultPackaging() {
|
void defaultPackaging() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
listener.onGeneratedProject(request)
|
listener.onGeneratedProject(request)
|
||||||
@@ -111,7 +111,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void explicitPackaging() {
|
void explicitPackaging() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.packaging = 'war'
|
request.packaging = 'war'
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
@@ -120,7 +120,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultJavaVersion() {
|
void defaultJavaVersion() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
listener.onGeneratedProject(request)
|
listener.onGeneratedProject(request)
|
||||||
@@ -128,7 +128,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void explicitJavaVersion() {
|
void explicitJavaVersion() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.javaVersion = '1.8'
|
request.javaVersion = '1.8'
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
@@ -137,7 +137,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultLanguage() {
|
void defaultLanguage() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
listener.onGeneratedProject(request)
|
listener.onGeneratedProject(request)
|
||||||
@@ -145,7 +145,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void explicitLanguage() {
|
void explicitLanguage() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.language = 'groovy'
|
request.language = 'groovy'
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
@@ -154,7 +154,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultBootVersion() {
|
void defaultBootVersion() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
listener.onGeneratedProject(request)
|
listener.onGeneratedProject(request)
|
||||||
@@ -162,7 +162,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void explicitBootVersion() {
|
void explicitBootVersion() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.bootVersion = '1.0.2.RELEASE'
|
request.bootVersion = '1.0.2.RELEASE'
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
@@ -171,7 +171,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void collectAllMetrics() {
|
void collectAllMetrics() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.style << 'web' << 'security'
|
request.style << 'web' << 'security'
|
||||||
request.type = 'gradle.zip'
|
request.type = 'gradle.zip'
|
||||||
@@ -190,7 +190,7 @@ class ProjectGenerationMetricsListenerTests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void incrementMetrics() {
|
void incrementMetrics() {
|
||||||
ProjectRequest request = initialize()
|
ProjectRequest request = initialize()
|
||||||
request.style << 'security' << 'spring-data'
|
request.style << 'security' << 'spring-data'
|
||||||
request.resolve(metadata)
|
request.resolve(metadata)
|
||||||
|
|||||||
@@ -118,7 +118,7 @@ abstract class AbstractInitializerControllerFormIntegrationTests extends Abstrac
|
|||||||
/**
|
/**
|
||||||
* Provide the context of the home page
|
* Provide the context of the home page
|
||||||
*/
|
*/
|
||||||
protected abstract String homeContext();
|
protected abstract String homeContext()
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a {@link HomePage} instance based on the specified {@link HtmlPage}
|
* Create a {@link HomePage} instance based on the specified {@link HtmlPage}
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ abstract class AbstractInitializrControllerIntegrationTests {
|
|||||||
final RestTemplate restTemplate = new RestTemplate()
|
final RestTemplate restTemplate = new RestTemplate()
|
||||||
|
|
||||||
String createUrl(String context) {
|
String createUrl(String context) {
|
||||||
return 'http://localhost:' + port + context
|
'http://localhost:' + port + context
|
||||||
}
|
}
|
||||||
|
|
||||||
String htmlHome() {
|
String htmlHome() {
|
||||||
@@ -119,7 +119,7 @@ abstract class AbstractInitializrControllerIntegrationTests {
|
|||||||
new DefaultInitializrMetadataProvider(metadata) {
|
new DefaultInitializrMetadataProvider(metadata) {
|
||||||
@Override
|
@Override
|
||||||
protected List<InitializrMetadata.BootVersion> fetchBootVersions() {
|
protected List<InitializrMetadata.BootVersion> fetchBootVersions() {
|
||||||
return null; // Disable metadata fetching from spring.io
|
null // Disable metadata fetching from spring.io
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ class LegacyStsControllerFormIntegrationTests extends AbstractInitializerControl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public static class LegacyStsConfig {
|
static class LegacyStsConfig {
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ abstract class HomePage {
|
|||||||
checkBox.checked = true
|
checkBox.checked = true
|
||||||
} else {
|
} else {
|
||||||
throw new IllegalArgumentException('No dependency with name '
|
throw new IllegalArgumentException('No dependency with name '
|
||||||
+ dependency + ' was found amongst ' + allStyles.keySet());
|
+ dependency + ' was found amongst ' + allStyles.keySet())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user