@InvokeOnHeader(Web3jConstants.ETH_SUBMIT_WORK)
void ethSubmitWork(Message message) throws IOException {
String nonce = message.getHeader(Web3jConstants.NONCE, configuration::getNonce, String.class);
String headerPowHash = message.getHeader(Web3jConstants.HEADER_POW_HASH, configuration::getHeaderPowHash, String.class);
String mixDigest = message.getHeader(Web3jConstants.MIX_DIGEST, configuration::getHeaderPowHash, String.class);
Request<?, EthSubmitWork> request = web3j.ethSubmitWork(nonce, headerPowHash, mixDigest);
setRequestId(message, request);
EthSubmitWork response = request.send();
boolean hasError = checkForError(message, response);
if (!hasError) {
message.setBody(response.solutionValid());
}
}