Code review - Issue 317450043: Hardcode shadow-play-services ShadowProvider config.https://codereview.appspot.com/2017-03-27T22:12:16+00:00rietveld
Message from unknown
2017-03-20T21:05:57+00:00mikecaseurn:md5:fabf28f60c91f7f792f1625d31e61d8a
Message from unknown
2017-03-20T21:06:57+00:00mikecaseurn:md5:b990d4dbed31ca6939987be732b25bff
Message from mikecase@google.com
2017-03-20T21:07:50+00:00mikecaseurn:md5:9d185a81f943dd786635765e0b9ce16b
Need this to build shadow-play-services in Chromium.
Message from jbudorick@chromium.org
2017-03-20T22:34:13+00:00jbudorickurn:md5:492520f4c74cacc89540d1e52948a902
When is this required for shadow-play-services? At build time?
Also, can you add a bug number?
Message from yolandyan@chromium.org
2017-03-20T23:17:01+00:00yolandyanurn:md5:5977e845e86a568d305ca6b759233a34
hmm, do I need to be an OWNER to review this?
Message from mikecase@google.com
2017-03-21T18:08:16+00:00mikecaseurn:md5:777248dc816895ed804fd61e1d8118a1
On 2017/03/20 23:17:01, yolandyan wrote:
> hmm, do I need to be an OWNER to review this?
Message from mikecase@google.com
2017-03-21T18:12:35+00:00mikecaseurn:md5:b46dd676f450525e4f0afafdf1496b19
On 2017/03/21 18:08:16, mikecase wrote:
> On 2017/03/20 23:17:01, yolandyan wrote:
> > hmm, do I need to be an OWNER to review this?
oops. I just all the text I wrote. Arrrrrrrrrgggg.
OK. Round two. Caps to help readability.
This is required at RUNTIME. Java has a plug-in system...
https://docs.oracle.com/javase/tutorial/ext/basics/spi.html
Java, at RUNTIME is going to look for a class that implements ShadowProvider interface...
https://github.com/robolectric/robolectric/blob/e81c5849919b576f8e9d5ff41f7add27bfbd6ce4/robolectric/src/main/java/org/robolectric/internal/AndroidConfigurer.java#L92
The file that implements this interface, org.robolectric.shadows.gms.Shadows, is generated at COMPILE-TIME. That is probably why they also decided to auto-generate this config.
GN picks up the auto-gen *.java files. But does not pick up this auto-gen config.
Message from mikecase@google.com
2017-03-21T18:15:37+00:00mikecaseurn:md5:657517eb14a5167c6f4de8f8f6657d91
On 2017/03/21 18:12:35, mikecase wrote:
> On 2017/03/21 18:08:16, mikecase wrote:
> > On 2017/03/20 23:17:01, yolandyan wrote:
> > > hmm, do I need to be an OWNER to review this?
>
> oops. I just all the text I wrote. Arrrrrrrrrgggg.
>
> OK. Round two. Caps to help readability.
>
>
> This is required at RUNTIME. Java has a plug-in system...
> https://docs.oracle.com/javase/tutorial/ext/basics/spi.html
>
> Java, at RUNTIME is going to look for a class that implements ShadowProvider
> interface...
> https://github.com/robolectric/robolectric/blob/e81c5849919b576f8e9d5ff41f7add27bfbd6ce4/robolectric/src/main/java/org/robolectric/internal/AndroidConfigurer.java#L92
>
> The file that implements this interface, org.robolectric.shadows.gms.Shadows, is
> generated at COMPILE-TIME. That is probably why they also decided to
> auto-generate this config.
>
>
> GN picks up the auto-gen *.java files. But does not pick up this auto-gen
> config.
Also, @Yoland, you just have to be a committer to review this... hint hint
Message from jbudorick@chromium.org
2017-03-21T18:16:16+00:00jbudorickurn:md5:853ddf2b9e3c1c409f508229ae20930e
lgtm
I'm skeptical about the "never" change part but am ok with this for now.
Message from mikecase@google.com
2017-03-27T22:12:16+00:00mikecaseurn:md5:1df0676d1b341be50709b41287796375
Committed patchset #2 (id:20001) manually as 2a0b6ba221c14f3371813a676ce06143353e448d (presubmit successful).