1 19 20 package org.netbeans.modules.tasklist.usertasks.filter; 21 22 import java.net.URL ; 23 import java.util.Date ; 24 25 import org.netbeans.modules.tasklist.core.TaskProperties; 26 import org.netbeans.modules.tasklist.core.filter.SuggestionProperty; 27 import org.netbeans.modules.tasklist.usertasks.model.UserTask; 28 import org.netbeans.modules.tasklist.usertasks.util.UTUtils; 29 30 36 public class UserTaskProperties extends TaskProperties { 37 public static final String PROPID_PRIORITY = "priority"; public static final String PROPID_SUMMARY = "summary"; public static final String PROPID_DETAILS = "details"; public static final String PROPID_CATEGORY = "category"; public static final String PROPID_FILENAME = "filename"; public static final String PROPID_LINE_NUMBER = "line"; public static final String PROPID_CREATED_DATE = "created"; public static final String PROPID_LAST_EDITED_DATE = "edited"; public static final String PROPID_DUE_DATE = "dueDate"; public static final String PROPID_DONE = "done"; public static final String PROPID_PERCENT_COMPLETE = "percentComplete"; public static final String PROPID_EFFORT = "effort"; public static final String PROPID_REMAINING_EFFORT = "remainingEffort"; public static final String PROPID_SPENT_TIME = "spentTime"; public static final String PROPID_OWNER = "owner"; public static final String PROPID_COMPLETED_DATE = "completedDate"; public static final String PROPID_START = "start"; public static final String PROPID_SPENT_TIME_TODAY = "spentTimeToday"; 56 public static SuggestionProperty PROP_SUMMARY = 57 new SuggestionProperty(PROPID_SUMMARY, String .class) { 58 public Object getValue(Object obj) {return ((UserTask) obj).getSummary(); } 59 }; 60 61 public static SuggestionProperty PROP_PRIORITY = 62 new SuggestionProperty(PROPID_PRIORITY, String .class) { 63 public Object getValue(Object obj) { 64 return new Integer (((UserTask) obj).getPriority()); 66 } 67 }; 68 69 public static SuggestionProperty PROP_DETAILS = 70 new SuggestionProperty(PROPID_DETAILS, String .class) { 71 public Object getValue(Object obj) {return ((UserTask) obj).getDetails(); } 72 }; 73 74 public static final SuggestionProperty PROP_CATEGORY = 75 new SuggestionProperty(PROPID_CATEGORY, String .class) { 76 public Object getValue(Object obj) { 77 return ((UserTask) obj).getCategory(); 78 } 79 }; 80 81 public static final SuggestionProperty PROP_FILENAME = 82 new SuggestionProperty(PROPID_FILENAME, String .class) { 83 public Object getValue(Object obj) { 84 URL url = ((UserTask) obj).getUrl(); 85 if (url == null) 86 return ""; else 88 return url.toExternalForm(); 89 } 90 }; 91 92 public static final SuggestionProperty PROP_LINE_NUMBER = 93 new SuggestionProperty(PROPID_LINE_NUMBER, Integer .class) { 94 public Object getValue(Object obj) { 95 return new Integer (((UserTask) obj).getLineNumber() + 1); 96 } 97 }; 98 99 public static final SuggestionProperty PROP_CREATED_DATE = 100 new SuggestionProperty(PROPID_CREATED_DATE, Date .class) { 101 public Object getValue(Object obj) { 102 return new Date (((UserTask) obj).getCreatedDate()); 103 } 104 }; 105 106 public static final SuggestionProperty PROP_LAST_EDITED_DATE = 107 new SuggestionProperty(PROPID_LAST_EDITED_DATE, Date .class) { 108 public Object getValue(Object obj) { 109 return new Date (((UserTask) obj).getLastEditedDate()); 110 } 111 }; 112 113 public static final SuggestionProperty PROP_COMPLETED_DATE = 114 new SuggestionProperty(PROPID_COMPLETED_DATE, Date .class) { 115 public Object getValue(Object obj) { 116 return new Date (((UserTask) obj).getCompletedDate()); 117 } 118 }; 119 120 public static final SuggestionProperty PROP_DUE_DATE = 121 new SuggestionProperty(PROPID_DUE_DATE, Date .class) { 122 public Object getValue(Object obj) { 123 return ((UserTask) obj).getDueDate(); 124 } 125 }; 126 127 public static final SuggestionProperty PROP_DONE = 128 new SuggestionProperty(PROPID_DONE, Boolean .class) { 129 public Object getValue(Object obj) { 130 return Boolean.valueOf(((UserTask) obj).isDone()); 131 } 132 }; 133 134 public static final SuggestionProperty PROP_PERCENT_COMPLETE = 135 new SuggestionProperty(PROPID_PERCENT_COMPLETE, Integer .class) { 136 public Object getValue(Object obj) { 137 return new Integer (((UserTask) obj).getPercentComplete()); 138 } 139 }; 140 141 public static final SuggestionProperty PROP_EFFORT = 142 new SuggestionProperty(PROPID_EFFORT, Integer .class) { 143 public Object getValue(Object obj) { 144 return new Integer (((UserTask) obj).getEffort()); 145 } 146 }; 147 148 public static final SuggestionProperty PROP_REMAINING_EFFORT = 149 new SuggestionProperty(PROPID_REMAINING_EFFORT, Integer .class) { 150 public Object getValue(Object obj) { 151 return new Integer (((UserTask) obj).getRemainingEffort()); 152 } 153 }; 154 155 public static final SuggestionProperty PROP_SPENT_TIME = 156 new SuggestionProperty(PROPID_SPENT_TIME, Integer .class) { 157 public Object getValue(Object obj) { 158 return new Integer (((UserTask) obj).getSpentTime()); 159 } 160 }; 161 162 public static final SuggestionProperty PROP_SPENT_TIME_TODAY = 163 new SuggestionProperty(PROPID_SPENT_TIME_TODAY, Integer .class) { 164 public Object getValue(Object obj) { 165 return new Integer (((UserTask) obj).getSpentTimeToday()); 166 } 167 }; 168 169 public static final SuggestionProperty PROP_OWNER = 170 new SuggestionProperty(PROPID_OWNER, String .class) { 171 public Object getValue(Object obj) { 172 return ((UserTask) obj).getOwner(); 173 } 174 }; 175 176 public static final SuggestionProperty PROP_START = 177 new SuggestionProperty(PROPID_START, Date .class) { 178 public Object getValue(Object obj) { 179 long start = ((UserTask) obj).getStart(); 180 if (start == -1) 181 return null; 182 else 183 return new Date (start); 184 } 185 }; 186 187 public static SuggestionProperty getProperty(String propID) { 188 if (propID.equals(PROPID_CATEGORY)) { 189 return PROP_CATEGORY; 190 } else if (propID.equals(PROPID_FILENAME)) { 191 return PROP_FILENAME; 192 } else if (propID.equals(PROPID_LINE_NUMBER)) { 193 return PROP_LINE_NUMBER; 194 } else if (propID.equals(PROPID_CREATED_DATE)) { 195 return PROP_CREATED_DATE; 196 } else if (propID.equals(PROPID_LAST_EDITED_DATE)) { 197 return PROP_LAST_EDITED_DATE; 198 } else if (propID.equals(PROPID_COMPLETED_DATE)) { 199 return PROP_COMPLETED_DATE; 200 } else if (propID.equals(PROPID_DUE_DATE)) { 201 return PROP_DUE_DATE; 202 } else if (propID.equals(PROPID_DONE)) { 203 return PROP_DONE; 204 } else if (propID.equals(PROPID_PERCENT_COMPLETE)) { 205 return PROP_PERCENT_COMPLETE; 206 } else if (propID.equals(PROPID_EFFORT)) { 207 return PROP_EFFORT; 208 } else if (propID.equals(PROPID_REMAINING_EFFORT)) { 209 return PROP_REMAINING_EFFORT; 210 } else if (propID.equals(PROPID_SPENT_TIME)) { 211 return PROP_SPENT_TIME; 212 } else if (propID.equals(PROPID_DETAILS)) { 213 return PROP_DETAILS; 214 } else if (propID.equals(PROPID_OWNER)) { 215 return PROP_OWNER; 216 } else if (propID.equals(PROPID_PRIORITY)) { 217 return PROP_PRIORITY; 218 } else if (propID.equals(PROPID_SUMMARY)) { 219 return PROP_SUMMARY; 220 } else if (propID.equals(PROPID_DETAILS)) { 221 return PROP_DETAILS; 222 } else if (propID.equals(PROPID_START)) { 223 return PROP_START; 224 } else if (propID.equals(PROPID_SPENT_TIME_TODAY)) { 225 return PROP_SPENT_TIME_TODAY; 226 } else { 227 throw new IllegalArgumentException ("Unresolved property id " + propID); } 229 } 230 } 231 | Popular Tags |