<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Apr 2, 2013, at 4:03 PM, Matthias Wessendorf &lt;<a href="mailto:matzew@apache.org">matzew@apache.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div style="">Two thoughts....</div><div style=""><br></div><div style="">1) the 'original'&nbsp;leaguesPipe has no clue about the subpipes, right ?</div><div style="">2) should a pipe offer a 'getter' for all it's sub pipes ?</div>
<div><br></div></div></div></div></blockquote><div><br></div><div>Just a thought is instead of using Pipe, to continue using Pipeline adding an extra parameter "<b>of" </b>for&nbsp;specifying the parent<b>: </b>E.g.:</div><div><br></div><div>…..</div><div>id&lt;AGPipe&gt;&nbsp;leaguesPipe&nbsp;= [pipeline pipe@"leagues"];</div><div><br></div><div><div>id&lt;AGPipe&gt;&nbsp;<b>allTeamsInSeattlePipe</b>&nbsp;= [pipeline subPipe@"teams" <b>of</b>:leaguesPipe for:@"seattle"]</div><div><br></div><div>id&lt;AGPipe&gt; allPlayersInTrebuchetPipe = [pipeline&nbsp;subPipe:@"players" of:<b>allTeamsInSeattlePipe&nbsp;</b>for:@"trebuchet"];</div><div>…..</div><div><br></div><div><br></div><div>Wdyt?</div><div><br></div><div><br></div><div><br></div></div><div><br></div><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div style="">-M</div><div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div style="word-wrap:break-word">
<div><div><div><br></div><div><br></div><div>Thanks,</div><div>Christos</div><div><div class="h5"><div><br></div><div><br></div><div><br></div><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">
<div><br></div><div><br></div><div><br></div><div><br></div><div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div style="word-wrap:break-word"><div><br></div><div><a href="http://soccer.org/leagues/seattle/teams/trebuchet/players/foo" target="_blank">soccer.org/leagues/seattle/teams/trebuchet/players/foo</a> - &gt;</div><div><span style="white-space:pre-wrap">        </span>&nbsp;[[pipeline&nbsp;pipe:@"players"&nbsp;pathParams:@[@"seattle", @"trebuchet"]]&nbsp;<b>read</b>:@"foo"] ..</div>

<div>-----</div><div><br></div><div><br></div><div>Wdyt?</div><div><br></div><div>Thanks</div><span><font color="#888888">Christos</font></span><div><div><br></div><div>On Mar 18, 2013, at 1:12 PM, Sebastien Blanc &lt;<a href="mailto:scm.blanc@gmail.com" target="_blank">scm.blanc@gmail.com</a>&gt; wrote:</div>

<div><div><br><blockquote type="cite">Well, that would not be possible, for that you will have to create a "child" pipe. But I agree, that is maybe no optimal ...<div><br><br><div class="gmail_quote">On Fri, Mar 15, 2013 at 6:44 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:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000"><div>
    <div>On 03/15/2013 01:34 PM, Sebastien Blanc
      wrote:<br>
    </div>
    <blockquote type="cite">I like the idea but I will more see that has a
      method/function for the pipelineManager (and will be easier to
      implement in JS, I think) :
      <div><br>
      </div>
      <div>var myParentPipe =
        Aerogear.Pipeline({name:"parentPipe"}).pipes.parentPipe</div>
      <div><br>
      </div>
      <div>var myChildPipe = Aerogear.Pipeline.fromParent(myParentPipe,
        {options} )</div>
    </blockquote></div>
    What would it look like to get a child record from a parent?<div><br>
    <blockquote type="cite">
      <div>&nbsp;<br>
        <br>
        <div class="gmail_quote">On Fri, Mar 15, 2013 at 5:37 PM,
          Douglas Campos <span dir="ltr">&lt;<a href="mailto:qmx@qmx.me" target="_blank">qmx@qmx.me</a>&gt;</span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">What about
            this?<br>
            <br>
            Pipeline&lt;Post&gt; postPipeline = …<br>
            Post post = // get from the pipeline<br>
            Pipeline&lt;Comment&gt;
            postPipeline.childPipelineForOrOtherWeirdName(Comment.class,
            post)<br>
            <div>
              <div><br>
                <br>
                On 15/03/2013, at 12:26, Summers Pittman &lt;<a href="mailto:supittma@redhat.com" target="_blank">supittma@redhat.com</a>&gt;
                wrote:<br>
                <br>
                &gt; On 03/14/2013 04:48 AM, Matthias Wessendorf wrote:<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; On Thu, Mar 14, 2013 at 9:32 AM, Sebastien
                Blanc &lt;<a href="mailto:scm.blanc@gmail.com" target="_blank">scm.blanc@gmail.com</a>&gt;
                wrote:<br>
                &gt;&gt; Hi,<br>
                &gt;&gt; While I was playing with scaffolding and tried
                to build a simple Blog Application with Aerogear I faced
                the current situation :<br>
                &gt;&gt; I have a Post object which contains many
                Comment objects. Now I want to call my Post pipe to
                retrieve the related &nbsp;comments, I have currently 2
                options :<br>
                &gt;&gt;<br>
                &gt;&gt; /posts/1 -&gt; assuming comments will be
                implicitly retrieved (eager loading)<br>
                &gt;&gt; /comments/?postid=1<br>
                &gt;&gt;<br>
                &gt;&gt; But regarding our model the correct form should
                be :<br>
                &gt;&gt;<br>
                &gt;&gt; /posts/1/comments<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; +1<br>
                &gt;&gt; that is the ideal way to model URIs for
                "nested" resources.<br>
                &gt;&gt;<br>
                &gt;&gt; See [1], extracted from [2]<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; But, AFAIK, &nbsp;with the current API, it is not
                possible to define this last pattern &nbsp;(at least for JS
                and iOs, confirmed by Matzew). When doing a read we can
                pass an id option but as mentioned in the doc, this id
                will always be append to the endpoint.<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; Well, it is possible - but in a very (IMO) ugly
                way:<br>
                &gt;&gt;<br>
                &gt;&gt; <a href="https://gist.github.com/matzew/6ab432e437b9a017a21d" target="_blank">https://gist.github.com/matzew/6ab432e437b9a017a21d</a><br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; IMO, we should be able to support this pattern
                but for now I'm not really sure how to specify this in
                our API, so if you have any ideas feedback this thread
                has been made for you !<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; Suggestion: Enhance the read function -
                example:<br>
                &gt;&gt;<br>
                &gt;&gt; <a href="https://gist.github.com/matzew/04f069dfbed2cc77a8b4" target="_blank">https://gist.github.com/matzew/04f069dfbed2cc77a8b4</a><br>
                &gt; I'm thinking of the inverse myself. &nbsp;Add a
                "ParentPath" property which can be used to extract
                information from parent objects.<br>
                &gt;<br>
                &gt; <a href="https://gist.github.com/secondsun/17ce96082eda37dbd10e" target="_blank">https://gist.github.com/secondsun/17ce96082eda37dbd10e</a><br>
                &gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; -Matthias<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; [1] <a href="http://www.infoq.com/resource/articles/rest-introduction/en/resources/figure2.jpg" target="_blank">http://www.infoq.com/resource/articles/rest-introduction/en/resources/figure2.jpg</a><br>



                &gt;&gt; [2] <a href="http://www.infoq.com/articles/rest-introduction" target="_blank">http://www.infoq.com/articles/rest-introduction</a><br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; Seb<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; _______________________________________________<br>
                &gt;&gt; aerogear-dev mailing list<br>
                &gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
                &gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt;<br>
                &gt;&gt; --<br>
                &gt;&gt; Matthias Wessendorf<br>
                &gt;&gt;<br>
                &gt;&gt; blog: <a href="http://matthiaswessendorf.wordpress.com/" target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
                &gt;&gt; sessions: <a href="http://www.slideshare.net/mwessendorf" target="_blank">http://www.slideshare.net/mwessendorf</a><br>
                &gt;&gt; twitter: <a href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a><br>
                &gt;&gt;<br>
                &gt;&gt; _______________________________________________<br>
                &gt;&gt; aerogear-dev mailing list<br>
                &gt;&gt;<br>
                &gt;&gt; <a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
                &gt;&gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
                &gt;<br>
                &gt; _______________________________________________<br>
                &gt; aerogear-dev mailing list<br>
                &gt; <a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a><br>
                &gt; <a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br>
                <br>
              </div>
            </div>
            -- qmx<br>
            <div>
              <div><br>
                <br>
                _______________________________________________<br>
                aerogear-dev mailing list<br>
                <a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">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>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      <pre>_______________________________________________
aerogear-dev mailing list
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">aerogear-dev@lists.jboss.org</a>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a></pre>
    </blockquote>
    <br>
  </div></div>

<br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">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></div>
_______________________________________________<br>aerogear-dev mailing list<br><a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">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></blockquote>

</div><br></div></div></div><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">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>
_______________________________________________<br>aerogear-dev mailing list<br><a href="mailto:aerogear-dev@lists.jboss.org" target="_blank">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></blockquote>
</div></div></div><br></div></div><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>
_______________________________________________<br>aerogear-dev mailing list<br><a href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>https://lists.jboss.org/mailman/listinfo/aerogear-dev</blockquote></div><br></body></html>