: Public Note
Created: 08/10/2018 14:54:23
Modified: 11/10/2018 18:33:30
Project:
Advanced:
<b>[Core] Market Participant</b><br/>Logging (Logging Database) is active for every exchanged message (input and output)<br/><br/>Thread 1 :: Form [Interface] as trigger<br/><ol>
<li>Receive offers from form [Interface]</li><li>Validate against corresponding XSD (manually)</li><li>If the Offer ID doesn't exist in [Storage] Offer Database yet, set changeFlag = false. If it does, set changeFlag = true.</li><li>If changeFlag = false, Save into [Storage] Offer Database. Otherwise, change offer status into <i>In Validation</i></li><li>Generate XML message of the offer (use the same timestamp and other fields as described in Sequence 1)</li><li>If changeFlag = false, use CreateGeneralOffer operation (RequestGeneralOffer service).</li></ol>
Otherwise, use ChangeGeneralOffer.<br/><br/>Thread 2 :: #lt;#lt;WS#gt;#gt; ReceiveGeneralOffer <b>Changed</b><br/><ol>
<li>Verify if there exists a related offer (at document level) in the database [Storage]</li><li>Save into Offer Database [Storage] (with timestamp) if it does. If not, discard document.</li></ol>
<br/>Thread 3 :: #lt;#lt;WS#gt;#gt; ReceiveGeneralOffer <b>Created</b><br/><ol>
<li>Look for the original offer (ID at document level) in Offer Database [Storage]</li><li>Change its status</li></ol>
<br/>Thread 4 :: #lt;#lt;WS#gt;#gt; ReceiveMarketResults <b>Created</b><br/><ol>
<li>Save results into MarketResults Database [Storage]</li></ol>
<br/><i>(From Scenario 1)</i><br/>