diff --git a/sms4j-Email-plugin/sms4j-Email-core/src/main/java/org/dromara/email/core/factory/MailFactory.java b/sms4j-Email-plugin/sms4j-Email-core/src/main/java/org/dromara/email/core/factory/MailFactory.java index 86fef6aa..f76a8b0b 100644 --- a/sms4j-Email-plugin/sms4j-Email-core/src/main/java/org/dromara/email/core/factory/MailFactory.java +++ b/sms4j-Email-plugin/sms4j-Email-core/src/main/java/org/dromara/email/core/factory/MailFactory.java @@ -33,6 +33,7 @@ public class MailFactory{ } } + /** * createMailClient *
从工厂获取一个邮件发送实例,该实例发送短信将依照黑名单中的数据进行过滤 diff --git a/sms4j-core/src/main/java/org/dromara/sms4j/core/datainterface/SmsReadConfig.java b/sms4j-core/src/main/java/org/dromara/sms4j/core/datainterface/SmsReadConfig.java index 1f404f47..3068f237 100644 --- a/sms4j-core/src/main/java/org/dromara/sms4j/core/datainterface/SmsReadConfig.java +++ b/sms4j-core/src/main/java/org/dromara/sms4j/core/datainterface/SmsReadConfig.java @@ -16,10 +16,11 @@ public interface SmsReadConfig { /** * getSupplierConfig - *
获取一个厂商的配置 + *
通过配置ID获取一个厂商的配置 + * @param configId 配置id * @author :Wind */ - BaseConfig getSupplierConfig(); + BaseConfig getSupplierConfig(String configId); /** * getSupplierConfigList diff --git a/sms4j-core/src/main/java/org/dromara/sms4j/core/factory/SmsFactory.java b/sms4j-core/src/main/java/org/dromara/sms4j/core/factory/SmsFactory.java index 40512351..1a5f0ebd 100644 --- a/sms4j-core/src/main/java/org/dromara/sms4j/core/factory/SmsFactory.java +++ b/sms4j-core/src/main/java/org/dromara/sms4j/core/factory/SmsFactory.java @@ -6,7 +6,9 @@ import org.dromara.sms4j.api.smsProxy.SmsInvocationHandler; import org.dromara.sms4j.api.universal.SupplierConfig; import org.dromara.sms4j.comm.exception.SmsBlendException; import org.dromara.sms4j.comm.factory.BeanFactory; +import org.dromara.sms4j.core.datainterface.SmsReadConfig; import org.dromara.sms4j.core.load.SmsLoad; +import org.dromara.sms4j.provider.config.BaseConfig; import org.dromara.sms4j.provider.factory.BaseProviderFactory; import org.dromara.sms4j.provider.factory.ProviderFactoryHolder; @@ -68,6 +70,36 @@ public abstract class SmsFactory { SmsLoad.starConfig(sms, config); } + /** + * createSmsBlend + *
通过配置读取接口创建某个短信实例 + *
该方法创建的短信实例将会交给框架进行托管,后续可以通过getSmsBlend获取 + *
该方法会直接调用接口实现 + * @param smsReadConfig 读取额外配置接口 + * @param configId 配置ID + * @author :Wind + */ + public static void createSmsBlend(SmsReadConfig smsReadConfig,String configId){ + BaseConfig supplierConfig = smsReadConfig.getSupplierConfig(configId); + SmsBlend smsBlend = create(supplierConfig); + register(smsBlend); + } + + /** + * createSmsBlend + *
通过配置读取接口创建全部短信实例 + *
该方法创建的短信实例将会交给框架进行托管,后续可以通过getSmsBlend获取 + *
该方法会直接调用接口实现
+ * @param smsReadConfig 读取额外配置接口
+ * @author :Wind
+ */
+ public static void createSmsBlend(SmsReadConfig smsReadConfig){
+ List