Package org.dromara.sms4j.core.factory
Class SmsFactory
- java.lang.Object
-
- org.dromara.sms4j.core.factory.SmsFactory
-
public abstract class SmsFactory extends Object
SmsFactory构造工厂,用于获取一个厂商的短信实现对象 在调用对应厂商的短信发送方法前,请先确保你的配置已经实现,否则无法发送该厂商对应的短信,一般情况下厂商会回执因缺少的配置所造成的的异常,但组件 不会处理
- Author:
- :Wind 2023/4/8 15:55
-
-
Constructor Summary
Constructors Modifier Constructor Description privateSmsFactory()
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description private static SmsBlendcreate(SupplierConfig config)static voidcreateRestrictedSmsBlend(SupplierConfig config)Deprecated.static voidcreateRestrictedSmsBlend(SmsReadConfig smsReadConfig)Deprecated.static voidcreateRestrictedSmsBlend(SmsReadConfig smsReadConfig, String configId)Deprecated.static voidcreateSmsBlend(SupplierConfig config)createSmsBlendstatic voidcreateSmsBlend(SmsReadConfig smsReadConfig)createSmsBlendstatic voidcreateSmsBlend(SmsReadConfig smsReadConfig, String configId)createSmsBlendstatic List<SmsBlend>getAll()获取全部短信服务对象static SmsBlendgetBySupplier(String supplier)通过供应商标识获取单个短信服务对象static List<SmsBlend>getListBySupplier(String supplier)通过供应商标识获取短信服务对象列表static SmsBlendgetSmsBlend()通过负载均衡服务获取短信服务对象static SmsBlendgetSmsBlend(String configId)通过configId获取短信服务对象static voidregister(SmsBlend smsBlend)注册短信服务对象static voidregister(SmsBlend smsBlend, Integer weight)注册短信服务对象static booleanregisterIfAbsent(SmsBlend smsBlend)以configId为标识,当短信服务对象不存在时,进行注册static booleanregisterIfAbsent(SmsBlend smsBlend, Integer weight)registerIfAbsentstatic voidreload(String configId, SmsReadConfig smsReadConfig)reloadstatic voidreloadAll(SmsReadConfig smsReadConfig)reloadAllprivate static SmsBlendrenderWithProxy(SmsBlend sms)Deprecated.static booleanunregister(String configId)注销短信服务对象
-
-
-
Method Detail
-
createSmsBlend
public static void createSmsBlend(SupplierConfig config)
createSmsBlend创建各个厂商的实现类
- Parameters:
config- 短信配置
-
createSmsBlend
public static void createSmsBlend(SmsReadConfig smsReadConfig, String configId)
createSmsBlend通过配置读取接口创建某个短信实例
该方法创建的短信实例将会交给框架进行托管,后续可以通过getSmsBlend获取
该方法会直接调用接口实现
- Parameters:
smsReadConfig- 读取额外配置接口configId- 配置ID
-
createSmsBlend
public static void createSmsBlend(SmsReadConfig smsReadConfig)
createSmsBlend通过配置读取接口创建全部短信实例
该方法创建的短信实例将会交给框架进行托管,后续可以通过getSmsBlend获取
该方法会直接调用接口实现
- Parameters:
smsReadConfig- 读取额外配置接口
-
createRestrictedSmsBlend
@Deprecated public static void createRestrictedSmsBlend(SupplierConfig config)
Deprecated.createRestrictedSmsBlend创建一个指定厂商开启短信拦截后的实例,拦截的参数取决于配置参数
- Parameters:
config- 短信配置
-
createRestrictedSmsBlend
@Deprecated public static void createRestrictedSmsBlend(SmsReadConfig smsReadConfig, String configId)
Deprecated.createRestrictedSmsBlend通过配置读取接口创建某个开启短信拦截后的短信实例
该方法创建的短信实例将会交给框架进行托管,后续可以通过getSmsBlend获取
该方法会直接调用接口实现
- Parameters:
smsReadConfig- 读取额外配置接口configId- 配置ID
-
createRestrictedSmsBlend
@Deprecated public static void createRestrictedSmsBlend(SmsReadConfig smsReadConfig)
Deprecated.createRestrictedSmsBlend通过配置读取接口创建全部开启短信拦截后的短信实例
该方法创建的短信实例将会交给框架进行托管,后续可以通过getSmsBlend获取
该方法会直接调用接口实现
- Parameters:
smsReadConfig- 读取额外配置接口
-
create
private static SmsBlend create(SupplierConfig config)
-
renderWithProxy
@Deprecated private static SmsBlend renderWithProxy(SmsBlend sms)
Deprecated.renderWithRestricted构建smsBlend对象的代理对象
-
getSmsBlend
public static SmsBlend getSmsBlend()
通过负载均衡服务获取短信服务对象- Returns:
- 返回短信服务列表
-
getSmsBlend
public static SmsBlend getSmsBlend(String configId)
通过configId获取短信服务对象- Parameters:
configId- 唯一标识- Returns:
- 返回短信服务对象。如果未找到则返回null
-
getBySupplier
public static SmsBlend getBySupplier(String supplier)
通过供应商标识获取单个短信服务对象当供应商有多个短信服务对象时无法保证获取顺序
- Parameters:
supplier- 供应商标识- Returns:
- 返回短信服务对象。如果未找到则返回null
-
getListBySupplier
public static List<SmsBlend> getListBySupplier(String supplier)
通过供应商标识获取短信服务对象列表- Parameters:
supplier- 供应商标识- Returns:
- 返回短信服务对象列表。如果未找到则返回空列表
-
register
public static void register(SmsBlend smsBlend)
注册短信服务对象- Parameters:
smsBlend- 短信服务对象
-
register
public static void register(SmsBlend smsBlend, Integer weight)
注册短信服务对象- Parameters:
smsBlend- 短信服务对象
-
registerIfAbsent
public static boolean registerIfAbsent(SmsBlend smsBlend)
以configId为标识,当短信服务对象不存在时,进行注册- Parameters:
smsBlend- 短信服务对象- Returns:
- 是否注册成功
当对象不存在时,进行注册并返回true
当对象已存在时,返回false
-
registerIfAbsent
public static boolean registerIfAbsent(SmsBlend smsBlend, Integer weight)
registerIfAbsent以configId为标识,当短信服务对象不存在时,进行注册。并添加至系统的负载均衡器
- Parameters:
smsBlend- 短信服务对象weight- 权重- Returns:
- 是否注册成功
当对象不存在时,进行注册并返回true
当对象已存在时,返回false
-
unregister
public static boolean unregister(String configId)
注销短信服务对象与此同时会注销掉负载均衡器中已经存在的对象
- Parameters:
configId- 标识- Returns:
- 是否注销成功
当configId存在时,进行注销并返回true
当configId不存在时,返回false
-
reload
public static void reload(String configId, SmsReadConfig smsReadConfig)
reload重新读取并刷新缓存内短信实例
- Parameters:
configId- 配置标识smsReadConfig- 配置接口实现对象
-
reloadAll
public static void reloadAll(SmsReadConfig smsReadConfig)
reloadAll重新读取并刷新全部短信实例
- Parameters:
smsReadConfig- 配置接口实现对象
-
-