<div class="gmail_quote">2008/12/15 Alexey Proskuryakov <span dir="ltr">&lt;<a href="mailto:ap@webkit.org">ap@webkit.org</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div style="word-wrap:break-word"><br><div><div>Dec 15, 2008, Χ 9:47 AM, David Levin ΞΑΠΙΣΑΜ(Α):</div><div class="Ih2E3d"><br><blockquote type="cite"><span style="border-collapse:separate;color:rgb(0, 0, 0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><div>
<span style="font-size:12px">This is how I plan to finish making XMLHttpRequest available for workers</span></div><blockquote style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:40px;border-top-style:none;border-right-style:none;border-bottom-style:none;border-left-style:none;border-width:initial;border-color:initial;padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px">
<span style="font-family:Arial;font-size:12px"><a href="http://docs.google.com/Doc?id=dg7mj9sd_6dvthmdqj" style="color:rgb(17, 42, 187);font-family:Arial, sans-serif;font-size:12px !important" target="_blank">http://docs.google.com/Doc?id=dg7mj9sd_6dvthmdqj</a></span><br>
</blockquote><div><span style="font-size:12px"><br></span></div><div><span style="font-size:12px">Let me know if you have any comments.</span></div></span></blockquote><br></div></div><div>As discussed earlier, this looks good to me.</div>
<div><br></div><div><blockquote type="cite"><span style="color:rgb(0, 0, 0);font-family:Verdana;font-size:13px"><div style="margin-top:0px;margin-bottom:0px;direction:inherit"><ul style="margin-top:0px;margin-bottom:0px">
<li style="margin-top:0px;margin-bottom:0px">It may make the code more complicated to handle both WorkerContext and Document in some places (like responseXML)<br></li><li style="margin-top:0px;margin-bottom:0px">It makes the code a bit more fragile to future changes in which code may be added that uses document() which is executed on the Worker.<br>
</li></ul></div><div style="margin-top:0px;margin-bottom:0px;direction:inherit">To alleviate this, it makes sense to&nbsp;<span style="background-color:rgb(255, 242, 204)"><i>divide up the functionality into three classes: XMLHttpRequestBase, XMLHttpRequest, and XMLHttpRequestWorker.</i></span>&nbsp;In general, I expect 90%+ of the functionality to be in&nbsp;XMLHttpRequestBase, but any references to document() will be isolated to&nbsp;XMLHttpRequest.</div>
</span></blockquote><br></div><div>I&#39;m not much of a fan of this idea, because we want to make Worker functionality closer to main thread one in the future, and this would be a step in opposite direction. On the other hand, this division can be undone later if needed, so it all depends on how much forking needs to be introduced in XMLHttpRequest otherwise.</div>
<div><br></div><div>As far as fragility is concerned, I think that the right way to avoid it is via extensive test coverage.</div><br><div> <span style="border-collapse:separate;border-spacing:0px 0px;color:rgb(0, 0, 0);font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><div style="word-wrap:break-word">
<div>- WBR, Alexey Proskuryakov</div></div></span></div></div></blockquote><div><br></div><div><br></div><div>Can you elaborate on those future plans? &nbsp;You want to allow the responseXML method of XHR to work in the future? &nbsp;To expose &quot;data DOM&quot; support to workers? &nbsp;Or, are there other things as well?</div>
<div><br></div><div>-Darin&nbsp;</div></div>