package org.sky.resource.rule.context;

import lombok.*;
import org.sky.core.literule.core.RuleContextComponent;
import org.sky.core.redis.cache.KdRedis;
import org.sky.core.sms.SmsTemplate;
import org.sky.core.sms.props.SmsProperties;
import org.sky.resource.pojo.entity.Sms;

import java.util.Map;

/**
 * Sms上下文
 *
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class SmsContext extends RuleContextComponent {
	/**
	 * 是否有缓存
	 */
	private Boolean isCached;
	/**
	 * sms数据
	 */
	private Sms sms;
	/**
	 * sms接口
	 */
	private SmsTemplate smsTemplate;
	/**
	 * sms配置
	 */
	private SmsProperties smsProperties;
	/**
	 * redis工具
	 */
	private KdRedis kdRedis;
	/**
	 * SmsTemplate配置缓存池
	 */
	private Map<String, SmsTemplate> templatePool;
	/**
	 * sms配置缓存池
	 */
	private Map<String, Sms> smsPool;


}
