use of com.ctrip.framework.apollo.config.data.extension.properties.ApolloClientProperties in project apollo by ctripcorp.
the class ApolloClientExtensionInitializeFactory method initializeExtension.
/**
* initialize extension
*
* @param binder properties binder
* @param bindHandler properties bind handler
*/
public void initializeExtension(Binder binder, BindHandler bindHandler) {
ApolloClientProperties apolloClientProperties = this.apolloClientPropertiesFactory.createApolloClientProperties(binder, bindHandler);
if (apolloClientProperties == null || apolloClientProperties.getExtension() == null) {
this.log.info("apollo client extension is not configured, default to disabled");
return;
}
ApolloClientExtensionProperties extension = apolloClientProperties.getExtension();
if (!extension.getEnabled()) {
this.log.info("apollo client extension disabled");
return;
}
ApolloClientMessagingType messagingType = extension.getMessagingType();
log.debug(Slf4jLogMessageFormatter.format("apollo client extension messaging type: {}", messagingType));
switch(messagingType) {
case LONG_POLLING:
this.apolloClientLongPollingExtensionInitializer.initialize(apolloClientProperties, binder, bindHandler);
return;
case WEBSOCKET:
this.apolloClientWebsocketExtensionInitializer.initialize(apolloClientProperties, binder, bindHandler);
return;
default:
throw new IllegalStateException("Unexpected value: " + messagingType);
}
}
use of com.ctrip.framework.apollo.config.data.extension.properties.ApolloClientProperties in project apollo by ctripcorp.
the class ApolloClientPropertiesFactoryTest method testCreateApolloClientProperties.
@Test
public void testCreateApolloClientProperties() throws IOException {
Map<String, String> map = new LinkedHashMap<>();
map.put("apollo.client.extension.enabled", "true");
map.put("apollo.client.extension.messaging-type", "long_polling");
MapConfigurationPropertySource propertySource = new MapConfigurationPropertySource(map);
Binder binder = new Binder(propertySource);
ApolloClientPropertiesFactory factory = new ApolloClientPropertiesFactory();
ApolloClientProperties apolloClientProperties = factory.createApolloClientProperties(binder, null);
Assert.assertEquals(apolloClientProperties.getExtension().getEnabled(), true);
Assert.assertEquals(apolloClientProperties.getExtension().getMessagingType(), ApolloClientMessagingType.LONG_POLLING);
}
Aggregations