If SendResponse Participant joined Transaction and some other Participant returned ABORT later in the assembly line, then abort method of SendResponse will be called.
If SendResponse did not join Transaction and some other Participant returned ABORT, then prepareForAbort method of SendResponse will be called.
In both the cases, sendMessage will be called and RESPONSE will be sent back to client.
This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail from your system. If you are not the intended recipient you are notified that disclosing, copying, distributing or taking any action in reliance on the contents of this information is strictly prohibited.
Re: [jpos-users] AbortParticipant related question
SendResponse implements AbortParticipant because you typically want it to take the opportunity to join the transaction in order to provide a response back to the POS at commit time or abort time. You can of course use a flag in the Context to inhibit the response if you want to just ignore it and have the POS retry the transaction.
Without implementing AbortParticipant, SendResponse would only be able to provide replies in situations where the transactions commits (all participants return PREPARED).