<div dir="ltr">Hello summers!<div><br></div><div>nice write up - I also commented on the PR, but a bit inline :)<br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 19, 2013 at 2:04 PM, Summers Pittman <span dir="ltr">&lt;<a href="mailto:supittma@redhat.com" target="_blank">supittma@redhat.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">So I&#39;ve gotten a draft of the Pipe document up.<br>
<br>
<a href="https://github.com/aerogear/aerogear.org/blob/pipe_spec/docs/specs/aerogear-client-pipe/index.markdown" target="_blank">https://github.com/aerogear/aerogear.org/blob/pipe_spec/docs/specs/aerogear-client-pipe/index.markdown</a><br>

<br>
Some things I would like to call out and discuss include<br>
<br>
1 ) Pipe implementations should be thread safe.  Specifically calls to read, remove, and save should not change the internal state of a Pipe object.<br></blockquote><div><br></div><div style>+1 on that</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br>
2 ) Pipeline.get is not guaranteed to always return the same instance of a Pipe.<br>
This is something that came up with Android.  Loaders are 1:1 on the Activity or Fragment which references the Loader.  Therefore if a Pipe is reused between multiple Activities each one is proxied  in a different Loader.<br>
</blockquote><div><br></div><div style>hrm, I am not sure</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
3 ) A Pipe may proxy or delegate to a handler and this handler can be exposed as a property.<br>
This is an Androidism as well.  I think it can probably be dropped from the spec but I wanted to see what other people thought about it.<br></blockquote><div><br></div><div><br></div><div style>yeah, let&#39;s drop that</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Some things which we may need to flesh out to make the spec more complete are<br>
<br>
1 ) Authorization and Authentication.  This is probably another document<br></blockquote><div><br></div><div style>+1 on a specific doc for that </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br>
2 ) A callback spec/definition.  I am not sure whether this is a separate document or not.  Either way it should be short and sweet.<br></blockquote><div><br></div><div><br></div><div style>I think this could be part of your Pipe Spec, it&#39;s really somewhat tied to it</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
3 ) Platform implementation docs.  A document with the code examples/comparisons and notes where they may diverge from each other.  For instance in Android Callback is passed instances of the resource a pipe represents, but in iOS and Javascript the callback is passed a map of values.  I didn&#39;t explicitly define this behavior in the spec.<br>
</blockquote><div><br></div><div><br></div><div style>A usage doc, like we (Sebi :-)) did for Paging would be good</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br>
<br>
Summers<br>
<br>
_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Matthias Wessendorf <br><br>blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a>
</div></div></div>