<div dir="ltr"><div>TL;DR the goal 1 is my mean goal, as a developer I don&#39;t wanna need to register any service provided by the SDK.<br><br></div>And maybe the goal 2 is not needed I&#39;m not 200% sure now<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jan 29, 2018 at 5:44 PM, David Martin <span dir="ltr">&lt;<a href="mailto:davmarti@redhat.com" target="_blank">davmarti@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"><p dir="ltr">Sounds good to me. If it works out that 2 is covered by 1, great.<br>
@Passos @Summers anything you want to add?</p>
<p dir="ltr">Would be great to get feedback from anyone using the sdk already too. </p><div><div class="h5">
<br><div class="gmail_quote"><div dir="ltr">On Mon, 29 Jan 2018 17:56 Wojciech Trocki, &lt;<a href="mailto:wtrocki@redhat.com" target="_blank">wtrocki@redhat.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Added small comments on tickets. From my point of view everything looks great.<br>From my point of view Goal 2 may be actually not needed depending on how Goal 1 will be resolved.<div><div>I we think about it that is just one single ticket that is required to improve overall user experience and API.</div><div><br></div><div><span style="font-size:12.8px">&gt; keycloakService = core.getService(</span><span style="font-size:12.8px">KeyCloakServic<wbr>e.class);</span><br></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">I remember that service team required to pass additional parameters and going this way will impose some limitations.</span></div></div><div><span style="font-size:12.8px">What we looking for is probably something like this:</span></div><div><pre style="margin:10px;padding:0px;color:rgb(0,0,0);font-size:1em;background-color:rgb(245,245,245);width:auto"><span style="font-family:Consolas,&quot;Bitstream Vera Sans Mono&quot;,&quot;Courier New&quot;,Courier,monospace">Auth keycloak = AeroGearAuth.create(options)</span></pre></div></div><div class="gmail_extra"><br><div class="gmail_quote"></div></div><div class="gmail_extra"><div class="gmail_quote">On Mon, Jan 29, 2018 at 4:51 PM, David Martin <span dir="ltr">&lt;<a href="mailto:davmarti@redhat.com" target="_blank">davmarti@redhat.com</a>&gt;</span> wrote:<br></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi all,<div><br></div><div>After a massive 100+ comments, I&#39;ve decided to merge the Android Core SDK Proposal</div><div><a href="https://github.com/aerogear/proposals/pull/9" target="_blank">https://github.com/aerogear/<wbr>proposals/pull/9</a></div><div><br></div><div>* Android Core SDK is available from Maven: </div><div>* Repo: <a href="https://github.com/aerogear/aerogear-android-sdk" target="_blank">https://github.com/aerogear/<wbr>aerogear-android-sdk</a></div><div>* Example Android App that uses the core SDK:</div><div><a href="https://github.com/secondsun/WipDemo/blob/master/app/src/main/java/org/feedhenry/mcp/prdemo/CoreActivity.java" target="_blank">https://github.com/secondsun/<wbr>WipDemo/blob/master/app/src/<wbr>main/java/org/feedhenry/mcp/<wbr>prdemo/CoreActivity.java</a><br></div><div>* What you need to add to your gradle file: <a href="https://github.com/secondsun/WipDemo/blob/master/app/build.gradle#L29" target="_blank">https://github.com/<wbr>secondsun/WipDemo/blob/master/<wbr>app/build.gradle#L29</a></div><div><br></div><div><br></div><div>The amount of comments, calls and back&amp;forth on irc has reached a reasonable level of agreement, with some remaining points of contention.<br></div><div>The contention is mainly around the level of complexity that a developer has to undertake to use the SDK.</div><div>After listening to the 3 main voices on this (Summers, Wojciech, Passos), I can see both points of view.</div><div><br></div><div>(WARNING: A lot of paraphrasing below :) )</div><div><br></div><div>From Passos &amp; Wojciech&#39;s point of view, ease of use of the SDK is what&#39;s most important. There should be practically no setup/init required other than having a mobile-config.json file in the right place, and call a static method to get an instance of a service (similar to Firebase).</div><div><br></div><div>>From Summers point of view, ease of use is also important, but something we can improve on iteratively. For example, the default use of a Service will be fine &amp; possible to automate the setup for for 95% of cases. However, the other 5% is what we need to take into account from the beginning.</div><div><br></div><div><br></div><div>So, based on this, I would like if the following 2 things were follow up goals for the Core SDK.</div><div>I believe these changes will take whats currently there (and working), and move it towards something that is easier to use for developers.</div><div><br></div><div><br></div><div>Goal 1:</div><div><a href="https://issues.jboss.org/browse/AGDROID-712" target="_blank">https://issues.jboss.org/<wbr>browse/AGDROID-712</a><br></div><div>Remove the need for static block initialisation/registration of service classes &amp; their dependencies. i.e. this:</div><div><br></div><div><div>static {</div><div>   ServiceModuleRegistry.<wbr>registerServiceModule(&quot;<wbr>keycloak&quot;, KeyCloakService.class, &quot;http&quot;);</div><div> }</div><div><br></div><div>From chatting with Summers, this should be possible now that this PR is merged <a href="https://github.com/aerogear/proposals/pull/16" target="_blank">https://github.com/<wbr>aerogear/proposals/pull/16</a> and the config file format is nailed down.</div><div><br></div><div><br></div><div>Goal 2:</div><div><a href="https://issues.jboss.org/browse/AGDROID-713" target="_blank">https://issues.jboss.org/<wbr>browse/AGDROID-713</a><br></div><div>Allow a simpler way of getting an instance of a Service class other than below.</div><div><br></div><div><div>   keycloakService = core.getService(&quot;keycloak&quot;, KeyCloakService.class);</div></div><div><br></div><div>If there are multiple instances registered for a particular Class, it may still be necessary to use the above to get a &#39;named&#39; instance (much like in dependency injection libs like spring that use annotations).</div><div>However, in most cases, the below should be possible:</div><div><br></div><div>keycloakService = core.getService(<wbr>KeyCloakService.class);<br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>Thanks</div><span class="m_-5586111500772924743m_4534252028042380704HOEnZb"><font color="#888888"><div><br></div>-- <br><div class="m_-5586111500772924743m_4534252028042380704m_-1716633516609159775gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">David Martin<div>Red Hat Mobile</div><div>Twitter: <span style="font-size:12.8px">@irldavem</span></div><div><span style="font-size:12.8px">IRC: @irldavem (#aerogear)</span></div></div></div></div></div></div></div>
</font></span></div></div><span class="m_-5586111500772924743m_4534252028042380704HOEnZb"><font color="#888888">

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &quot;Aerogear&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:aerogear+unsubscribe@googlegroups.com" target="_blank">aerogear+unsubscribe@<wbr>googlegroups.com</a>.<br>
To post to this group, send email to <a href="mailto:aerogear@googlegroups.com" target="_blank">aerogear@googlegroups.com</a>.<br>
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/aerogear/CADvBQ454ouqqV8Qr7nHssEYxV932Z-JcBqA36VW6-w_Puoe-ng%40mail.gmail.com?utm_medium=email&amp;utm_source=footer" target="_blank">https://groups.google.com/d/<wbr>msgid/aerogear/<wbr>CADvBQ454ouqqV8Qr7nHssEYxV932Z<wbr>-JcBqA36VW6-w_Puoe-ng%40mail.<wbr>gmail.com</a>.<br>
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank">https://groups.google.com/d/<wbr>optout</a>.<br>
</font></span></blockquote></div></div><div class="gmail_extra"><br><br clear="all"><div><br></div>-- <br><div class="m_-5586111500772924743m_4534252028042380704gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div style="font-size:12.8px"><p style="color:rgb(0,0,0);font-family:overpass,sans-serif;font-weight:bold;margin:0px;padding:0px;font-size:14px;text-transform:uppercase"><span>WOJCIECH</span> <span>TROCKI</span></p><p style="font-family:overpass,sans-serif;margin:0px;font-size:10px;color:rgb(153,153,153)"><a href="https://www.redhat.com/" style="color:rgb(0,136,206);margin:0px;text-decoration:none" target="_blank">Red Hat <span>Mobile</span></a></p><p style="font-family:overpass,sans-serif;margin:0px 0px 6px;font-size:10px;color:rgb(153,153,153)"><span>IM: <span>wtrocki</span></span></p><table style="color:rgb(0,0,0);font-family:overpass,sans-serif;font-size:medium" border="0"><tbody><tr><td width="100px"><a href="https://red.ht/sig" target="_blank"><img height="auto" width="90"></a></td></tr></tbody></table></div></div></div></div></div></div></div></div></div>
</div></blockquote></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups &quot;Aerogear&quot; group.<br>
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:aerogear+unsubscribe@googlegroups.com" target="_blank">aerogear+unsubscribe@<wbr>googlegroups.com</a>.<br>
To post to this group, send email to <a href="mailto:aerogear@googlegroups.com" target="_blank">aerogear@googlegroups.com</a>.<br></div></div>
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/aerogear/CADvBQ44NLBtp18o_aC5ou5gCxgqNViq5Ocv%2BPfbegd9fAr8yRg%40mail.gmail.com?utm_medium=email&amp;utm_source=footer" target="_blank">https://groups.google.com/d/<wbr>msgid/aerogear/<wbr>CADvBQ44NLBtp18o_<wbr>aC5ou5gCxgqNViq5Ocv%<wbr>2BPfbegd9fAr8yRg%40mail.gmail.<wbr>com</a>.<div class="HOEnZb"><div class="h5"><br>
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank">https://groups.google.com/d/<wbr>optout</a>.<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">-- Passos<br></div></div>
</div>