/[projects]/dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/DataLoader.java
ViewVC logotype

Diff of /dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/DataLoader.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2768 by torben, Wed Nov 4 22:10:59 2015 UTC revision 2769 by torben, Thu Nov 5 08:06:00 2015 UTC
# Line 12  import javax.mail.internet.MimeMessage; Line 12  import javax.mail.internet.MimeMessage;
12  import javax.servlet.ServletContext;  import javax.servlet.ServletContext;
13    
14  import dk.daoas.daoadresseservice.admin.ServiceConfig;  import dk.daoas.daoadresseservice.admin.ServiceConfig;
15    import dk.daoas.daoadresseservice.beans.DataStatisticsBean;
16  import dk.daoas.daoadresseservice.db.DatabaseLayerImplementation;  import dk.daoas.daoadresseservice.db.DatabaseLayerImplementation;
17    
18  public class DataLoader {  public class DataLoader {
# Line 27  public class DataLoader { Line 28  public class DataLoader {
28                  config = conf;                  config = conf;
29          }          }
30                    
31          public void doLoad() {          public void doLoad(String trigger) {
32                  synchronized(this) {                  synchronized(this) {
33                          if (isRunning == false) {                          if (isRunning == false) {
34                                  isRunning = true;                                  isRunning = true;
35                                                                    
36                                  Thread t = new Thread( new DataLoadWorker(this), "SearchDataLoader");                                  Thread t = new Thread( new DataLoadWorker(this, trigger), "SearchDataLoader");
37                                  t.start();                                  t.start();
38                          }                          }
39                  }                  }
# Line 58  public class DataLoader { Line 59  public class DataLoader {
59                  static final Logger logger = Logger.getLogger(DataLoadWorker.class.getName());                  static final Logger logger = Logger.getLogger(DataLoadWorker.class.getName());
60                                    
61                  DataLoader loader;                  DataLoader loader;
62                  public DataLoadWorker(DataLoader ld) {                  String trigger;
63                    public DataLoadWorker(DataLoader ld, String trigger) {
64                          this.loader = ld;                          this.loader = ld;
65                            this.trigger = trigger;
66                  }                  }
67                                    
68    
# Line 75  public class DataLoader { Line 78  public class DataLoader {
78                          loader.ctxt.setAttribute("search", search);                          loader.ctxt.setAttribute("search", search);
79                                                    
80                          if (loader.config.notifyEmail != null && loader.config.notifyEmail.length() > 0) {                          if (loader.config.notifyEmail != null && loader.config.notifyEmail.length() > 0) {
81                                  sendStatusEmail(search, oldSearch);                                  DataStatisticsBean oldStats = oldSearch != null ? oldSearch.getStatistics() : null;
82                                    sendStatusEmail(search.getStatistics(), oldStats);
83                          }                          }
84                                                    
85                          if (oldSearch != null) {                          if (oldSearch != null) {
# Line 90  public class DataLoader { Line 94  public class DataLoader {
94                                    
95                  }                  }
96                                    
97                  protected void sendStatusEmail(AddressSearch newSearch, AddressSearch oldSearch) {                  protected void sendStatusEmail(DataStatisticsBean newStats, DataStatisticsBean oldStats) {
98                          Properties props = new Properties();                          Properties props = new Properties();
99                          props.put("mail.smtp.host", "10.30.1.28");                          props.put("mail.smtp.host", "10.30.1.28");
100                                                    
# Line 100  public class DataLoader { Line 104  public class DataLoader {
104                                          session.setDebug(false);                                          session.setDebug(false);
105                                                                                    
106                                                                                    
107                                            String body = "Trigger: " + trigger + "\r\n\r\n";
108                                            body += "New stats:\r\n";
109                                            
110                                            body += "Direkte:      " + newStats.direkteCount + "\r\n";
111                                            body += "Extended:     " + newStats.extendedCount + "\r\n";
112                                            body += "100%:         " + newStats.hundredePctCount + "\r\n";
113                                            body += "Ikke-daekket: " + newStats.ikkeDaekketCount + "\r\n";
114                                            body += "Total:        " + newStats.totalCount + "\r\n";                                        
115                                            body += "Elapsed:      " + newStats.elapsed + "\r\n";
116                                            
117                                            if (oldStats != null) {
118                                                    body += "\r\n";
119                                                    body += "Delta to previous\r\n";
120                                                    body += "Direkte:      " + (newStats.direkteCount-oldStats.direkteCount) + "\r\n";
121                                                    body += "Extended:     " + (newStats.extendedCount-oldStats.extendedCount) + "\r\n";
122                                                    body += "100:          " + (newStats.hundredePctCount-oldStats.hundredePctCount) + "\r\n";
123                                                    body += "Ikke-daekket: " + (newStats.ikkeDaekketCount-oldStats.ikkeDaekketCount) + "\r\n";
124                                                    body += "Total:        " + (newStats.totalCount-oldStats.totalCount) + "\r\n";
125                                                    
126                                            }
127                                                            
128                                            
129                                          // create a message                                          // create a message
130                                                                                    
131                                          MimeMessage msg = new MimeMessage(session);                                          MimeMessage msg = new MimeMessage(session);
132                                          msg.setFrom( new InternetAddress("no-reply@daoas.dk") );                                          msg.setFrom( new InternetAddress("no-reply@daoas.dk") );
133                                                                                    
134                                          msg.setRecipient(Message.RecipientType.TO, new InternetAddress(loader.config.notifyEmail) );                                          msg.setRecipient(Message.RecipientType.TO, new InternetAddress(loader.config.notifyEmail) );
135                                          msg.setSubject("DaoAdresseService status ");                                                              msg.setSubject("DaoAdresseService load, trigger: " + trigger);                  
136                                          msg.setText("--");                                          msg.setText(body);
137                                                                                    
138                                          Transport.send(msg);                                          Transport.send(msg);
139                          } catch (Exception e) {                          } catch (Exception e) {

Legend:
Removed from v.2768  
changed lines
  Added in v.2769

  ViewVC Help
Powered by ViewVC 1.1.20