@Nonnull private static byte[] validateVersionAndData(final WorkerTaskData workerTask, final int workerApiVersion) throws InvalidTaskException, TaskRejectedException { final int version = workerTask.getVersion(); if (workerApiVersion < version) { throw new TaskRejectedException("Found task version " + version + ", which is newer than " + workerApiVersion); } final byte[] data = workerTask.getData(); if (data == null) { throw new InvalidTaskException("Invalid input message: task not specified"); } return data; }
/** * {@inheritDoc} Verify that the incoming task has the right type and is a version that can be handled. */ @Override public final Worker getWorker(final WorkerTaskData workerTaskData) throws TaskRejectedException, InvalidTaskException { return createWorker(verifyWorkerTask(workerTaskData.getClassifier(), workerTaskData.getVersion(), workerTaskData.getData()), workerTaskData); }
default Worker getWorker(WorkerTaskData workerTask) throws TaskRejectedException, InvalidTaskException { return getWorker(workerTask.getClassifier(), workerTask.getVersion(), workerTask.getStatus(), workerTask.getData(), workerTask.getContext(), workerTask.getTrackingInfo()); }
final int version = workerTask.getVersion();