diff --git a/sms4j-example/JavaSE/pom.xml b/sms4j-example/JavaSE/pom.xml new file mode 100644 index 00000000..f1bd55f1 --- /dev/null +++ b/sms4j-example/JavaSE/pom.xml @@ -0,0 +1,28 @@ + + 4.0.0 + + org.dromara.sms4j + sms4j-example + 1.0-SNAPSHOT + + JavaSE + JavaSE-Demo + + + org.dromara.sms4j + sms4j-javase-plugin + ${sms4j.version} + + + org.dromara.sms4j + TestCase + 1.0-SNAPSHOT + + + org.dromara.sms4j + Customize + 1.0-SNAPSHOT + + + diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanAcctRestricted.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanAcctRestricted.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanAcctRestricted.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanAcctRestricted.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanBasicSend.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanBasicSend.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanBasicSend.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanBasicSend.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanBlackList.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanBlackList.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanBlackList.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanBlackList.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanChannelRestricted.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanChannelRestricted.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanChannelRestricted.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanChannelRestricted.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeChannel.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeChannel.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeChannel.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeChannel.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeInterceptor.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeInterceptor.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeInterceptor.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeInterceptor.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeSmsDao.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeSmsDao.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeSmsDao.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanCustomizeSmsDao.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanSms4jFullFunctions.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanSms4jFullFunctions.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanSms4jFullFunctions.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanSms4jFullFunctions.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanSpanRestricted.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanSpanRestricted.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/ConfigBeanSpanRestricted.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/ConfigBeanSpanRestricted.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlBasicSend.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlBasicSend.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlBasicSend.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlBasicSend.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlCustomizeChannel.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlCustomizeChannel.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlCustomizeChannel.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlCustomizeChannel.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlCustomizeInterceptor.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlCustomizeInterceptor.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlCustomizeInterceptor.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlCustomizeInterceptor.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlCustomizeSmsDao.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlCustomizeSmsDao.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlCustomizeSmsDao.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlCustomizeSmsDao.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlFullFunctions.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlFullFunctions.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/demo/YamlFullFunctions.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/demo/YamlFullFunctions.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanBlackListValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanBlackListValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanBlackListValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanBlackListValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanMultiChannelAllValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanMultiChannelAllValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanMultiChannelAllValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanMultiChannelAllValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanParamValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanParamValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanParamValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanParamValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanSendsTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanSendsTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanSendsTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanSendsTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanSimpleChannelAllValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanSimpleChannelAllValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEConfigBeanSimpleChannelAllValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEConfigBeanSimpleChannelAllValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlBlackListValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlBlackListValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlBlackListValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlBlackListValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlMultiChannelAllValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlMultiChannelAllValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlMultiChannelAllValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlMultiChannelAllValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlParamValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlParamValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlParamValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlParamValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlSendsTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlSendsTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlSendsTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlSendsTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlSimpleChannelAllValidateTest.java b/sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlSimpleChannelAllValidateTest.java similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/java/org/dromara/sms4j/test/SEYmlSimpleChannelAllValidateTest.java rename to sms4j-example/JavaSE/src/main/java/org/dromara/sms4j/test/SEYmlSimpleChannelAllValidateTest.java diff --git a/sms4j-example/JavaSE-Demo/src/main/resources/sms4j.yml b/sms4j-example/JavaSE/src/main/resources/sms4j.yml similarity index 100% rename from sms4j-example/JavaSE-Demo/src/main/resources/sms4j.yml rename to sms4j-example/JavaSE/src/main/resources/sms4j.yml diff --git a/sms4j-example/SpringBoot/SpringBootYamlFile/pom.xml b/sms4j-example/SpringBoot/SpringBootYamlFile/pom.xml new file mode 100644 index 00000000..ed0104eb --- /dev/null +++ b/sms4j-example/SpringBoot/SpringBootYamlFile/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + + + org.dromara.sms4j + SpringBoot + 1.0-SNAPSHOT + + + org.dromara.sms4j + SpringBootYamlFile + 1.0-SNAPSHOT + + \ No newline at end of file diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/pom.xml b/sms4j-example/SpringBoot/SpringbootReadConfig/pom.xml new file mode 100644 index 00000000..0261ee1d --- /dev/null +++ b/sms4j-example/SpringBoot/SpringbootReadConfig/pom.xml @@ -0,0 +1,18 @@ + + + 4.0.0 + + + org.dromara.sms4j + SpringBoot + 1.0-SNAPSHOT + + + org.dromara.sms4j + SpringbootReadConfig + 1.0-SNAPSHOT + + + \ No newline at end of file diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/acct/BootSms4jTestByReadConfig.java b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/acct/BootSms4jTestByReadConfig.java deleted file mode 100644 index 56e37293..00000000 --- a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/acct/BootSms4jTestByReadConfig.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.dromara.sms4j.acct; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.context.annotation.ComponentScan; - -@SpringBootApplication -@ComponentScan(basePackages = {"org.dromara.sms4j.source"}) -public class BootSms4jTestByReadConfig { - - public static void main(String[] args) { - SpringApplication.run(BootSms4jTestByReadConfig.class, args); - - } - -} diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/EarlyPostProcessor.java b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/EarlyPostProcessor.java deleted file mode 100644 index c2088dbd..00000000 --- a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/EarlyPostProcessor.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.dromara.sms4j.source; - -import org.dromara.sms4j.provider.factory.ProviderFactoryHolder; -import org.springframework.beans.BeansException; -import org.springframework.beans.factory.config.BeanFactoryPostProcessor; -import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; -import org.springframework.stereotype.Component; -import sms4j.local.a.AFactory; -import sms4j.local.b.BFactory; -import sms4j.local.c.CFactory; - -@Component -public class EarlyPostProcessor implements BeanFactoryPostProcessor { - @Override - public void postProcessBeanFactory(ConfigurableListableBeanFactory configurableListableBeanFactory) throws BeansException { - // 注入工厂实例 - ProviderFactoryHolder.registerFactory(new AFactory()); - ProviderFactoryHolder.registerFactory(new BFactory()); - ProviderFactoryHolder.registerFactory(new CFactory()); - } -} diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/Load.java b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/Load.java deleted file mode 100644 index 27dc0482..00000000 --- a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/Load.java +++ /dev/null @@ -1,35 +0,0 @@ -package org.dromara.sms4j.source; - -import org.dromara.sms4j.api.dao.SmsDao; -import org.dromara.sms4j.core.factory.SmsFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Import; -import org.springframework.context.event.ApplicationContextEvent; -import org.springframework.context.event.EventListener; -import sms4j.dao.MySmsDao; -import sms4j.interceptor.MyIntercepterStrategy; -import sms4j.interceptor.MyInterceptor; - -@Configuration -public class Load { - - - @Bean - public MyIntercepterStrategy myIntercepterStrategy(){ - return new MyIntercepterStrategy(); - } - - @Bean - public MyInterceptor myInterceptor(){ - return new MyInterceptor(); - } - - @Bean - public SmsDao smsDao(){ - return new MySmsDao(); - } - -} diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/MyConfig.java b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/MyConfig.java deleted file mode 100644 index 30311f6b..00000000 --- a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/MyConfig.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.dromara.sms4j.source; - -import org.dromara.sms4j.core.datainterface.SmsReadConfig; -import org.dromara.sms4j.core.factory.SmsFactory; -import org.dromara.sms4j.provider.config.BaseConfig; -import org.springframework.context.event.ContextRefreshedEvent; -import org.springframework.context.event.EventListener; -import org.springframework.stereotype.Component; -import sms4j.local.a.AConfig; -import sms4j.local.b.BConfig; -import sms4j.local.b.BFactory; -import sms4j.local.c.CConfig; -import sms4j.local.c.CFactory; - -import java.util.ArrayList; -import java.util.List; - -@Component -public class MyConfig implements SmsReadConfig { - - @EventListener - public void init(ContextRefreshedEvent event){ - // 创建SmsBlend 短信实例 - SmsFactory.createSmsBlend(this,"在配置中定义的configId"); - } - @Override - public BaseConfig getSupplierConfig(String configId) { - // 服务商2 - BConfig bConfig = new BConfig(); - bConfig.setMaximum(5); - bConfig.setConfigId("b1"); - return bConfig; - } - - @Override - public List getSupplierConfigList() { - List configs = new ArrayList(); - - // 服务商1 - CConfig cConfig = new CConfig(); - cConfig.setConfigId("c1"); - cConfig.setMaximum(5); - configs.add(cConfig); - - - // 服务商3 - AConfig aConfig = new AConfig(); - aConfig.setMaximum(5); - aConfig.setConfigId("a1"); - configs.add(aConfig); - - // 服务商3 - AConfig aConfig1 = new AConfig(); - aConfig1.setMaximum(5); - aConfig1.setConfigId("a2"); - configs.add(aConfig1); - return configs; - } -} diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/ReLoadConfig.java b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/ReLoadConfig.java deleted file mode 100644 index 763436c4..00000000 --- a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/source/ReLoadConfig.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.dromara.sms4j.source; - -import org.dromara.sms4j.core.datainterface.SmsReadConfig; -import org.dromara.sms4j.core.factory.SmsFactory; -import org.dromara.sms4j.provider.config.BaseConfig; -import org.springframework.context.event.ContextRefreshedEvent; -import org.springframework.context.event.EventListener; -import org.springframework.stereotype.Component; -import sms4j.local.a.AConfig; -import sms4j.local.b.BConfig; -import sms4j.local.b.BFactory; -import sms4j.local.c.CConfig; -import sms4j.local.c.CFactory; - -import java.util.ArrayList; -import java.util.List; - -public class ReLoadConfig implements SmsReadConfig { - @EventListener - public void init(ContextRefreshedEvent event){ - // 创建SmsBlend 短信实例 - SmsFactory.createSmsBlend(this,"在配置中定义的configId"); - } - @Override - public BaseConfig getSupplierConfig(String configId) { - // 服务商2 - - AConfig aConfig1 = new AConfig(); - aConfig1.setMaximum(5); - aConfig1.setConfigId("b1"); - return aConfig1; - } - - @Override - public List getSupplierConfigList() { - List configs = new ArrayList(); - - // 服务商1 - CConfig cConfig = new CConfig(); - cConfig.setConfigId("a1"); - cConfig.setMaximum(5); - configs.add(cConfig); - CFactory cFactory = new CFactory(); - - - BFactory bFactory = new BFactory(); - - // 服务商3 - AConfig aConfig = new AConfig(); - aConfig.setMaximum(5); - aConfig.setConfigId("c1"); - configs.add(aConfig); - - - BConfig bConfig = new BConfig(); - bConfig.setMaximum(5); - bConfig.setConfigId("a2"); - configs.add(bConfig); - return configs; - } -} \ No newline at end of file diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/test/BootConfigBlackListValidateConfig.java b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/test/BootConfigBlackListValidateConfig.java new file mode 100644 index 00000000..7462a0c7 --- /dev/null +++ b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/test/BootConfigBlackListValidateConfig.java @@ -0,0 +1,68 @@ +package org.dromara.sms4j.test; + +import org.dromara.sms4j.core.datainterface.SmsBlendsSelectedConfig; +import org.dromara.sms4j.core.factory.SmsFactory; +import org.dromara.sms4j.provider.config.BaseConfig; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.event.ContextRefreshedEvent; +import org.springframework.context.event.EventListener; + + +import sms4j.dao.MySmsDao; +import sms4j.interceptor.MyIntercepterStrategy; +import sms4j.interceptor.MyInterceptor; +import sms4j.local.a.AConfig; +import sms4j.local.a.AFactory; + +// SmsReadConfig 是一个存在但是未来可能被删除的一个接口,理想状态是使用 【SmsBlendsBeanConfig、SmsBlendsSelectedConfig】 SmsReadConfig正是继承了前面提到的两个接口 +// 这里为了只用一个类配置以此测试演示,使用中可以分开配置不用都写在一起 +@Configuration +public class BootConfigBlackListValidateConfig implements SmsBlendsSelectedConfig { + + //自定义渠道工厂 + @Bean + public AFactory myFactory() { + return new AFactory(); + } + + //自定义拦截器 + @Bean + public MyInterceptor myInterceptor() { + return new MyInterceptor(); + } + + //自定义拦截器策略 + @Bean + public MyIntercepterStrategy myIntercepterStrategy() { + return new MyIntercepterStrategy(); + } + + //自定义Dao + @Bean + public MySmsDao mySmsDao() { + return MySmsDao.getInstance(); + } + + @Override + public BaseConfig getSupplierConfig(String configId) { + // 服务商渠道配置 + // 服务商 + AConfig aConfig = new AConfig(); + if ("a1".equals(configId)){ + aConfig.setMaximum(5); + aConfig.setConfigId("a1"); + } + if ("a2".equals(configId)){ + aConfig.setMaximum(5); + aConfig.setConfigId("a2"); + } + return aConfig; + } + + @EventListener + //不是非要用监听器,有无数种方法,这里就是介绍这个SmsBlendsSelectedConfig 需要你在本类加载之后手动createSmsBlend选择使用那一个配置 + public void whenYouAppStarted(ContextRefreshedEvent event){ + SmsFactory.createSmsBlend(this,"a1"); + } +} diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/test/BootConfigBlackListValidateTest.java b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/test/BootConfigBlackListValidateTest.java new file mode 100644 index 00000000..f0c282d1 --- /dev/null +++ b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/java/org/dromara/sms4j/test/BootConfigBlackListValidateTest.java @@ -0,0 +1,16 @@ +package org.dromara.sms4j.test; + +import org.dromara.sms4j.test.validate.BlackListValidate; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class BootConfigBlackListValidateTest { + + public static void main(String[] args) { + SpringApplication.run(BootConfigBlackListValidateTest.class, args); + + BlackListValidate blackListValidate = new BlackListValidate("a","11111111111"); + blackListValidate.test(); + } +} diff --git a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/resources/application.yml b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/resources/application.yml index ae763b76..8fc9b069 100644 --- a/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/resources/application.yml +++ b/sms4j-example/SpringBoot/SpringbootReadConfig/src/main/resources/application.yml @@ -1,7 +1,9 @@ sms: # 标注从yml读取配置 config-type: interface - #restricted: true + # 是否开启拦截 + restricted: true + # 账户发送上限 account-max: 4 - + # 分钟发送上限 minute-max: 3 diff --git a/sms4j-example/SpringBoot/pom.xml b/sms4j-example/SpringBoot/pom.xml new file mode 100644 index 00000000..bd885233 --- /dev/null +++ b/sms4j-example/SpringBoot/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + + org.dromara.sms4j + sms4j-example + 1.0-SNAPSHOT + + pom + + SpringbootReadConfig + SpringBootYamlFile + + + SpringBoot + 1.0-SNAPSHOT + + + + + org.springframework.boot + spring-boot-dependencies + ${spring.boot.version} + pom + import + + + org.dromara.sms4j + sms4j-spring-boot-starter + ${sms4j.version} + + + org.springframework.boot + spring-boot-starter + ${spring.boot.version} + + + org.dromara.sms4j + TestCase + 1.0-SNAPSHOT + + + org.dromara.sms4j + Customize + 1.0-SNAPSHOT + + + \ No newline at end of file diff --git a/sms4j-example/样例结构.MD b/sms4j-example/样例结构.MD index f258d710..23507062 100644 --- a/sms4j-example/样例结构.MD +++ b/sms4j-example/样例结构.MD @@ -1,7 +1,7 @@ # 项目结构 * sms4j-example * [Component](Component) 基础依赖,包括测试案例和自定义的相关内容 - * [Customize](Component%2FCustomize) sms4j扩展的自定义的相关内容 + * [Customize](Component%2FCustomize) sms4j扩展的自定义案例的相关内容 * 自定义SmsDao实现 [dao](Component%2FCustomize%2Fsrc%2Fmain%2Fjava%2Fsms4j%2Fdao) * 自定义拦截器、拦截器策略实现 [interceptor](Component%2FCustomize%2Fsrc%2Fmain%2Fjava%2Fsms4j%2Finterceptor) * 自定义厂商实现 [local](Component%2FCustomize%2Fsrc%2Fmain%2Fjava%2Fsms4j%2Flocal) diff --git a/sms4j-spring-boot-starter/src/main/java/org/dromara/sms4j/starter/config/SmsBlendsInitializer.java b/sms4j-spring-boot-starter/src/main/java/org/dromara/sms4j/starter/config/SmsBlendsInitializer.java index c6085db4..2fac0ad3 100644 --- a/sms4j-spring-boot-starter/src/main/java/org/dromara/sms4j/starter/config/SmsBlendsInitializer.java +++ b/sms4j-spring-boot-starter/src/main/java/org/dromara/sms4j/starter/config/SmsBlendsInitializer.java @@ -90,6 +90,7 @@ public class SmsBlendsInitializer extends AbstractInitalizer { //SmsBlendsBeanConfig接口实现类的配置信息处理 for (SmsBlendsBeanConfig beanConfig : beanConfigs) { SmsFactory.createSmsBlend(beanConfig); + } break; }