1 16 package org.outerj.daisy.doctaskrunner.commonimpl; 17 18 import org.outerj.daisy.doctaskrunner.Task; 19 import org.outerj.daisy.doctaskrunner.TaskState; 20 import org.outerx.daisy.x10Doctaskrunner.TaskDocument; 21 22 import java.util.Date ; 23 import java.util.GregorianCalendar ; 24 import java.util.Calendar ; 25 26 public class TaskImpl implements Task { 27 private final long id; 28 private final String description; 29 private final TaskState state; 30 private final long ownerId; 31 private final String progress; 32 private final String details; 33 private final String script; 34 private final String scriptLanguage; 35 private final Date startedAt; 36 private final Date finishedAt; 37 38 public TaskImpl(long id, String description, TaskState state, long ownerId, String progress, String details, 39 String script, String scriptLanguage, Date startedAt, Date finishedAt) { 40 this.id = id; 41 this.description = description; 42 this.state = state; 43 this.ownerId = ownerId; 44 this.progress = progress; 45 this.details = details; 46 this.script = script; 47 this.scriptLanguage = scriptLanguage; 48 this.startedAt = startedAt; 49 this.finishedAt = finishedAt; 50 } 51 52 public long getId() { 53 return id; 54 } 55 56 public String getDescription() { 57 return description; 58 } 59 60 public TaskState getState() { 61 return state; 62 } 63 64 public long getOwnerId() { 65 return ownerId; 66 } 67 68 public String getProgressIndication() { 69 return progress; 70 } 71 72 public String getDetails() { 73 return details; 74 } 75 76 public String getScript() { 77 return script; 78 } 79 80 public String getScriptLanguage() { 81 return scriptLanguage; 82 } 83 84 public Date getStartedAt() { 85 return (Date )startedAt.clone(); 86 } 87 88 public Date getFinishedAt() { 89 return (Date )finishedAt.clone(); 90 } 91 92 public TaskDocument getXml() { 93 TaskDocument taskDocument = TaskDocument.Factory.newInstance(); 94 TaskDocument.Task taskXml = taskDocument.addNewTask(); 95 96 taskXml.setId(id); 97 taskXml.setDescription(description); 98 taskXml.setOwnerId(ownerId); 99 taskXml.setProgress(progress); 100 TaskDocument.Task.Script scriptXml = taskXml.addNewScript(); 101 scriptXml.setLanguage(scriptLanguage); 102 scriptXml.setStringValue(script); 103 taskXml.setStartedAt(getCalendar(startedAt)); 104 if (finishedAt != null) 105 taskXml.setFinishedAt(getCalendar(finishedAt)); 106 taskXml.setState(TaskDocument.Task.State.Enum.forString(state.toString())); 107 if (details != null) 108 taskXml.setDetails(details); 109 110 return taskDocument; 111 } 112 113 private Calendar getCalendar(Date date) { 114 GregorianCalendar calendar = new GregorianCalendar (); 115 calendar.setTime(date); 116 return calendar; 117 } 118 } 119 | Popular Tags |