class Fabric8ConfigDataLocationResolver extends KubernetesConfigDataLocationResolver {

	public Fabric8ConfigDataLocationResolver(DeferredLogFactory factory) {
		super(factory);
	}

	@Override
	protected void registerBeans(ConfigDataLocationResolverContext resolverContext, ConfigDataLocation location,
			Profiles profiles, KubernetesConfigDataLocationResolver.PropertyHolder propertyHolder,
			KubernetesNamespaceProvider namespaceProvider) {<FILL_FUNCTION_BODY>}

	private KubernetesClient registerConfigAndClient(ConfigurableBootstrapContext bootstrapContext,
			KubernetesClientProperties kubernetesClientProperties) {
		Config config = new Fabric8AutoConfiguration().kubernetesClientConfig(kubernetesClientProperties);
		registerSingle(bootstrapContext, Config.class, config, "fabric8Config");

		KubernetesClient kubernetesClient = new Fabric8AutoConfiguration().kubernetesClient(config);
		registerSingle(bootstrapContext, KubernetesClient.class, kubernetesClient, "configKubernetesClient");
		return kubernetesClient;
	}

	@Override
	protected KubernetesNamespaceProvider kubernetesNamespaceProvider(Environment environment) {
		return new KubernetesNamespaceProvider(environment);
	}

}

		KubernetesClientProperties kubernetesClientProperties = propertyHolder.kubernetesClientProperties();
		ConfigMapConfigProperties configMapProperties = propertyHolder.configMapConfigProperties();
		SecretsConfigProperties secretsProperties = propertyHolder.secretsProperties();

		ConfigurableBootstrapContext bootstrapContext = resolverContext.getBootstrapContext();
		KubernetesClient kubernetesClient = registerConfigAndClient(bootstrapContext, kubernetesClientProperties);

		if (configMapProperties != null && configMapProperties.enabled()) {
			ConfigMapPropertySourceLocator configMapPropertySourceLocator = new Fabric8ConfigMapPropertySourceLocator(
					kubernetesClient, configMapProperties, namespaceProvider);
			if (isRetryEnabledForConfigMap(configMapProperties)) {
				configMapPropertySourceLocator = new ConfigDataRetryableConfigMapPropertySourceLocator(
						configMapPropertySourceLocator, configMapProperties, new Fabric8ConfigMapsCache());
			}

			registerSingle(bootstrapContext, ConfigMapPropertySourceLocator.class, configMapPropertySourceLocator,
					"configDataConfigMapPropertySourceLocator");
		}

		if (secretsProperties != null && secretsProperties.enabled()) {
			SecretsPropertySourceLocator secretsPropertySourceLocator = new Fabric8SecretsPropertySourceLocator(
					kubernetesClient, secretsProperties, namespaceProvider);
			if (isRetryEnabledForSecrets(secretsProperties)) {
				secretsPropertySourceLocator = new ConfigDataRetryableSecretsPropertySourceLocator(
						secretsPropertySourceLocator, secretsProperties, new Fabric8SecretsCache());
			}

			registerSingle(bootstrapContext, SecretsPropertySourceLocator.class, secretsPropertySourceLocator,
					"configDataSecretsPropertySourceLocator");
		}

	
<methods>public void <init>(org.springframework.boot.logging.DeferredLogFactory) ,public final int getOrder() ,public final boolean isResolvable(org.springframework.boot.context.config.ConfigDataLocationResolverContext, org.springframework.boot.context.config.ConfigDataLocation) ,public final List<org.springframework.cloud.kubernetes.commons.config.KubernetesConfigDataResource> resolve(org.springframework.boot.context.config.ConfigDataLocationResolverContext, org.springframework.boot.context.config.ConfigDataLocation) throws org.springframework.boot.context.config.ConfigDataLocationNotFoundException, org.springframework.boot.context.config.ConfigDataResourceNotFoundException,public final List<org.springframework.cloud.kubernetes.commons.config.KubernetesConfigDataResource> resolveProfileSpecific(org.springframework.boot.context.config.ConfigDataLocationResolverContext, org.springframework.boot.context.config.ConfigDataLocation, org.springframework.boot.context.config.Profiles) throws org.springframework.boot.context.config.ConfigDataLocationNotFoundException<variables>private static final boolean RETRY_IS_PRESENT,private final non-sealed org.apache.commons.logging.Log log