当前位置: 首页>>代码示例>>Java>>正文


Java Binder类代码示例

本文整理汇总了Java中org.springframework.boot.context.properties.bind.Binder的典型用法代码示例。如果您正苦于以下问题:Java Binder类的具体用法?Java Binder怎么用?Java Binder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Binder类属于org.springframework.boot.context.properties.bind包,在下文中一共展示了Binder类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: reinitializeLoggingSystem

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
private void reinitializeLoggingSystem(ConfigurableEnvironment environment,
		String oldLogConfig, LogFile oldLogFile) {
	Map<String, Object> props = Binder.get(environment)
			.bind("logging", Bindable.mapOf(String.class, Object.class)).orElseGet(Collections::emptyMap);
	if (!props.isEmpty()) {
		String logConfig = environment.resolvePlaceholders("${logging.config:}");
		LogFile logFile = LogFile.get(environment);
		LoggingSystem system = LoggingSystem
				.get(LoggingSystem.class.getClassLoader());
		try {
			ResourceUtils.getURL(logConfig).openStream().close();
			// Three step initialization that accounts for the clean up of the logging
			// context before initialization. Spring Boot doesn't initialize a logging
			// system that hasn't had this sequence applied (since 1.4.1).
			system.cleanUp();
			system.beforeInitialize();
			system.initialize(new LoggingInitializationContext(environment),
					logConfig, logFile);
		}
		catch (Exception ex) {
			PropertySourceBootstrapConfiguration.logger
					.warn("Logging config file location '" + logConfig
							+ "' cannot be opened and will be ignored");
		}
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-commons,代码行数:27,代码来源:PropertySourceBootstrapConfiguration.java

示例2: getMatchOutcome

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
@Override
public ConditionOutcome getMatchOutcome(ConditionContext context,
    AnnotatedTypeMetadata metadata) {
  String prefix = (String) attribute(metadata, "prefix");
  Class<?> value = (Class<?>) attribute(metadata, "value");
  ConfigurableEnvironment environment = (ConfigurableEnvironment) context.getEnvironment();
  try {
    new Binder(ConfigurationPropertySources.from(environment.getPropertySources()))
        .bind(prefix, Bindable.of(value))
        .orElseThrow(
            () -> new FatalBeanException("Could not bind DataSourceSettings properties"));
    return new ConditionOutcome(true, String.format("Map property [%s] is not empty", prefix));
  } catch (Exception e) {
    //ignore
  }
  return new ConditionOutcome(false, String.format("Map property [%s] is empty", prefix));
}
 
开发者ID:lord-of-code,项目名称:loc-framework,代码行数:18,代码来源:PrefixPropertyCondition.java

示例3: bindProperties

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
private Map<String, String> bindProperties() {
	Map<String, String> target;
	BindResult<Map<String, String>> bindResult = Binder.get(environment).bind("", STRING_STRING_MAP);
	if (bindResult.isBound()) {
		target = bindResult.get();
	}
	else {
		target = new HashMap<>();
	}
	return target;
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:12,代码来源:ApplicationMetricsProperties.java

示例4: bindProperties

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
private Map<String, String> bindProperties(String namepace, Environment environment) {
	Map<String, String> target;
	BindResult<Map<String, String>> bindResult = Binder.get(environment).bind(namepace, STRING_STRING_MAP);
	if (bindResult.isBound()) {
		target = bindResult.get();
	}
	else {
		target = new HashMap<>();
	}
	return target;
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:12,代码来源:AggregateApplicationBuilder.java

示例5: get

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
@Override
public T get(Object key) {
	if (!this.delegate.containsKey(key) && key instanceof String) {
		T entry = BeanUtils.instantiateClass(entryClass);
		Binder binder = new Binder(ConfigurationPropertySources.get(environment),new PropertySourcesPlaceholdersResolver(environment),this.conversionService);
		binder.bind(defaultsPrefix, Bindable.ofInstance(entry));
		this.delegate.put((String) key, entry);
	}
	return this.delegate.get(key);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:11,代码来源:EnvironmentEntryInitializingTreeMap.java

示例6: put

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
@Override
public T put(String key, T value) {
	// boot 2 call this first
	Binder binder = new Binder(ConfigurationPropertySources.get(environment),new PropertySourcesPlaceholdersResolver(environment),this.conversionService);
	binder.bind(defaultsPrefix, Bindable.ofInstance(value));
	return this.delegate.put(key, value);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-stream,代码行数:8,代码来源:EnvironmentEntryInitializingTreeMap.java

示例7: getMatchOutcome

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
@Override
public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) {
	Map<String, String> subProperties = Binder.get(context.getEnvironment())
			.bind(ZOOKEEPER_DEPENDENCIES_PROP, STRING_STRING_MAP).orElseGet(Collections::emptyMap);
	if (!subProperties.isEmpty()) {
		return ConditionOutcome.match("Dependencies are defined in configuration");
	}
	Boolean dependenciesEnabled = context.getEnvironment()
			.getProperty("spring.cloud.zookeeper.dependency.enabled", Boolean.class, false);
	if (dependenciesEnabled) {
		return ConditionOutcome.match("Dependencies are not defined in configuration, but switch is turned on");
	}
	return ConditionOutcome.noMatch("No dependencies have been passed for the service");
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-zookeeper,代码行数:15,代码来源:DependenciesPassedCondition.java

示例8: setLogLevels

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
protected void setLogLevels(LoggingSystem system, Environment environment) {
	Map<String, String> levels = Binder.get(environment)
			.bind("logging.level", STRING_STRING_MAP).orElseGet(Collections::emptyMap);
	for (Entry<String, String> entry : levels.entrySet()) {
		setLogLevel(system, environment, entry.getKey(), entry.getValue().toString());
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-commons,代码行数:8,代码来源:LoggingRebinder.java

示例9: insertPropertySources

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
private void insertPropertySources(MutablePropertySources propertySources,
		CompositePropertySource composite) {
	MutablePropertySources incoming = new MutablePropertySources();
	incoming.addFirst(composite);
	PropertySourceBootstrapProperties remoteProperties = new PropertySourceBootstrapProperties();
	Binder.get(environment(incoming)).bind("spring.cloud.config", Bindable.ofInstance(remoteProperties));
	if (!remoteProperties.isAllowOverride() || (!remoteProperties.isOverrideNone()
			&& remoteProperties.isOverrideSystemProperties())) {
		propertySources.addFirst(composite);
		return;
	}
	if (remoteProperties.isOverrideNone()) {
		propertySources.addLast(composite);
		return;
	}
	if (propertySources
			.contains(StandardEnvironment.SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME)) {
		if (!remoteProperties.isOverrideSystemProperties()) {
			propertySources.addAfter(
					StandardEnvironment.SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME,
					composite);
		}
		else {
			propertySources.addBefore(
					StandardEnvironment.SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME,
					composite);
		}
	}
	else {
		propertySources.addLast(composite);
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-commons,代码行数:33,代码来源:PropertySourceBootstrapConfiguration.java

示例10: getFirstNonLoopbackHostInfo

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
private HostInfo getFirstNonLoopbackHostInfo(ConfigurableEnvironment environment) {
	InetUtilsProperties target = new InetUtilsProperties();
	ConfigurationPropertySources.attach(environment);
	Binder.get(environment).bind(InetUtilsProperties.PREFIX,
			Bindable.ofInstance(target));
	try (InetUtils utils = new InetUtils(target)) {
		return utils.findFirstNonLoopbackHostInfo();
	}
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-commons,代码行数:10,代码来源:HostInfoEnvironmentPostProcessor.java

示例11: getDbInstanceConfigurations

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
@SuppressWarnings("unchecked")
private Map<String, Map<String, String>> getDbInstanceConfigurations() {
    Map<String, Object> subProperties = Binder.get(this.environment)
            .bind(PREFIX, Bindable.mapOf(String.class, Object.class)).orElseGet(Collections::emptyMap);
    Map<String, Map<String, String>> dbConfigurationMap = new HashMap<>(subProperties.keySet().size());
    for (Map.Entry<String, Object> subProperty : subProperties.entrySet()) {
        String instanceName = subProperty.getKey();
        if (!dbConfigurationMap.containsKey(instanceName)) {
            dbConfigurationMap.put(instanceName, new HashMap<>());
        }

        Object value = subProperty.getValue();

        if (value instanceof Map) {
            Map<String, String> map = (Map) value;
            for (Map.Entry<String, String> entry : map.entrySet()) {
                dbConfigurationMap.get(instanceName).put(entry.getKey(), entry.getValue());
            }
        } else if (value instanceof String) {
            String subPropertyName = extractConfigurationSubPropertyName(subProperty.getKey());
            if (StringUtils.hasText(subPropertyName)) {
                dbConfigurationMap.get(instanceName).put(subPropertyName, (String) subProperty.getValue());
            }
        }
    }
    return dbConfigurationMap;
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-aws,代码行数:28,代码来源:AmazonRdsDatabaseAutoConfiguration.java

示例12: noop

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
@Test
public void noop() {
	this.listener.postProcessEnvironment(this.environment, new SpringApplication());
	Map<String, Object> properties = Binder.get(environment)
			.bind("security.oauth2", STRING_OBJECT_MAP).orElseGet(Collections::emptyMap);
	assertTrue(properties.isEmpty());
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-cloudfoundry,代码行数:8,代码来源:VcapServiceCredentialsEnvironmentPostProcessorTests.java

示例13: getMatchOutcome

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
@Override
public ConditionOutcome getMatchOutcome(ConditionContext context,
		AnnotatedTypeMetadata metadata) {
	ConditionMessage.Builder message = ConditionMessage
			.forCondition("OAuth ResourceServer Condition");
	Environment environment = context.getEnvironment();
	if (!(environment instanceof ConfigurableEnvironment)) {
		return ConditionOutcome
				.noMatch(message.didNotFind("A ConfigurableEnvironment").atAll());
	}
	if (hasOAuthClientId(environment)) {
		return ConditionOutcome.match(message.foundExactly("client-id property"));
	}
	Binder binder = Binder.get(environment);
	String prefix = "security.oauth2.resource.";
	if (binder.bind(prefix + "jwt", STRING_OBJECT_MAP).isBound()) {
		return ConditionOutcome
				.match(message.foundExactly("JWT resource configuration"));
	}
	if (binder.bind(prefix + "jwk", STRING_OBJECT_MAP).isBound()) {
		return ConditionOutcome
				.match(message.foundExactly("JWK resource configuration"));
	}
	if (StringUtils.hasText(environment.getProperty(prefix + "user-info-uri"))) {
		return ConditionOutcome
				.match(message.foundExactly("user-info-uri property"));
	}
	if (StringUtils.hasText(environment.getProperty(prefix + "token-info-uri"))) {
		return ConditionOutcome
				.match(message.foundExactly("token-info-uri property"));
	}
	if (ClassUtils.isPresent(AUTHORIZATION_ANNOTATION, null)) {
		if (AuthorizationServerEndpointsConfigurationBeanCondition
				.matches(context)) {
			return ConditionOutcome.match(
					message.found("class").items(AUTHORIZATION_ANNOTATION));
		}
	}
	return ConditionOutcome.noMatch(
			message.didNotFind("client ID, JWT resource or authorization server")
					.atAll());
}
 
开发者ID:spring-projects,项目名称:spring-security-oauth2-boot,代码行数:43,代码来源:OAuth2ResourceServerConfiguration.java

示例14: resolverSetting

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
protected <T> T resolverSetting(Class<T> clazz, MutablePropertySources propertySources) {
  return new Binder(ConfigurationPropertySources.from(propertySources))
      .bind("loc", Bindable.of(clazz))
      .orElseThrow(() -> new FatalBeanException("Could not bind DataSourceSettings properties"));
}
 
开发者ID:lord-of-code,项目名称:loc-framework,代码行数:6,代码来源:LocBaseAutoConfiguration.java

示例15: getSubProperties

import org.springframework.boot.context.properties.bind.Binder; //导入依赖的package包/类
public static Map<String, String> getSubProperties(Environment environment,
		String keyPrefix) {
	return Binder.get(environment)
			.bind(keyPrefix, Bindable.mapOf(String.class, String.class))
			.orElseGet(Collections::emptyMap);
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-commons,代码行数:7,代码来源:EnvironmentUtils.java


注:本文中的org.springframework.boot.context.properties.bind.Binder类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。