/[projects]/dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/tasks/Task.java
ViewVC logotype

Diff of /dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/tasks/Task.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 2844 by torben, Mon Jan 25 21:43:59 2016 UTC
# Line 11  public abstract class Task implements Ru Line 11  public abstract class Task implements Ru
11          public static class TaskBean {          public static class TaskBean {
12                  public String description;                  public String description;
13                  public String detail;                  public String detail;
14                    public String errorMessage;
15                  public double percentCompleted;                  public double percentCompleted;
16                  public String state;                  public String state;
17          }          }
# Line 18  public abstract class Task implements Ru Line 19  public abstract class Task implements Ru
19          protected boolean abort = false;          protected boolean abort = false;
20          protected TaskState state = TaskState.STATE_QUEUED;          protected TaskState state = TaskState.STATE_QUEUED;
21          protected TaskManager manager;          protected TaskManager manager;
22            private String errorMsg;
23                    
24          public void setManager(TaskManager manager) {          public void setManager(TaskManager manager) {
25                  this.manager = manager;                  this.manager = manager;
# Line 35  public abstract class Task implements Ru Line 37  public abstract class Task implements Ru
37                          taskRun();                          taskRun();
38                          this.state = TaskState.STATE_DONE;                          this.state = TaskState.STATE_DONE;
39                  } catch (Exception e) {                  } catch (Exception e) {
40                            this.errorMsg = e.getMessage();
41                            e.printStackTrace();
42                          this.state = TaskState.STATE_ABORTED;                          this.state = TaskState.STATE_ABORTED;
43                  }                  }
44                                    
# Line 59  public abstract class Task implements Ru Line 63  public abstract class Task implements Ru
63                  bean.detail = this.getDetail();                  bean.detail = this.getDetail();
64                  bean.percentCompleted = this.getPercentCompleted();                  bean.percentCompleted = this.getPercentCompleted();
65                  bean.state = this.state.toString();                  bean.state = this.state.toString();
66                    bean.errorMessage = this.getErrorMessage();
67                                    
68                  return bean;                  return bean;
69          }          }
70                    
71          protected abstract void taskRun();          public String getErrorMessage() {
72                    return this.errorMsg;
73            }
74            
75            /**
76             * @throws Exception
77             *
78             * Implementing classes should not catch terminating exceptions but let it propagate to Task the Task::run()
79             * method.
80             */
81            protected abstract void taskRun() throws Exception;
82                    
83          public abstract String getDescription();          public abstract String getDescription();
84          public abstract String getDetail();          public abstract String getDetail();

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

  ViewVC Help
Powered by ViewVC 1.1.20