Search in sources :

Example 1 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project OpenOLAT by OpenOLAT.

the class TaskExecutorManagerImpl method execute.

@Override
public void execute(Runnable task) {
    // wrap call to the task here to catch all errors that are may not catched yet in the task itself
    // like outOfMemory or other system errors.
    Task persistentTask = null;
    if (task instanceof LongRunnable) {
        persistentTask = persistentTaskDao.createTask(UUID.randomUUID().toString(), (LongRunnable) task);
        dbInstance.commit();
    } else {
        execute(task, persistentTask, (task instanceof Sequential));
    }
}
Also used : LongRunnable(org.olat.core.commons.services.taskexecutor.LongRunnable) Task(org.olat.core.commons.services.taskexecutor.Task) PersistentTask(org.olat.core.commons.services.taskexecutor.model.PersistentTask) Sequential(org.olat.core.commons.services.taskexecutor.Sequential)

Example 2 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project openolat by klemens.

the class BulkAssessmentOverviewController method reloadTaskModel.

private void reloadTaskModel() {
    List<Task> tasks = taskManager.getTasks(courseEntry.getOlatResource());
    List<TaskData> taskDatas = new ArrayList<TaskData>(tasks.size());
    ICourse course = CourseFactory.loadCourse(courseEntry);
    Structure structure = course.getRunStructure();
    for (Task task : tasks) {
        String fullName = null;
        if (task.getCreator() != null) {
            fullName = userManager.getUserDisplayName(task.getCreator());
        }
        BulkAssessmentTask runnable = taskManager.getPersistedRunnableTask(task, BulkAssessmentTask.class);
        AssessableCourseNode courseNode = (AssessableCourseNode) structure.getNode(runnable.getCourseNodeIdent());
        taskDatas.add(new TaskData(task, runnable, courseNode, fullName));
    }
    taskModel.setObjects(taskDatas);
    taskListEl.reset();
    flc.contextPut("hasScheduledTasks", Boolean.valueOf(taskDatas.size() > 0));
}
Also used : AssessableCourseNode(org.olat.course.nodes.AssessableCourseNode) Task(org.olat.core.commons.services.taskexecutor.Task) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) ArrayList(java.util.ArrayList) ICourse(org.olat.course.ICourse) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) Structure(org.olat.course.Structure)

Example 3 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project openolat by klemens.

the class ScheduleStepForm method initForm.

@Override
protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
    formLayout.setElementCssClass("o_sel_bulk_assessment_schedule");
    setFormTitle("schedule.title");
    setFormDescription("schedule.description");
    setFormContextHelp("Using Course Tools#bulkassessment_schedule");
    String[] typeValues = new String[] { translate("schedule.immediately"), translate("schedule.delayed") };
    scheduleTypeEl = uifactory.addRadiosVertical("schedule.type", formLayout, typeKeys, typeValues);
    scheduleTypeEl.addActionListener(FormEvent.ONCHANGE);
    boolean delayed;
    Date scheduleDate;
    Task task = (Task) getFromRunContext("task");
    if (task != null && task.getScheduledDate() != null) {
        scheduleDate = task.getScheduledDate();
        delayed = true;
    } else {
        Calendar cal = Calendar.getInstance();
        cal.add(Calendar.DATE, 1);
        for (int i = Calendar.HOUR; i < Calendar.MILLISECOND; i++) {
            cal.set(i, 0);
        }
        scheduleDate = cal.getTime();
        delayed = false;
    }
    scheduleDateChooser = uifactory.addDateChooser("scheduleDateChooser", "schedule.date", scheduleDate, formLayout);
    scheduleDateChooser.setValidDateCheck("schedule.error.past");
    scheduleDateChooser.setDateChooserTimeEnabled(true);
    scheduleTypeEl.select(delayed ? typeKeys[1] : typeKeys[0], true);
    scheduleDateChooser.setVisible(delayed);
}
Also used : Task(org.olat.core.commons.services.taskexecutor.Task) Calendar(java.util.Calendar) Date(java.util.Date)

Example 4 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project openolat by klemens.

the class TaskExecutorManagerImpl method execute.

@Override
public void execute(Runnable task) {
    // wrap call to the task here to catch all errors that are may not catched yet in the task itself
    // like outOfMemory or other system errors.
    Task persistentTask = null;
    if (task instanceof LongRunnable) {
        persistentTask = persistentTaskDao.createTask(UUID.randomUUID().toString(), (LongRunnable) task);
        dbInstance.commit();
    } else {
        execute(task, persistentTask, (task instanceof Sequential));
    }
}
Also used : LongRunnable(org.olat.core.commons.services.taskexecutor.LongRunnable) Task(org.olat.core.commons.services.taskexecutor.Task) PersistentTask(org.olat.core.commons.services.taskexecutor.model.PersistentTask) Sequential(org.olat.core.commons.services.taskexecutor.Sequential)

Example 5 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project OpenOLAT by OpenOLAT.

the class TaskStatusRenderer method render.

@Override
public void render(Renderer renderer, StringOutput target, Object cellValue, int row, FlexiTableComponent source, URLBuilder ubu, Translator translator) {
    if (cellValue instanceof Task) {
        cellValue = ((Task) cellValue).getStatus();
    }
    if (cellValue instanceof TaskStatus) {
        TaskStatus status = (TaskStatus) cellValue;
        Translator localTranslator = Util.createPackageTranslator(TaskStatusRenderer.class, translator.getLocale(), translator);
        switch(status) {
            case newTask:
                target.append(localTranslator.translate("newTask"));
                break;
            case inWork:
                target.append(localTranslator.translate("inWork"));
                break;
            case failed:
                target.append(localTranslator.translate("failed"));
                break;
            case done:
                target.append(localTranslator.translate("done"));
                break;
            case edition:
                target.append(localTranslator.translate("edition"));
                break;
            default:
                target.append("???");
                break;
        }
    }
}
Also used : Task(org.olat.core.commons.services.taskexecutor.Task) Translator(org.olat.core.gui.translator.Translator) TaskStatus(org.olat.core.commons.services.taskexecutor.TaskStatus)

Aggregations

Task (org.olat.core.commons.services.taskexecutor.Task)10 Date (java.util.Date)4 BulkAssessmentTask (org.olat.course.assessment.manager.BulkAssessmentTask)4 AssessableCourseNode (org.olat.course.nodes.AssessableCourseNode)4 ArrayList (java.util.ArrayList)2 Calendar (java.util.Calendar)2 LongRunnable (org.olat.core.commons.services.taskexecutor.LongRunnable)2 Sequential (org.olat.core.commons.services.taskexecutor.Sequential)2 TaskStatus (org.olat.core.commons.services.taskexecutor.TaskStatus)2 PersistentTask (org.olat.core.commons.services.taskexecutor.model.PersistentTask)2 UserRequest (org.olat.core.gui.UserRequest)2 WindowControl (org.olat.core.gui.control.WindowControl)2 Step (org.olat.core.gui.control.generic.wizard.Step)2 StepRunnerCallback (org.olat.core.gui.control.generic.wizard.StepRunnerCallback)2 StepsMainRunController (org.olat.core.gui.control.generic.wizard.StepsMainRunController)2 StepsRunContext (org.olat.core.gui.control.generic.wizard.StepsRunContext)2 Translator (org.olat.core.gui.translator.Translator)2 ICourse (org.olat.course.ICourse)2 Structure (org.olat.course.Structure)2 BulkAssessmentDatas (org.olat.course.assessment.model.BulkAssessmentDatas)2