PropertiesConfigReader.canLoad will never return false because getResources never returns null.
@Override
public boolean canLoad(ClassLoader loader, String name) {
return getResources(loader, name) != null;
}
In getResources you see:
private static Collection<URL> getResources(ClassLoader loader, String resourceName) {
LinkedHashSet<URL> resources = new LinkedHashSet<URL>();
...
return resources;
}
So, canLoad should probably be:
@Override
public boolean canLoad(ClassLoader loader, String name) {
return !getResources(loader, name).isEmpty();
}