/[projects]/dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/fileupload/AddressTask.java
ViewVC logotype

Diff of /dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/fileupload/AddressTask.java

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

revision 2838 by torben, Sun Jan 24 21:48:55 2016 UTC revision 2924 by torben, Fri Feb 5 08:01:18 2016 UTC
# Line 1  Line 1 
1  package dk.daoas.adressevedligehold;  package dk.daoas.adressevedligehold;
2    
3    import org.apache.commons.lang3.exception.ExceptionUtils;
4    
5  import dk.daoas.adressevedligehold.tasks.Task;  import dk.daoas.adressevedligehold.tasks.Task;
6    import dk.daoas.adressevedligehold.tasks.TaskLogger;
7  import dk.daoas.adressevedligehold.util.TimingHelper;  import dk.daoas.adressevedligehold.util.TimingHelper;
8    
9    /*
10     * TODO: trigger indlæsning
11     *  
12     */
13    
14  public class AddressTask extends Task {  public class AddressTask extends Task {
15                    
16            private TaskLogger logger = TaskLogger.getInstance();
17            
18          AddressSource source;          AddressSource source;
19          boolean writeBack;          boolean writeBack;
20                    
# Line 13  public class AddressTask extends Task { Line 23  public class AddressTask extends Task {
23                  this.source = source;                  this.source = source;
24                  this.writeBack = writeBack;                  this.writeBack = writeBack;
25          }          }
26            
27            
28    
29          @Override          @Override
30          protected void taskRun() {          protected void taskRun() throws Exception {
31                                    
32                  try {                  try {
33                          TimingHelper timer = new TimingHelper();                          TimingHelper timer = new TimingHelper();
34                          System.out.println("Reading data from DB");                          
35                            logger.info("Validating Source");
36                            source.validate();
37                            
38                            logger.info("Reading data from DB");
39                          AddressManager addrManager = new AddressManager();                          AddressManager addrManager = new AddressManager();
40                                                    
41                          System.out.println("Data is ready");                          logger.info("Data is ready");
42                                                    
43                          EntryUgedage ugedage = new EntryUgedage(); //saml op på hvilke ugedage der er blevet behandlet                          EntryUgedage ugedage = new EntryUgedage(); //saml op på hvilke ugedage der er blevet behandlet
44                                                    
# Line 50  public class AddressTask extends Task { Line 66  public class AddressTask extends Task {
66                                  addrManager.dumpChanged();                                        addrManager.dumpChanged();      
67                          }                          }
68                                                    
69                          AddressReport report = new AddressReport(addrManager, entryCount, ugedage, source, timer, writeBack);                          AddressReport report = new AddressReport(addrManager, entryCount, ugedage, source, timer, writeBack, addrManager.getDuplicateCount() );
70                          report.sendRapport();                          report.sendRapport();
71                                                    
72                                                    
73                            if (writeBack) {
74                                    ReloadHelper.triggerReload( "Indlaesning/" + source.getDistributor() );
75                            }
76                                                    
77                  } catch (Exception e) {                          
78                          e.printStackTrace();                          
79                  }                  } catch(Exception e) {
80                                            
81                                            String subject = "Error loading data for " + source.getDistributor();
82                  try {                          String body = "File: " + source.getFilename();
83                          System.out.println("Cleaning up resources");                          body += "<br><br>";
84                          source.close();                          body += "Exception:<br>";
85                  } catch (Exception e) {                          body += ExceptionUtils.getStackTrace(e);
86                          System.out.println("Error during cleanup: " + e.getMessage() );                          AddressReport.sendMail(subject, body);
87                            
88                            throw e; //rethrow exception
89                    } finally  {
90                            
91                            try {
92                                    logger.info("Cleaning up resources");
93                                    source.close();
94                            } catch (Exception e) {
95                                    logger.warning("Error during cleanup: ", e );
96                            }                      
97                  }                  }
98    
99          }          }
100    
101          @Override          @Override
# Line 74  public class AddressTask extends Task { Line 104  public class AddressTask extends Task {
104          }          }
105    
106          @Override          @Override
107          public short getPercentCompleted() {          public double getPercentCompleted() {
108                  return 0;                  return -1;
109          }          }
110    
111          @Override          @Override

Legend:
Removed from v.2838  
changed lines
  Added in v.2924

  ViewVC Help
Powered by ViewVC 1.1.20