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

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

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

dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/AddressTask.java revision 2896 by torben, Mon Feb 1 08:32:44 2016 UTC dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/fileupload/AddressTask.java revision 2994 by torben, Tue Mar 29 20:36:40 2016 UTC
# Line 1  Line 1 
1  package dk.daoas.adressevedligehold;  package dk.daoas.adressevedligehold.fileupload;
2    
3  import org.apache.commons.lang3.exception.ExceptionUtils;  import org.apache.commons.lang3.exception.ExceptionUtils;
4    
5    import dk.daoas.adressevedligehold.MailSender;
6    import dk.daoas.adressevedligehold.ReloadTask;
7    import dk.daoas.adressevedligehold.afstandandenrute.AfstandAndenRuteTask;
8  import dk.daoas.adressevedligehold.tasks.Task;  import dk.daoas.adressevedligehold.tasks.Task;
9    import dk.daoas.adressevedligehold.tasks.TaskLogger;
10  import dk.daoas.adressevedligehold.util.TimingHelper;  import dk.daoas.adressevedligehold.util.TimingHelper;
11    
12  /*  /*
  * TODO: trigger indlæsning  
13   *     *  
14   */   */
15    
16  public class AddressTask extends Task {  public class AddressTask extends Task {
17                    
18            private TaskLogger logger = TaskLogger.getInstance();
19            
20            private String distributor;
21            private String filename;
22            
23          AddressSource source;          AddressSource source;
24          boolean writeBack;          boolean writeBack;
25                    
# Line 19  public class AddressTask extends Task { Line 27  public class AddressTask extends Task {
27                                    
28                  this.source = source;                  this.source = source;
29                  this.writeBack = writeBack;                  this.writeBack = writeBack;
30                    
31                    this.distributor = source.getDistributor();
32                    this.filename = source.getFilename();
33          }          }
34                    
35                    
# Line 29  public class AddressTask extends Task { Line 40  public class AddressTask extends Task {
40                  try {                  try {
41                          TimingHelper timer = new TimingHelper();                          TimingHelper timer = new TimingHelper();
42                                                    
43                          System.out.println("Validating Source");                          logger.info("Validating Source");
44                          source.validate();                          source.validate();
45                                                    
46                          System.out.println("Reading data from DB");                          logger.info("Reading data from DB");
47                          AddressManager addrManager = new AddressManager();                          AddressManager addrManager = new AddressManager();
48                                                    
49                          System.out.println("Data is ready");                          logger.info("Data is ready");
50                                                    
51                          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
52                                                    
# Line 63  public class AddressTask extends Task { Line 74  public class AddressTask extends Task {
74                                  addrManager.dumpChanged();                                        addrManager.dumpChanged();      
75                          }                          }
76                                                    
77                          AddressReport report = new AddressReport(addrManager, entryCount, ugedage, source, timer, writeBack);                          AddressReport report = new AddressReport(addrManager, entryCount, ugedage, source, timer, writeBack, addrManager.getDuplicateCount() );
78                          report.sendRapport();                          report.sendRapport();
79                                                    
                         ReloadHelper.triggerReload( "Indlaesning/" + source.getDistributor() );  
80                                                    
81                            if (writeBack) {
82                                    manager.submitTask( new ReloadTask("Indlaesning/" + source.getDistributor()) );
83                                    
84                                    
85                                    if (source.calculateDistances()) {
86                                            Task tsk = new AfstandAndenRuteTask(source.getDistributor(), AfstandAndenRuteTask.INCREMENTAL);
87                                            manager.submitTask( tsk );
88                                    }                              
89                            }
90                                                    
91    
92                                                    
93                  } catch(Exception e) {                  } catch(Exception e) {
94                                                    
# Line 77  public class AddressTask extends Task { Line 97  public class AddressTask extends Task {
97                          body += "<br><br>";                          body += "<br><br>";
98                          body += "Exception:<br>";                          body += "Exception:<br>";
99                          body += ExceptionUtils.getStackTrace(e);                          body += ExceptionUtils.getStackTrace(e);
100                          AddressReport.sendMail(subject, body);                          MailSender.sendMail(subject, body);
101                                                    
102                          throw e; //rethrow exception                          throw e; //rethrow exception
103                  } finally  {                  } finally  {
104                                                    
105                          try {                          try {
106                                  System.out.println("Cleaning up resources");                                  logger.info("Cleaning up resources");
107                                  source.close();                                  source.close();
108                                    source = null; //and release it for garbace collection
109                          } catch (Exception e) {                          } catch (Exception e) {
110                                  System.out.println("Error during cleanup: " + e.getMessage() );                                  logger.warning("Error during cleanup: ", e );
111                          }                                                }                      
112                  }                  }
113    
# Line 94  public class AddressTask extends Task { Line 115  public class AddressTask extends Task {
115    
116          @Override          @Override
117          public String getDescription() {          public String getDescription() {
118                  return "AddressTask " + source.getDistributor();                  return "AddressTask " + distributor;
119          }          }
120    
121          @Override          @Override
# Line 104  public class AddressTask extends Task { Line 125  public class AddressTask extends Task {
125    
126          @Override          @Override
127          public String getDetail() {          public String getDetail() {
128                  return source.getFilename();                  return filename;
129          }          }
130    
131  }  }

Legend:
Removed from v.2896  
changed lines
  Added in v.2994

  ViewVC Help
Powered by ViewVC 1.1.20