@ Internal @ UsedByGeneratedCode protected final boolean containsValueForField ( BeanResolutionContext resolutionContext , BeanContext context , int fieldIndex ) { if ( context instanceof ApplicationContext ) { FieldInjectionPoint injectionPoint = fieldInjectionPoints . get ( fieldIndex ) ; final AnnotationMetadata annotationMetadata = injectionPoint . getAnnotationMetadata ( ) ; String valueAnnVal = annotationMetadata . getValue ( Value . class , String . class ) . orElse ( null ) ; String valString = resolvePropertyValueName ( resolutionContext , injectionPoint , valueAnnVal , annotationMetadata ) ; ApplicationContext applicationContext = ( ApplicationContext ) context ; Class fieldType = injectionPoint . getType ( ) ; boolean isConfigProps = fieldType . isAnnotationPresent ( ConfigurationProperties . class ) ; boolean result = isConfigProps || Map . class . isAssignableFrom ( fieldType ) ? applicationContext . containsProperties ( valString ) : applicationContext . containsProperty ( valString ) ; if ( ! result && isConfigurationProperties ( ) ) { String cliOption = resolveCliOption ( injectionPoint . getName ( ) ) ; if ( cliOption != null ) { return applicationContext . containsProperty ( cliOption ) ; } } return result ; } return false ; }
Obtains a value for the given field argument .