diff --git a/initializr-actuator/src/main/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactory.java b/initializr-actuator/src/main/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactory.java index dfaaa9e8..43e0bdb4 100644 --- a/initializr-actuator/src/main/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactory.java +++ b/initializr-actuator/src/main/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2022 the original author or authors. + * Copyright 2012-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -99,7 +99,7 @@ public class ProjectRequestDocumentFactory { private String determineBuildSystem(ProjectRequest request) { String type = request.getType(); String[] elements = type.split("-"); - return (elements.length == 2) ? elements[0] : null; + return (elements.length >= 2) ? elements[0] : null; } private VersionInformation determineVersionInformation(ProjectRequest request) { diff --git a/initializr-actuator/src/test/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactoryTests.java b/initializr-actuator/src/test/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactoryTests.java index 004e94a8..cf0d93d2 100755 --- a/initializr-actuator/src/test/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactoryTests.java +++ b/initializr-actuator/src/test/java/io/spring/initializr/actuate/stat/ProjectRequestDocumentFactoryTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2020 the original author or authors. + * Copyright 2012-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -217,6 +217,16 @@ class ProjectRequestDocumentFactoryTests { assertThat(document.getErrorState().getDependencies()).isNull(); } + @Test + void createDocumentExtendedType() { + ProjectRequest request = createProjectRequest(); + request.setType("gradle-project-kotlin"); + ProjectGeneratedEvent event = createProjectGeneratedEvent(request); + ProjectRequestDocument document = this.factory.createDocument(event); + assertThat(document.getType()).isEqualTo("gradle-project-kotlin"); + assertThat(document.getBuildSystem()).isEqualTo("gradle"); + } + @Test void createDocumentInvalidDependency() { ProjectRequest request = createProjectRequest();