
com.anji.plus.gaea.push.enums.PushEnum Maven / Gradle / Ivy
package com.anji.plus.gaea.push.enums;
import com.anji.plus.gaea.push.type.dingding.GaeaDingTalkTemplate;
import com.anji.plus.gaea.push.type.email.GaeaMailTemplate;
import com.anji.plus.gaea.push.type.sms.SmsPushDetails;
import org.apache.commons.lang3.EnumUtils;
import java.util.List;
/**
* @ClassName PushEnum
* @Description: 消息推送枚举类
* @Author dingkaiqiang
* @Date 2021-04-06
* @Version V1.0
**/
public enum PushEnum {
/**
* mail:邮件; dingtalk:钉钉 sms:短信;
*/
EMAIL("mail", GaeaMailTemplate.class),
DING_DING("dingtalk", GaeaDingTalkTemplate.class),
SMS("sms", SmsPushDetails.class);
/**
* 消息类型
*/
private String type;
/**
* 发送消息类对应 的class
*/
private Class aClass;
PushEnum(String type, Class aClass) {
this.type = type;
this.aClass = aClass;
}
private static List allSector = EnumUtils.getEnumList(PushEnum.class);
/**
* 根据class 获取到具体的 value
* @param type
* @return
*/
public static Class getClassByType(String type) {
for (PushEnum sectorEnum : allSector) {
if (sectorEnum.getType().equals(type)) {
return sectorEnum.getaClass();
}
}
return null;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public Class getaClass() {
return aClass;
}
public void setaClass(Class aClass) {
this.aClass = aClass;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy