Safeguard without MP-Config?

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Safeguard without MP-Config?

rdohna
Hey guys

Should Safeguard run even without a MP-Config implementation? I think it would be cool if it did.

Method `ExecutionPlanFactory#enableNonFallbacksForMicroProfile` looks a little bit like it tries to, but line 141 catches only `ClassNotFoundException`. If it would also catch `NoClassDefFoundError` and `ExceptionInInitializerError`, it would actually work.

I could create a pull request, but I can't see how?


Rüdiger

BTW: On http://geronimo.apache.org/GMOxPMGT/contributor-process.html there's a broken link to the mailing lists. It's falsely `http://geronimo.apache.org/mailing.html`, but it should be `http://geronimo.apache.org/mailing-lists.html`. I don't have rights for the wiki.

Reply | Threaded
Open this post in threaded view
|

Re: Safeguard without MP-Config?

John D. Ament
Hi Rüdiger!

I think it would be fine if it could operate without MP Config.  I was actually thinking that configuration could be more of an SPI, rather than a hard requirement.  E.g. one impl for MP Config, another for ConfigJSR, and maybe a default one with system properties enabled?

And you are correct, that was my strawman placeholder to solve it, but agree that it will not work 100%

If you want to create a pull request, first fork https://github.com/apache/geronimo-safeguard then make your changes in your fork.  You should then see an option in github to raise a PR.

John

On Sat, Nov 25, 2017 at 1:03 PM <[hidden email]> wrote:
Hey guys

Should Safeguard run even without a MP-Config implementation? I think it would be cool if it did.

Method `ExecutionPlanFactory#enableNonFallbacksForMicroProfile` looks a little bit like it tries to, but line 141 catches only `ClassNotFoundException`. If it would also catch `NoClassDefFoundError` and `ExceptionInInitializerError`, it would actually work.

I could create a pull request, but I can't see how?


Rüdiger

BTW: On http://geronimo.apache.org/GMOxPMGT/contributor-process.html there's a broken link to the mailing lists. It's falsely `http://geronimo.apache.org/mailing.html`, but it should be `http://geronimo.apache.org/mailing-lists.html`. I don't have rights for the wiki.

Reply | Threaded
Open this post in threaded view
|

Re: Safeguard without MP-Config?

Romain Manni-Bucau
+1 for a spi with a default detection at boot time

Le 25 nov. 2017 19:56, "John D. Ament" <[hidden email]> a écrit :
Hi Rüdiger!

I think it would be fine if it could operate without MP Config.  I was actually thinking that configuration could be more of an SPI, rather than a hard requirement.  E.g. one impl for MP Config, another for ConfigJSR, and maybe a default one with system properties enabled?

And you are correct, that was my strawman placeholder to solve it, but agree that it will not work 100%

If you want to create a pull request, first fork https://github.com/apache/geronimo-safeguard then make your changes in your fork.  You should then see an option in github to raise a PR.

John

On Sat, Nov 25, 2017 at 1:03 PM <[hidden email]> wrote:
Hey guys

Should Safeguard run even without a MP-Config implementation? I think it would be cool if it did.

Method `ExecutionPlanFactory#enableNonFallbacksForMicroProfile` looks a little bit like it tries to, but line 141 catches only `ClassNotFoundException`. If it would also catch `NoClassDefFoundError` and `ExceptionInInitializerError`, it would actually work.

I could create a pull request, but I can't see how?


Rüdiger

BTW: On http://geronimo.apache.org/GMOxPMGT/contributor-process.html there's a broken link to the mailing lists. It's falsely `http://geronimo.apache.org/mailing.html`, but it should be `http://geronimo.apache.org/mailing-lists.html`. I don't have rights for the wiki.

Reply | Threaded
Open this post in threaded view
|

Re: Safeguard without MP-Config?

rdohna
In reply to this post by John D. Ament
Hi John,

On 25. Nov 2017, 19:56 +0100, John D. Ament <[hidden email]>, wrote:
Hi Rüdiger!

I think it would be fine if it could operate without MP Config.  I was actually thinking that configuration could be more of an SPI, rather than a hard requirement.  E.g. one impl for MP Config, another for ConfigJSR, and maybe a default one with system properties enabled? 

Nice! What would that SPI look like? Maybe a subset of MP config? I like the way slf4j handles the absence of an implementation: It brings it's own NOP implementation as a fallback. Maybe that's an idea for MP config, too: if there is an implementation on the classpath, use that; otherwise log an info about falling back and do the bare minimum: maybe simply no config at all, or use system properties and environment variable only.

And you are correct, that was my strawman placeholder to solve it, but agree that it will not work 100% 

The change is quite trivial to do, but I have no idea how to test it.

If you want to create a pull request, first fork https://github.com/apache/geronimo-safeguard then make your changes in your fork.  You should then see an option in github to raise a PR. 

Okay, sure. I had seen that the project on github is just a mirror of git://git.apache.org/geronimo-safeguard.git and didn't understand that I can still create pull requests. Just did.


Rüdiger

On Sat, Nov 25, 2017 at 1:03 PM <[hidden email]> wrote:
Hey guys

Should Safeguard run even without a MP-Config implementation? I think it would be cool if it did.

Method `ExecutionPlanFactory#enableNonFallbacksForMicroProfile` looks a little bit like it tries to, but line 141 catches only `ClassNotFoundException`. If it would also catch `NoClassDefFoundError` and `ExceptionInInitializerError`, it would actually work.

I could create a pull request, but I can't see how?


Rüdiger

BTW: On http://geronimo.apache.org/GMOxPMGT/contributor-process.html there's a broken link to the mailing lists. It's falsely `http://geronimo.apache.org/mailing.html`, but it should be `http://geronimo.apache.org/mailing-lists.html`. I don't have rights for the wiki.