Facebook
From Tiny Sheep, 1 Year ago, written in Plain Text.
This paste is a reply to Pairing from Big Matamata - view diff
Embed
Download Paste or View Raw
Hits: 137
  1. public enum MonitoringType {
  2.  
  3.     ADHOC       (ADHOC_TYPE, MONITORING_ADHOC_TEMPLATE, MONITORING_ADHOC_SUBJECT ),
  4.     SCHEDULER   (SCHEDULER_TYPE, MONITORING_ALERT_TEMPLATE, MONITORING_ALERT_SUBJECT),
  5.     LESS_PRS    (LESS_PRS_TYPE, MONITORING_LESS_PRS_TEMPLATE, MONITORING_DAILY_ALERT_SUBJECT);
  6.  
  7.     private final String monitorType;
  8.  
  9.     private final String emailTemplate;
  10.  
  11.     private final String emailSubject;
  12.  
  13.     MonitoringType(String monitorType, String emailTemplate, String emailSubject) {
  14.         this.monitorType = monitorType;
  15.         this.emailTemplate = emailTemplate;
  16.         this.emailSubject = emailSubject;
  17.     }
  18.  
  19.     public String getMonitorType() {
  20.         return monitorType;
  21.     }
  22.  
  23.     public String getEmailTemplate() {
  24.         return emailTemplate;
  25.     }
  26.  
  27.     public String getEmailSubject() {
  28.         return emailSubject;
  29.     }
  30.  
  31.     public static MonitoringType fromMonitorType(String monitorType) {
  32.  
  33.         if (monitorType == null || monitorType.isEmpty() || monitorType.isBlank()) {
  34.             throw new InvalidMonitoringType(ExceptionConstant.INVALID_MONITORING_TYPE);
  35.         }
  36.         for (MonitoringType monitoringEmailType : MonitoringType.values()) {
  37.             if (monitoringEmailType.getMonitorType().equals(monitorType)) {
  38.                 return monitoringEmailType;
  39.             }
  40.         }
  41.         throw new InvalidMonitoringType(ExceptionConstant.INVALID_MONITORING_TYPE);
  42.     }
  43.  
  44. }