O diagrama de montagem da conta de poupança é modificado para incluir uma ligação de importação extra, CurrentAccountRequest, que é utilizada para fazer chamadas para o fluxo de mensagens do intermediário que está hospedando a conta corrente.
O processo de negócios também está melhorado para refletir essa conta corrente e iniciar uma transferência somente se houver fundos suficientes.
As principais diferenças entre o aplicativo estendido e o simples são:
A conta corrente é hospedada no WebSphere Message Broker como um fluxo de mensagens que compreende dois subfluxos e os seguintes nós:
O nó SCAInput no fluxo de mensagens recebe a mensagem que contém a operação a ser executada, por exemplo, débito ou crédito, e o valor a transferir. Dependendo se o valor deve ser creditado ou debitado, a mensagem é propagada, utilizando o terminal dinâmico apropriado, para o subfluxo CurrentAccountDebit ou CurrentAccountCredit.
Ambos os subfluxos contêm nós JavaCompute:
Se o pedido da mensagem recebida for uma instrução para debitar a conta corrente, o valor de transferência é subtraído do saldo da conta corrente. Se o resultado for menor do que zero, o saldo anterior é propagado utilizando o ambiente local e uma mensagem de resposta é criada, a qual afirma que a transação não está autorizada. Se o resultado for maior ou igual a zero, o novo saldo é propagado, utilizando o ambiente local e uma mensagem de resposta é criada, a qual autoriza a transação.
Se o pedido da mensagem recebida for uma instrução para creditar a conta corrente, o valor da transferência é somado ao saldo da conta corrente. O novo saldo é propagado utilizando o ambiente local e uma mensagem de resposta é criada, a qual autoriza a transação.
A mensagem de resposta é enviada de volta ao responsável pela chamada, o WebSphere Process Server, no nó SCA Reply.