use of org.gradle.api.tasks.CompileClasspath in project gradle by gradle.
the class AbstractInputFilePropertyAnnotationHandler method visitPropertyValue.
@Override
public void visitPropertyValue(String propertyName, PropertyValue value, PropertyMetadata propertyMetadata, PropertyVisitor visitor, BeanPropertyContext context) {
Annotation fileNormalization = propertyMetadata.getAnnotationForCategory(NORMALIZATION);
Class<? extends FileNormalizer> fileNormalizer;
if (fileNormalization == null) {
fileNormalizer = null;
} else if (fileNormalization instanceof PathSensitive) {
PathSensitivity pathSensitivity = ((PathSensitive) fileNormalization).value();
fileNormalizer = FileParameterUtils.determineNormalizerForPathSensitivity(pathSensitivity);
} else if (fileNormalization instanceof Classpath) {
fileNormalizer = ClasspathNormalizer.class;
} else if (fileNormalization instanceof CompileClasspath) {
fileNormalizer = CompileClasspathNormalizer.class;
} else {
throw new IllegalStateException("Unknown normalization annotation used: " + fileNormalization);
}
visitor.visitInputFileProperty(propertyName, propertyMetadata.isAnnotationPresent(Optional.class), propertyMetadata.isAnnotationPresent(SkipWhenEmpty.class), determineDirectorySensitivity(propertyMetadata), propertyMetadata.isAnnotationPresent(NormalizeLineEndings.class) ? LineEndingSensitivity.NORMALIZE_LINE_ENDINGS : LineEndingSensitivity.DEFAULT, propertyMetadata.isAnnotationPresent(Incremental.class), fileNormalizer, value, getFilePropertyType());
}
Aggregations