- java.lang.Object
-
- com.pragmatickm.task.servlet.TaskUtil
-
public final class TaskUtil extends Object
-
-
Method Summary
-
-
-
Method Detail
-
getTaskLogInBook
public static TaskLog getTaskLogInBook(ServletContext servletContext, HttpServletRequest request, String book, String page, String taskId) throws ServletException, IOException
- Throws:
ServletException
IOException
-
getTaskLog
public static TaskLog getTaskLog(ServletContext servletContext, HttpServletRequest request, String page, String taskId) throws ServletException, IOException
- Throws:
ServletException
IOException
-
getMostRecentEntry
public static TaskLog.Entry getMostRecentEntry(TaskLog taskLog, String statuses) throws IOException
- Throws:
IOException
-
getStatus
public static StatusResult getStatus(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Task task) throws TaskException, ServletException, IOException
Gets a human-readable description of the task status as well as an associated class. The status of a task, without any specific qualifying date, is:
For non-scheduled tasks (with no "on" date and no "recurring"), the status is:
- The status of the most recent log entry with no "scheduledOn" value
- "New"
For a scheduled, non-recurring task, the status is:
- If the status of the most recent log entry with a "scheduledOn" value equaling the task "on" date is of a "completedSchedule" type - use the status.
- If in the past, "Late YYYY-MM-DD"
- If today, "Due Today"
- If there is a status of the most recent log entry with a "scheduledOn" value equaling the task "on" date - use the status.
- Is in the future, "Waiting until YYYY-MM-DD"
For a recurring task, the status is:
- Find the first incomplete scheduledOn date (based on most recent log entries per scheduled date, in time order
- If the first incomplete is in the past, "Late YYYY-MM-DD"
- If the first incomplete is today, "Due Today"
- If the first incomplete is in the future, "Waiting until YYYY-MM-DD"
Status only available once frozen.
- Throws:
TaskException
ServletException
IOException
-
getStatus
public static StatusResult getStatus(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Task task, Cache cache) throws TaskException, ServletException, IOException
- Throws:
TaskException
ServletException
IOException
-
getMultipleStatuses
public static Map<Task,StatusResult> getMultipleStatuses(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Collection<? extends Task> tasks) throws TaskException, ServletException, IOException
- Throws:
TaskException
ServletException
IOException
-
getMultipleStatuses
public static Map<Task,StatusResult> getMultipleStatuses(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Collection<? extends Task> tasks, Cache cache) throws TaskException, ServletException, IOException
- Throws:
TaskException
ServletException
IOException
-
getDoAfters
public static List<Task> getDoAfters(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Task task) throws ServletException, IOException
Finds all tasks that must be done after this task. This requires a capture of the entire page tree meta data to find any task that has a doBefore pointing to this task.- Throws:
ServletException
IOException
-
getMultipleDoAfters
public static Map<Task,List<Task>> getMultipleDoAfters(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Collection<? extends Task> tasks) throws ServletException, IOException
Finds all tasks that must be done after each of the provided tasks. This requires a capture of the entire page tree meta data to find any task that has a doBefore pointing to each task.- Returns:
- The map of doAfters, in the same iteration order as the provided tasks. If no doAfters for a given task, will contain an empty list.
- Throws:
ServletException
IOException
-
getUser
public static User getUser(HttpServletRequest request, HttpServletResponse response)
-
prioritizeTasks
public static List<Task> prioritizeTasks(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Collection<? extends Task> tasks, boolean dateFirst) throws TaskException, ServletException, IOException
- Throws:
TaskException
ServletException
IOException
-
getAllTasks
public static List<Task> getAllTasks(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Page rootPage, User user) throws IOException, ServletException
- Throws:
IOException
ServletException
-
hasAssignedTask
public static boolean hasAssignedTask(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Page page, User user) throws ServletException, IOException
- Throws:
ServletException
IOException
-
getReadyTasks
public static List<Task> getReadyTasks(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Page rootPage, User user) throws IOException, ServletException
- Throws:
IOException
ServletException
-
getBlockedTasks
public static List<Task> getBlockedTasks(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Page rootPage, User user) throws IOException, ServletException
- Throws:
IOException
ServletException
-
getFutureTasks
public static List<Task> getFutureTasks(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response, Page rootPage, User user) throws IOException, ServletException
- Throws:
IOException
ServletException
-
-