@ Override protected void beforeWaitForSynchronization ( final T message ) throws CouldNotPerformException { transactionIdField = ProtoBufFieldProcessor . getFieldDescriptor ( message , TransactionIdProvider . TRANSACTION_ID_FIELD_NAME ) ; if ( transactionIdField == null ) { throw new NotAvailableException ( "transaction id field for message[" + message . getClass ( ) . getSimpleName ( ) + "]" ) ; } if ( transactionIdField . getType ( ) != Type . UINT64 ) { throw new CouldNotPerformException ( "Transaction id field of message[" + message . getClass ( ) . getSimpleName ( ) + "] has an unexpected type[" + transactionIdField . getType ( ) . name ( ) + "]" ) ; } }
Verify that the internal future has a transaction id field and that this field is of type long .