<div dir="ltr"><pre style="margin-top:1.5em;margin-bottom:1.5em;padding:0px;border:0px;font-size:12.0012px;font-family:'andale mono','lucida console',monospace;vertical-align:baseline;white-space:pre-wrap;font-stretch:normal;line-height:18.0018px;color:rgb(83,83,83)">Hi Anil,</pre><pre style="margin-top:1.5em;margin-bottom:1.5em;padding:0px;border:0px;font-size:12.0012px;font-family:'andale mono','lucida console',monospace;vertical-align:baseline;white-space:pre-wrap;font-stretch:normal;line-height:18.0018px;color:rgb(83,83,83)"><span style="font-size:12.0012px;line-height:18.0018px">>I think we should adopt an asynchronous model, where we maintain the state for >tap-service and tap-flow objects. Valid states could be "created", "create->pending" and "failed." In addition, we will need a suitable mechanism to have >the plugin extract the current state from the agent/driver and provide it to >the end-user.</span><br></pre><pre style="margin-top:1.5em;margin-bottom:1.5em;padding:0px;border:0px;font-size:12.0012px;font-family:'andale mono','lucida console',monospace;vertical-align:baseline;white-space:pre-wrap;font-stretch:normal;line-height:18.0018px;color:rgb(83,83,83)"><span style="font-size:12.0012px;line-height:18.0018px">I think we may also need Pending-Update, if there is any focus of updating a tap-flow/tap-service in the future.</span></pre><pre style="margin-top:1.5em;margin-bottom:1.5em;padding:0px;border:0px;font-size:12.0012px;font-family:'andale mono','lucida console',monospace;vertical-align:baseline;white-space:pre-wrap;font-stretch:normal;line-height:18.0018px;color:rgb(83,83,83)"><span style="font-size:12.0012px;line-height:18.0018px">But yes, such states should exist as most of the processing should not be presented to the user ( i.e. User should not wait for a CLI/UI function to complete), specially if a lot of processing is required.</span></pre><pre style="margin-top:1.5em;margin-bottom:1.5em;padding:0px;border:0px;font-size:12.0012px;font-family:'andale mono','lucida console',monospace;vertical-align:baseline;white-space:pre-wrap;font-stretch:normal;line-height:18.0018px;color:rgb(83,83,83)">>For the former case,<span style="font-size:12.0012px;line-height:18.0018px">subsequent queries of the object's state will indicate if the operation has completed, is still pending or has failed.</span></pre><pre style="margin-top:1.5em;margin-bottom:1.5em;padding:0px;border:0px;font-size:12.0012px;font-family:'andale mono','lucida console',monospace;vertical-align:baseline;white-space:pre-wrap;font-stretch:normal;line-height:18.0018px;color:rgb(83,83,83)">Instead of polling, a callback can act as an interrupt and inform the frontend about Success/Failure of a job.</pre><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>Thanks and Regards,<br>Reedip Banerjee</div><div>IRC: reedip</div><div><br></div><div><br><br><br></div></div></div></div></div>
</div>