@Override public void onClick(final AjaxRequestTarget target, final T ignore) { SchedTaskDirectoryPanel.this.getTogglePanel().close(target); startAt.setExecutionDetail(model.getObject().getKey(), model.getObject().getName(), target); startAt.toggle(target, true); } }, ActionLink.ActionType.EXECUTE, StandardEntitlement.TASK_EXECUTE);
@Override public void updateSchedTask(final SchedTask task, final SchedTaskTO taskTO, final TaskUtils taskUtils) { Class<? extends TaskTO> taskTOClass = taskUtils.taskTOClass(); if (taskTOClass == null || !taskTOClass.equals(taskTO.getClass())) { throw new IllegalArgumentException(String.format("Expected %s, found %s", taskTOClass, taskTO.getClass())); } if (StringUtils.isBlank(taskTO.getName())) { SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.RequiredValuesMissing); sce.getElements().add("name"); throw sce; } task.setName(taskTO.getName()); task.setDescription(taskTO.getDescription()); task.setCronExpression(taskTO.getCronExpression()); task.setActive(taskTO.isActive()); if (task instanceof ProvisioningTask) { fill((ProvisioningTask) task, (ProvisioningTaskTO) taskTO); } }
@Override public SchedTask createSchedTask(final SchedTaskTO taskTO, final TaskUtils taskUtils) { Class<? extends TaskTO> taskTOClass = taskUtils.taskTOClass(); if (taskTOClass == null || !taskTOClass.equals(taskTO.getClass())) { throw new IllegalArgumentException(String.format("Expected %s, found %s", taskTOClass, taskTO.getClass())); } SchedTask task = taskUtils.newTask(); task.setStartAt(taskTO.getStartAt()); task.setCronExpression(taskTO.getCronExpression()); task.setName(taskTO.getName()); task.setDescription(taskTO.getDescription()); task.setActive(taskTO.isActive()); if (taskUtils.getType() == TaskType.SCHEDULED) { Implementation implementation = implementationDAO.find(taskTO.getJobDelegate()); if (implementation == null) { throw new NotFoundException("Implementation " + taskTO.getJobDelegate()); } task.setJobDelegate(implementation); } else if (taskTO instanceof ProvisioningTaskTO) { ProvisioningTaskTO provisioningTaskTO = (ProvisioningTaskTO) taskTO; ExternalResource resource = resourceDAO.find(provisioningTaskTO.getResource()); if (resource == null) { throw new NotFoundException("Resource " + provisioningTaskTO.getResource()); } ((ProvisioningTask) task).setResource(resource); fill((ProvisioningTask) task, provisioningTaskTO); } return task; }