In DesktopAssetManager there is a method that registers locators:
public void registerLocator(String rootPath, String clsName){
Class<? extends AssetLoader> clazz = null;
try{
clazz = (Class<? extends AssetLoader>) Class.forName(clsName);
}catch (ClassNotFoundException ex){
logger.log(Level.WARNING, "Failed to find locator: "+clsName, ex);
}
if (clazz != null){
handler.addLocator(clazz, rootPath);
if (logger.isLoggable(Level.FINER)){
logger.finer("Registered locator: "+clazz.getSimpleName());
}
}
}
Shouldn't the clazz be declaret this way:
Class<? extends AssetLocator> clazz = null;
instead of
Class<? extends AssetLoader> clazz = null;
??
And one small suggestion.
The DesktopAssetManager implements a method
public void registerLoader(Class<?> loader, String ... extensions)
which is not listed in the AssetManager interface.
Wouldn't it be good to enlist it there? :)
It would be helpful for people who, like me, use OSGI in their application XD
It is quite troublesome to transport a class by name between bundles, but transporting a class definition
makes no problems :wink:
Of course I can always cast my AssetManager to a proper class and use the method I need, but I think it would be just nice