private static TaskMessage buildTaskMessage(Document document, long workflowId, String projectId, String storageDirectory) throws CodecException { TaskData taskData = new TaskData(); taskData.setDocument(document); taskData.setOutputPartialReference(storageDirectory); taskData.setWorkflowId(String.valueOf(workflowId)); taskData.setExecutePolicyOnClassifiedDocuments(true); taskData.setProjectId(projectId); byte[] serializedTaskData = codec.serialise(taskData); TaskMessage taskMessage = new TaskMessage(); taskMessage.setTaskData(serializedTaskData); taskMessage.setContext(new HashMap<>()); taskMessage.setTaskId(String.valueOf(messageCount.addAndGet(1)) + "-" + document.getReference()); taskMessage.setTaskClassifier("PolicyWorker"); taskMessage.setTaskApiVersion(1); taskMessage.setTaskStatus(TaskStatus.NEW_TASK); taskMessage.setTo(destinationQueue); return taskMessage; } }