<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 02/03/2015 09:56 AM, Matthias
      Wessendorf wrote:<br>
    </div>
    <blockquote
cite="mid:CAAg5f2TZKN4h5UfS91VdjU0rAD5QJjKWW2AqL1X9p9Fg+u0icQ@mail.gmail.com"
      type="cite">
      <div dir="ltr"><br>
        <div class="gmail_extra"><br>
          <div class="gmail_quote">On Tue, Feb 3, 2015 at 2:31 PM,
            Sebastien Blanc <span dir="ltr">&lt;<a
                moz-do-not-send="true" href="mailto:scm.blanc@gmail.com"
                target="_blank">scm.blanc@gmail.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 dir="ltr">Good Morning all ! 
                <div><br>
                </div>
                <div>As you might know, we are currently adding Amazon
                  Device Messaging support to the UnifiedPush server. </div>
                <div>The server side has been PRed and it's now time to
                  work on the client SDK.</div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>once our java-adm is on maven central, I will take a
              look at the PR</div>
            <div> </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 dir="ltr">
                <div>As you probably know, the amazon devices :  the
                  Kindle Fire (2nd and third generation), Fire Phone and
                  FireTV are running FireOS which is basically a fork of
                  Android OS. And since we have an Android Push SDK I
                  start looking if we could reuse it.<br>
                </div>
                <div><br>
                </div>
                <div>First good news, is that since AGDroid 2.0, things
                  has been nicely isolated and is open for extension.
                  But there is still some refactoring to do, the "UPS
                  Registration" flow/logic is still in the "gcm"
                  package[1]. </div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>the package name shouldn't be the smallest concern :-) </div>
            <div><br>
            </div>
            <div> </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 dir="ltr">
                <div>That logic should be moved one package level higher
                  in a new Abstract class. </div>
                <div>In the end we will have a "gcm" package and a "adm"
                  package (or project, see later in my questions)</div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>+1</div>
            <div> </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 dir="ltr">
                <div><br>
                </div>
                <div>This way the ADM logic would be able to reuse that
                  registration code. I started to play a bit with this
                  refactoring here[2], disclaimer here, I'm not even
                  sure that this code compiles, is just to give an
                  idea. </div>
                <div><br>
                </div>
                <div>So before I go further,  some questions (mainly for
                  our Android Gods ;)  ) : </div>
                <div><br>
                </div>
                <div>- Is this a good idea (reusing your SDK) ? I think
                  yes, even if there is some time and effort needed for
                  refactoring to make it completly generic.</div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>sounds reasonable to me, to extend it and apply changes
              on a separate ADM-PUSH-SDK</div>
            <div> </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 dir="ltr">
                <div><br>
                </div>
                <div>- How do we build / package / deliver ? </div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>gradle? or, what does Amazon do / prefer ? </div>
            <div> </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 dir="ltr">
                <div>We probably want 2 distinct JAR/aar. We could use
                  profile in Maven to only package one feature but that
                  sounds a bit "messy".</div>
                <div>What about having sub-projects, this way we would
                  have aerogear-android-push and then :
                  aerogear-android-push-gcm and aerogear-push-gcm.</div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>Not sure I get that, but do you mean
              "aerogear-android-push"</div>
            <div>- aerogear-android-push-gcm</div>
            <div>- aerogear-android-push-adm</div>
            <div><br>
            </div>
            <div>sounds reasonable</div>
          </div>
        </div>
      </div>
    </blockquote>
    No it isn't.  For starters it will break the 2.0 API and require a
    3.0 API release.  <br>
    <blockquote
cite="mid:CAAg5f2TZKN4h5UfS91VdjU0rAD5QJjKWW2AqL1X9p9Fg+u0icQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">
            <div> </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 dir="ltr">
                <div><br>
                </div>
                <div>- The registration flow for ADM[3] (so device
                  &lt;-&gt; Amazon's server) is a bit different thant
                  the GCM one</div>
                <div>, it's the same interface that receive the
                  registration event and the push notification events.
                  We have to check how this fit with the current
                  architecture of android-push.</div>
                <div><br>
                </div>
                <div>Other challenge will be shipping ADM jar, since
                  this one is on Maven and must be downloaded manually
                  but that is for later ;)</div>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>not sure, why do we need to ship it? what's the
              license? Why do I need a manual download from maven ? Not
              following here</div>
          </div>
        </div>
      </div>
    </blockquote>
    Amazon's SDK is a giant zip bundle.  We will need to find a way to
    package it into the local maven repo.  <br>
    <br>
    They do publish some things to central, but it looks like that is
    their AWS APIs but not ADM.<br>
    <br>
    <blockquote
cite="mid:CAAg5f2TZKN4h5UfS91VdjU0rAD5QJjKWW2AqL1X9p9Fg+u0icQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">
            <div> </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 dir="ltr">
                <div><br>
                </div>
                <div>Sebi</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div>[1]<a moz-do-not-send="true"
href="https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/gcm/AeroGearGCMPushRegistrar.java"
                    target="_blank">https://github.com/aerogear/aerogear-android-push/blob/master/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/gcm/AeroGearGCMPushRegistrar.java</a></div>
                <div>[2] <a moz-do-not-send="true"
href="https://github.com/sebastienblanc/aerogear-android-push/tree/refactoring"
                    target="_blank">https://github.com/sebastienblanc/aerogear-android-push/tree/refactoring</a></div>
                <div>[3] <a moz-do-not-send="true"
href="https://developer.amazon.com/public/apis/engage/device-messaging/tech-docs/04-integrating-your-app-with-adm"
                    target="_blank">https://developer.amazon.com/public/apis/engage/device-messaging/tech-docs/04-integrating-your-app-with-adm</a></div>
              </div>
              <br>
              _______________________________________________<br>
              aerogear-dev mailing list<br>
              <a moz-do-not-send="true"
                href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a><br>
              <a moz-do-not-send="true"
                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>
          <div class="gmail_signature">Matthias Wessendorf <br>
            <br>
            blog: <a moz-do-not-send="true"
              href="http://matthiaswessendorf.wordpress.com/"
              target="_blank">http://matthiaswessendorf.wordpress.com/</a><br>
            sessions: <a moz-do-not-send="true"
              href="http://www.slideshare.net/mwessendorf"
              target="_blank">http://www.slideshare.net/mwessendorf</a><br>
            twitter: <a moz-do-not-send="true"
              href="http://twitter.com/mwessendorf" target="_blank">http://twitter.com/mwessendorf</a></div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
aerogear-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:aerogear-dev@lists.jboss.org">aerogear-dev@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/aerogear-dev">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a></pre>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Summers Pittman
&gt;&gt;Phone:404 941 4698
&gt;&gt;Java is my crack.
</pre>
  </body>
</html>