mirror of
https://gitee.com/dcren/initializr.git
synced 2025-07-16 16:50:42 +08:00
Additional visibility changes needed in new Java code
This commit is contained in:
parent
ad6430b92a
commit
1385e82eb5
@ -32,7 +32,7 @@ import io.spring.initializr.metadata.InitializrMetadataProvider;
|
||||
public class InitializrActuatorEndpointsAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
BomRangesInfoContributor bomRangesInfoContributor(
|
||||
public BomRangesInfoContributor bomRangesInfoContributor(
|
||||
InitializrMetadataProvider metadataProvider) {
|
||||
return new BomRangesInfoContributor(metadataProvider);
|
||||
}
|
||||
|
@ -47,7 +47,8 @@ import io.spring.initializr.actuate.metric.ProjectGenerationMetricsListener;
|
||||
public class InitializrMetricsConfiguration {
|
||||
|
||||
@Bean
|
||||
ProjectGenerationMetricsListener metricsListener(CounterService counterService) {
|
||||
public ProjectGenerationMetricsListener metricsListener(
|
||||
CounterService counterService) {
|
||||
return new ProjectGenerationMetricsListener(counterService);
|
||||
}
|
||||
|
||||
@ -56,20 +57,12 @@ public class InitializrMetricsConfiguration {
|
||||
@EnableScheduling
|
||||
@EnableConfigurationProperties(MetricsProperties.class)
|
||||
@Configuration
|
||||
public static class MetricsExportConfiguration {
|
||||
|
||||
@Autowired
|
||||
RedisConnectionFactory connectionFactory;
|
||||
|
||||
@Autowired
|
||||
MetricsProperties metrics;
|
||||
|
||||
@Autowired
|
||||
ApplicationContext context;
|
||||
protected static class MetricsExportConfiguration {
|
||||
|
||||
@Bean
|
||||
@ExportMetricWriter
|
||||
MetricWriter writer() {
|
||||
public MetricWriter writer(RedisConnectionFactory connectionFactory,
|
||||
MetricsProperties metrics, ApplicationContext context) {
|
||||
return new RedisMetricRepository(connectionFactory,
|
||||
metrics.getPrefix() + metrics.getId(context.getId()) + "."
|
||||
+ ObjectUtils.getIdentityHexString(context) + ".",
|
||||
|
@ -48,7 +48,7 @@ class InitializrStatsAutoConfiguration {
|
||||
private StatsProperties statsProperties;
|
||||
|
||||
@Bean
|
||||
ProjectGenerationStatPublisher projectRequestStatHandler(
|
||||
public ProjectGenerationStatPublisher projectRequestStatHandler(
|
||||
InitializrMetadataProvider provider) {
|
||||
return new ProjectGenerationStatPublisher(
|
||||
new ProjectRequestDocumentFactory(provider), statsProperties,
|
||||
@ -57,7 +57,7 @@ class InitializrStatsAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean(name = "statsRetryTemplate")
|
||||
RetryTemplate statsRetryTemplate() {
|
||||
public RetryTemplate statsRetryTemplate() {
|
||||
RetryTemplate retryTemplate = new RetryTemplate();
|
||||
ExponentialBackOffPolicy backOffPolicy = new ExponentialBackOffPolicy();
|
||||
backOffPolicy.setInitialInterval(3000L);
|
||||
|
@ -53,14 +53,14 @@ public class MetricsProperties {
|
||||
@Value("${spring.metrics.export.default.delayMillis:5000}")
|
||||
private long rateMillis = 5000L;
|
||||
|
||||
String getPrefix() {
|
||||
public String getPrefix() {
|
||||
if (prefix.endsWith(".")) {
|
||||
return prefix;
|
||||
}
|
||||
return prefix + ".";
|
||||
}
|
||||
|
||||
String getId(String defaultValue) {
|
||||
public String getId(String defaultValue) {
|
||||
if (StringUtils.hasText(id)) return id;
|
||||
return defaultValue;
|
||||
}
|
||||
|
@ -56,16 +56,16 @@ public class MetricsExportTests {
|
||||
public RedisRunning running = new RedisRunning();
|
||||
|
||||
@Autowired
|
||||
ProjectGenerationMetricsListener listener;
|
||||
private ProjectGenerationMetricsListener listener;
|
||||
|
||||
@Autowired
|
||||
@Qualifier("writer")
|
||||
MetricWriter writer;
|
||||
private MetricWriter writer;
|
||||
|
||||
RedisMetricRepository repository;
|
||||
private RedisMetricRepository repository;
|
||||
|
||||
@Before
|
||||
public void init() {
|
||||
public void init() throws Exception {
|
||||
repository = (RedisMetricRepository) writer;
|
||||
repository.findAll().forEach(it -> {
|
||||
repository.reset(it.getName());
|
||||
@ -83,10 +83,10 @@ public class MetricsExportTests {
|
||||
@Configuration
|
||||
@EnableAutoConfiguration
|
||||
@EnableConfigurationProperties(InitializrProperties.class)
|
||||
static class Config {
|
||||
protected static class Config {
|
||||
|
||||
@Bean
|
||||
InitializrMetadataProvider initializrMetadataProvider(
|
||||
public InitializrMetadataProvider initializrMetadataProvider(
|
||||
InitializrProperties properties) {
|
||||
InitializrMetadata metadata = InitializrMetadataBuilder
|
||||
.fromInitializrProperties(properties).build();
|
||||
|
@ -27,7 +27,7 @@ import io.spring.initializr.test.metadata.InitializrMetadataTestBuilder;
|
||||
*/
|
||||
abstract class AbstractInitializrStatTests {
|
||||
|
||||
InitializrMetadata metadata = InitializrMetadataTestBuilder
|
||||
private final InitializrMetadata metadata = InitializrMetadataTestBuilder
|
||||
.withDefaults()
|
||||
.addDependencyGroup("core", "security", "validation", "aop")
|
||||
.addDependencyGroup("web", "web", "data-rest", "jersey")
|
||||
@ -45,4 +45,8 @@ abstract class AbstractInitializrStatTests {
|
||||
return request;
|
||||
}
|
||||
|
||||
public InitializrMetadata getMetadata() {
|
||||
return metadata;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -184,32 +184,32 @@ public class MainControllerStatsIntegrationTests
|
||||
}
|
||||
|
||||
@RestController
|
||||
static class StatsMockController {
|
||||
protected static class StatsMockController {
|
||||
|
||||
private final List<Content> stats = new ArrayList<>();
|
||||
|
||||
@RequestMapping(path = "/elastic/test/my-entity", method = RequestMethod.POST)
|
||||
void handleProjectRequestDocument(RequestEntity<String> input) {
|
||||
public void handleProjectRequestDocument(RequestEntity<String> input) {
|
||||
String authorization = input.getHeaders().getFirst(HttpHeaders.AUTHORIZATION);
|
||||
Content content = new Content(authorization, input.getBody());
|
||||
this.stats.add(content);
|
||||
}
|
||||
|
||||
@RequestMapping(path = "/elastic-error/test/my-entity", method = RequestMethod.POST)
|
||||
void handleExpectedError() {
|
||||
public void handleExpectedError() {
|
||||
throw new IllegalStateException("Expected exception");
|
||||
}
|
||||
|
||||
static class Content {
|
||||
public static class Content {
|
||||
|
||||
public Content(String authorization, String body) {
|
||||
this.authorization = authorization;
|
||||
json = body;
|
||||
}
|
||||
|
||||
String authorization;
|
||||
private String authorization;
|
||||
|
||||
String json;
|
||||
private String json;
|
||||
|
||||
}
|
||||
|
||||
|
@ -52,7 +52,7 @@ public class ProjectGenerationStatPublisherTests extends AbstractInitializrStatT
|
||||
public void setUp() {
|
||||
this.properties = createProperties();
|
||||
ProjectRequestDocumentFactory documentFactory =
|
||||
new ProjectRequestDocumentFactory(createProvider(metadata));
|
||||
new ProjectRequestDocumentFactory(createProvider(getMetadata()));
|
||||
this.retryTemplate = new RetryTemplate();
|
||||
this.statPublisher = new ProjectGenerationStatPublisher(documentFactory, properties, retryTemplate);
|
||||
mockServer = MockRestServiceServer.createServer(this.statPublisher.getRestTemplate());
|
||||
|
@ -36,7 +36,7 @@ import io.spring.initializr.generator.ProjectRequest;
|
||||
public class ProjectRequestDocumentFactoryTests extends AbstractInitializrStatTests {
|
||||
|
||||
private final ProjectRequestDocumentFactory factory =
|
||||
new ProjectRequestDocumentFactory(createProvider(metadata));
|
||||
new ProjectRequestDocumentFactory(createProvider(getMetadata()));
|
||||
|
||||
@Test
|
||||
public void createDocumentForSimpleProject() {
|
||||
|
@ -36,10 +36,10 @@ public class MetricsAssert {
|
||||
|
||||
public MetricsAssert hasValue(long value, String... metrics) {
|
||||
Arrays.asList(metrics).forEach(it -> {
|
||||
Long actual = counterService.values.get(it);
|
||||
Long actual = counterService.getValues().get(it);
|
||||
if (actual == null) {
|
||||
fail("Metric '" + it + "' not found, got '"
|
||||
+ counterService.values.keySet() + "'");
|
||||
+ counterService.getValues().keySet() + "'");
|
||||
}
|
||||
assertEquals("Wrong value for metric " + it, value, actual.longValue());
|
||||
});
|
||||
@ -49,15 +49,15 @@ public class MetricsAssert {
|
||||
public MetricsAssert hasNoValue(String... metrics) {
|
||||
Arrays.asList(metrics).forEach(it -> {
|
||||
assertEquals("Metric '" + it + "' should not be registered", null,
|
||||
counterService.values.get(it));
|
||||
counterService.getValues().get(it));
|
||||
});
|
||||
return this;
|
||||
}
|
||||
|
||||
public MetricsAssert metricsCount(int count) {
|
||||
assertEquals(
|
||||
"Wrong number of metrics, got '" + counterService.values.keySet() + "'",
|
||||
count, counterService.values.size());
|
||||
"Wrong number of metrics, got '" + counterService.getValues().keySet() + "'",
|
||||
count, counterService.getValues().size());
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
|
||||
*/
|
||||
public class RedisRunning extends TestWatcher {
|
||||
|
||||
JedisConnectionFactory connectionFactory;
|
||||
private JedisConnectionFactory connectionFactory;
|
||||
|
||||
@Override
|
||||
public Statement apply(Statement base, Description description) {
|
||||
|
@ -28,25 +28,29 @@ import org.springframework.boot.actuate.metrics.CounterService;
|
||||
*/
|
||||
public class TestCounterService implements CounterService {
|
||||
|
||||
final Map<String, Long> values = new HashMap<>();
|
||||
private final Map<String, Long> values = new HashMap<>();
|
||||
|
||||
@Override
|
||||
public void increment(String metricName) {
|
||||
Long value = values.get(metricName);
|
||||
Long value = getValues().get(metricName);
|
||||
Long valueToSet = value!=null ? ++value : 1;
|
||||
values.put(metricName, valueToSet);
|
||||
getValues().put(metricName, valueToSet);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void decrement(String metricName) {
|
||||
Long value = values.get(metricName);
|
||||
Long value = getValues().get(metricName);
|
||||
Long valueToSet = value!=null ? +--value : -1;
|
||||
values.put(metricName, valueToSet);
|
||||
getValues().put(metricName, valueToSet);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reset(String metricName) {
|
||||
values.put(metricName, 0L);
|
||||
getValues().put(metricName, 0L);
|
||||
}
|
||||
|
||||
public Map<String, Long> getValues() {
|
||||
return values;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -18,6 +18,7 @@ package io.spring.initializr.metadata
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonInclude
|
||||
import groovy.transform.ToString
|
||||
import io.spring.initializr.metadata.BillOfMaterials.Mapping;
|
||||
import io.spring.initializr.util.InvalidVersionException
|
||||
import io.spring.initializr.util.Version
|
||||
import io.spring.initializr.util.VersionParser
|
||||
@ -69,6 +70,10 @@ class BillOfMaterials {
|
||||
|
||||
final List<Mapping> mappings = []
|
||||
|
||||
static BillOfMaterials create(String groupId, String artifactId, String version) {
|
||||
new BillOfMaterials(groupId: groupId, artifactId: artifactId, version: version)
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine the version placeholder to use for this instance. If a version
|
||||
* property is defined, this returns the reference for the property. Otherwise
|
||||
@ -130,6 +135,10 @@ class BillOfMaterials {
|
||||
|
||||
private VersionRange range
|
||||
|
||||
static Mapping create(String versionRange, String version) {
|
||||
new Mapping(versionRange: versionRange, version: version)
|
||||
}
|
||||
|
||||
String determineVersionRangeRequirement() {
|
||||
range.toString()
|
||||
}
|
||||
|
@ -16,20 +16,20 @@
|
||||
|
||||
package io.spring.initializr.web
|
||||
|
||||
import org.junit.runner.RunWith
|
||||
import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT
|
||||
import io.spring.initializr.web.AbstractInitializrIntegrationTests.Config
|
||||
|
||||
import org.junit.runner.RunWith
|
||||
import org.springframework.boot.context.embedded.LocalServerPort
|
||||
import org.springframework.boot.test.context.SpringBootTest
|
||||
import org.springframework.test.context.junit4.SpringRunner
|
||||
|
||||
import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT
|
||||
|
||||
/**
|
||||
* @author Stephane Nicoll
|
||||
* @author Dave Syer
|
||||
*/
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(webEnvironment = RANDOM_PORT)
|
||||
@SpringBootTest(classes = Config, webEnvironment = RANDOM_PORT)
|
||||
abstract class AbstractFullStackInitializrIntegrationTests
|
||||
extends AbstractInitializrIntegrationTests {
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user