|
|
|
@ -11,9 +11,7 @@ import com.github.javaparser.ast.CompilationUnit;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.api.StructuralUnitIdentifier;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.component.BuildTool;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.component.GradleBuildTool;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.component.JavaProgrammingLanguage;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.component.MavenBuildTool;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.component.ProgrammingLanguage;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.model.EntityUnit;
|
|
|
|
|
import ru.ulstu.extractor.heuristic.model.StructuralUnit;
|
|
|
|
@ -37,9 +35,9 @@ public class JavaIdentifier extends StructuralUnitIdentifier {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean canAppliedToProject(List<File> projectFiles) {
|
|
|
|
|
public boolean canAppliedToProject(String projectPath, List<File> projectFiles, List<File> rootProjectFiles) {
|
|
|
|
|
return /*getBuildTool() instanceof GradleBuildTool
|
|
|
|
|
&&*/ getMainProgrammingLanguage(projectFiles).orElse(null) instanceof JavaProgrammingLanguage;
|
|
|
|
|
&&*/ getMainProgrammingLanguage(projectPath, projectFiles, rootProjectFiles).orElse(null) instanceof JavaProgrammingLanguage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -62,18 +60,8 @@ public class JavaIdentifier extends StructuralUnitIdentifier {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Optional getBuildTool(List<File> rootDirectoryFiles) {
|
|
|
|
|
//Todo: refactoring is highly recommended
|
|
|
|
|
Optional<GradleBuildTool> maybeGradleBuildTool = rootDirectoryFiles.stream()
|
|
|
|
|
.filter(file -> file.getName().equals("build.gradle"))
|
|
|
|
|
.findAny().map(file -> new GradleBuildTool());
|
|
|
|
|
|
|
|
|
|
if (maybeGradleBuildTool.isPresent()) {
|
|
|
|
|
return maybeGradleBuildTool;
|
|
|
|
|
}
|
|
|
|
|
return rootDirectoryFiles.stream()
|
|
|
|
|
.filter(file -> file.getName().equals("pom.xml"))
|
|
|
|
|
.findAny().map(file -> new MavenBuildTool());
|
|
|
|
|
public Optional<BuildTool> getBuildTool(List<File> rootDirectoryFiles) {
|
|
|
|
|
return buildToolService.getProjectBuildTool(rootDirectoryFiles);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|