IBM WebSphere Multichannel Bank Transformation Toolkit, Version 7.1

Processor definitions

To provide concrete definitions, the following example defines a business operation for acquiring a mutual fund. See the Flow processor example: dialog navigation controller for a use case for this business operation. In the example, the fund acquisition processor is a self-defined processor, which means its definition is contained in the FundAcquisition.xml file. The example does not contain context, data, and format definitions but they should also be in the self-defined file or in the generic toolkit files.
<processor id="fundAcquisition" context="fundAcquisitionCtx"
    implClass="com.ibm.btt.automaton.DSEProcessor" refFlow="genericServerFlow"/>
  <refFormat name="hostSendFormat" refId="fundAcqHostSendFmt"/>
  <refFormat name="hostReceiveFormat" refId="fundAcqHostReceiveFmt"/>
  <refFormat name="preSendJournalFmt" refId="fundAcqPreSendJournalFmt"/>
  <refFormat name="postReceiveJournalFmt" refId="fundAcqPostReceiveJournalFmt"/>
</processor>

<flow id="genericServerFlow">
  <state id="initial" type="initial">
    <entryActions>
      <startAct id="startAct"/>
    </entryActions>
    <transitions>
      <transition id="startAct.start" targetState="journalEntry">
      </transition>
    </transitions>
  </state> 

  <state id="journalEntry" type="step">
    <entryActions>
       <journalEntry id="journalEntryStep">
       </journalEntry>
    </entryActions>
    <transitions>
      <transition id="journalEntryStep.ok" targetState="hostComms">
      </transition>
      <transition id="journalEntryStep.error" targetState="finalNotOK">
      </transition>
    </transitions>
  </state>

  <state id="hostComms" type="step">>
    <entryActions>
      <hostComms id="hostCommsStep">
      </hostComms>
    </entryActions>
    <transitions>
      <transition id="hostComms.ok" targetState="journalUpdate">
      </transition>
      <transition id="hostComms.error" targetState="finalNotOK">
      </transition>
    </transitions>
  </state>

  <state id="journalUpdate" type="step">
    <entryActions>
      <journalUpdate id="journalUpdateStep">
      </journalUpdate>
    </entryActions>
    <transitions>
      <transition id="journalUpdateStep.ok" targetState="finalOK">
    	</transition>
      <transition id="journalUpdateStep.error" targetState="finalNotOK">
      </transition>
    </transitions>
  </state>

  <state id="finalNotOK" type="final" typeIdInfo="notOK">
  </state>
  <state id="finalOK" type="final" typeIdInfo="OK">
  </state>
</flow>


Feedback