]
George Gastaldi commented on FURNACE-105:
-----------------------------------------
getServices() should never return null and if no services are found, get() will throw an
exception and isUnsatisfied() would return true.
Throw when AddonRegistry().getServices(Class) finds nothing
-----------------------------------------------------------
Key: FURNACE-105
URL:
https://issues.jboss.org/browse/FURNACE-105
Project: Forge: Furnace
Issue Type: Feature Request
Components: Addon Manager
Affects Versions: 2.20.1.Final
Reporter: Ondrej Zizka
This is just a suggestion to strenghten the contract of getServices(Class).
Often, the code looks like this:
{code}
furnace.getAddonRegistry().getServices(GraphApiCompositeClassLoaderProvider.class).get();
{code}
And all works until something goes wrong with the addons setup.
In that case, getServices() returns null and it may end up with user seeing a
NullPointerException with a nasty stacktrace.
For the sake of better usability,
I suggest that there could be 2 methods, getServices() which would throw an informative
exception if no such services are found, and findServices() which would return null, as
the current getServices() does.