Search in sources :

Example 1 with NacosDataSource

use of com.alibaba.csp.sentinel.datasource.nacos.NacosDataSource in project Sentinel by alibaba.

the class NacosDataSourceDemo method loadMyNamespaceRules.

private static void loadMyNamespaceRules() {
    Properties properties = new Properties();
    properties.put(PropertyKeyConst.SERVER_ADDR, remoteAddress);
    properties.put(PropertyKeyConst.NAMESPACE, NACOS_NAMESPACE_ID);
    ReadableDataSource<String, List<FlowRule>> flowRuleDataSource = new NacosDataSource<>(properties, groupId, dataId, source -> JSON.parseObject(source, new TypeReference<List<FlowRule>>() {
    }));
    FlowRuleManager.register2Property(flowRuleDataSource.getProperty());
}
Also used : NacosDataSource(com.alibaba.csp.sentinel.datasource.nacos.NacosDataSource) List(java.util.List) TypeReference(com.alibaba.fastjson.TypeReference) FlowRule(com.alibaba.csp.sentinel.slots.block.flow.FlowRule) Properties(java.util.Properties)

Example 2 with NacosDataSource

use of com.alibaba.csp.sentinel.datasource.nacos.NacosDataSource in project spring-cloud-alibaba by alibaba.

the class NacosDataSourceFactoryBeanTests method testNacosFactoryBeanServerAddr.

@Test
public void testNacosFactoryBeanServerAddr() throws Exception {
    NacosDataSourceFactoryBean factoryBean = spy(new NacosDataSourceFactoryBean());
    Converter converter = mock(SentinelConverter.class);
    factoryBean.setDataId(dataId);
    factoryBean.setGroupId(groupId);
    factoryBean.setServerAddr(serverAddr);
    factoryBean.setContextPath(contextPath);
    factoryBean.setConverter(converter);
    NacosDataSource nacosDataSource = mock(NacosDataSource.class);
    doReturn(nacosDataSource).when(factoryBean).getObject();
    when(nacosDataSource.readSource()).thenReturn("{}");
    assertThat(factoryBean.getObject()).isEqualTo(nacosDataSource);
    assertThat(factoryBean.getObject().readSource()).isEqualTo("{}");
    assertThat(factoryBean.getConverter()).isEqualTo(converter);
    assertThat(factoryBean.getDataId()).isEqualTo(dataId);
    assertThat(factoryBean.getGroupId()).isEqualTo(groupId);
    assertThat(factoryBean.getServerAddr()).isEqualTo(serverAddr);
    assertThat(factoryBean.getContextPath()).isEqualTo(contextPath);
}
Also used : NacosDataSourceFactoryBean(com.alibaba.cloud.sentinel.datasource.factorybean.NacosDataSourceFactoryBean) NacosDataSource(com.alibaba.csp.sentinel.datasource.nacos.NacosDataSource) SentinelConverter(com.alibaba.cloud.sentinel.datasource.converter.SentinelConverter) Converter(com.alibaba.csp.sentinel.datasource.Converter) Test(org.junit.Test)

Example 3 with NacosDataSource

use of com.alibaba.csp.sentinel.datasource.nacos.NacosDataSource in project spring-cloud-alibaba by alibaba.

the class NacosDataSourceFactoryBeanTests method testNacosFactoryBeanProperties.

@Test
public void testNacosFactoryBeanProperties() throws Exception {
    NacosDataSourceFactoryBean factoryBean = spy(new NacosDataSourceFactoryBean());
    Converter converter = mock(SentinelConverter.class);
    factoryBean.setDataId(dataId);
    factoryBean.setGroupId(groupId);
    factoryBean.setAccessKey(accessKey);
    factoryBean.setSecretKey(secretKey);
    factoryBean.setEndpoint(endpoint);
    factoryBean.setNamespace(namespace);
    factoryBean.setConverter(converter);
    NacosDataSource nacosDataSource = mock(NacosDataSource.class);
    doReturn(nacosDataSource).when(factoryBean).getObject();
    when(nacosDataSource.readSource()).thenReturn("{}");
    assertThat(factoryBean.getObject()).isEqualTo(nacosDataSource);
    assertThat(factoryBean.getObject().readSource()).isEqualTo("{}");
    assertThat(factoryBean.getConverter()).isEqualTo(converter);
    assertThat(factoryBean.getDataId()).isEqualTo(dataId);
    assertThat(factoryBean.getGroupId()).isEqualTo(groupId);
    assertThat(factoryBean.getNamespace()).isEqualTo(namespace);
    assertThat(factoryBean.getEndpoint()).isEqualTo(endpoint);
    assertThat(factoryBean.getAccessKey()).isEqualTo(accessKey);
    assertThat(factoryBean.getSecretKey()).isEqualTo(secretKey);
}
Also used : NacosDataSourceFactoryBean(com.alibaba.cloud.sentinel.datasource.factorybean.NacosDataSourceFactoryBean) NacosDataSource(com.alibaba.csp.sentinel.datasource.nacos.NacosDataSource) SentinelConverter(com.alibaba.cloud.sentinel.datasource.converter.SentinelConverter) Converter(com.alibaba.csp.sentinel.datasource.Converter) Test(org.junit.Test)

Aggregations

NacosDataSource (com.alibaba.csp.sentinel.datasource.nacos.NacosDataSource)3 SentinelConverter (com.alibaba.cloud.sentinel.datasource.converter.SentinelConverter)2 NacosDataSourceFactoryBean (com.alibaba.cloud.sentinel.datasource.factorybean.NacosDataSourceFactoryBean)2 Converter (com.alibaba.csp.sentinel.datasource.Converter)2 Test (org.junit.Test)2 FlowRule (com.alibaba.csp.sentinel.slots.block.flow.FlowRule)1 TypeReference (com.alibaba.fastjson.TypeReference)1 List (java.util.List)1 Properties (java.util.Properties)1