Home / Class/ SourcePropertyDescriptor Class — spring-boot Architecture

SourcePropertyDescriptor Class — spring-boot Architecture

Architecture documentation for the SourcePropertyDescriptor class in ConfigurationPropertiesSourceResolver.java from the spring-boot codebase.

Entity Profile

Relationship Graph

Source Code

configuration-metadata/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/ConfigurationPropertiesSourceResolver.java lines 133–183

	static class SourcePropertyDescriptor extends PropertyDescriptor {

		private final PropertyDescriptor delegate;

		private final ItemMetadata sourceItemMetadata;

		private final ItemHint sourceItemHint;

		SourcePropertyDescriptor(PropertyDescriptor delegate, ItemMetadata sourceItemMetadata,
				ItemHint sourceItemHint) {
			super(delegate.getName(), delegate.getType(), delegate.getDeclaringElement(), delegate.getGetter());
			this.delegate = delegate;
			this.sourceItemMetadata = sourceItemMetadata;
			this.sourceItemHint = sourceItemHint;
		}

		@Override
		protected ItemHint resolveItemHint(String prefix, MetadataGenerationEnvironment environment) {
			return (this.sourceItemHint != null) ? this.sourceItemHint.applyPrefix(prefix)
					: super.resolveItemHint(prefix, environment);
		}

		@Override
		protected boolean isMarkedAsNested(MetadataGenerationEnvironment environment) {
			return this.delegate.isMarkedAsNested(environment);
		}

		@Override
		protected String resolveDescription(MetadataGenerationEnvironment environment) {
			String description = this.delegate.resolveDescription(environment);
			return (description != null) ? description : this.sourceItemMetadata.getDescription();
		}

		@Override
		protected Object resolveDefaultValue(MetadataGenerationEnvironment environment) {
			Object defaultValue = this.delegate.resolveDefaultValue(environment);
			return (defaultValue != null) ? defaultValue : this.sourceItemMetadata.getDefaultValue();
		}

		@Override
		protected ItemDeprecation resolveItemDeprecation(MetadataGenerationEnvironment environment) {
			ItemDeprecation itemDeprecation = this.delegate.resolveItemDeprecation(environment);
			return (itemDeprecation != null) ? itemDeprecation : this.sourceItemMetadata.getDeprecation();
		}

		@Override
		boolean isProperty(MetadataGenerationEnvironment environment) {
			return this.delegate.isProperty(environment);
		}

	}

Domain

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free