in grails-forge-core/src/main/java/org/grails/forge/build/gradle/GradleConfiguration.java [70:133]
public static Optional<GradleConfiguration> of(@NonNull Scope scope,
@NonNull Language language,
@NonNull TestFramework testFramework) {
switch (scope.getSource()) {
case BUILD_SRC:
if (scope.getPhases().contains(Phase.BUILD)) {
return Optional.of(GradleConfiguration.BUILD);
}
break;
case BUILDSCRIPT:
if (scope.getPhases().contains(Phase.BUILD)) {
return Optional.of(GradleConfiguration.CLASSPATH);
}
break;
case MAIN:
if (scope.getPhases().contains(Phase.ANNOTATION_PROCESSING)) {
return Optional.of(GradleConfiguration.COMPILE_ONLY);
}
if (scope.getPhases().contains(Phase.CONSOLE)) {
return Optional.of(GradleConfiguration.CONSOLE);
}
if (scope.getPhases().contains(Phase.RUNTIME)) {
if (scope.getPhases().contains(Phase.COMPILATION)) {
return Optional.of(GradleConfiguration.IMPLEMENTATION);
}
return Optional.of(GradleConfiguration.RUNTIME_ONLY);
}
if (scope.getPhases().contains(Phase.DEVELOPMENT_ONLY)) {
return Optional.of(GradleConfiguration.DEVELOPMENT_ONLY);
}
if (scope.getPhases().contains(Phase.COMPILATION)) {
return Optional.of(GradleConfiguration.COMPILE_ONLY);
}
if (scope.getPhases().contains(Phase.OPENREWRITE)) {
return Optional.of(GradleConfiguration.OPENREWRITE);
}
if (scope.getPhases().contains(Phase.PROFILE)) {
return Optional.of(GradleConfiguration.PROFILE);
}
if (scope.getPhases().contains(Phase.INTEGRATION_TEST_IMPLEMENTATION_TEST_FIXTURES)) {
return Optional.of(GradleConfiguration.INTEGRATION_TEST_IMPLEMENTATION_TEST_FIXTURES);
}
break;
case TEST:
if (scope.getPhases().contains(Phase.ANNOTATION_PROCESSING)) {
return Optional.of(GradleConfiguration.TEST_COMPILE_ONLY);
}
if (scope.getPhases().contains(Phase.RUNTIME)) {
if (scope.getPhases().contains(Phase.COMPILATION)) {
return Optional.of(GradleConfiguration.TEST_IMPLEMENTATION);
}
return Optional.of(GradleConfiguration.TEST_RUNTIME_ONLY);
}
if (scope.getPhases().contains(Phase.COMPILATION)) {
return Optional.of(GradleConfiguration.TEST_COMPILE_ONLY);
}
break;
default:
return Optional.empty();
}
return Optional.empty();
}