IDEMPIERE-2288 Load custom ToolbarButton Images (IAction) from OSGi Bundle

This commit is contained in:
jan thielemann 2014-11-19 13:51:54 -05:00
parent 6be4c15be0
commit 1ed3200c50
1 changed files with 14 additions and 12 deletions

View File

@ -57,15 +57,17 @@ public class Actions {
if (aImage != null) if (aImage != null)
return aImage; return aImage;
IServiceHolder<IAction> action = Service.locator().locate(IAction.class, actionId, null);
if (action.getService() != null) {
String path = ACTION_IMAGES_PATH + actionId + "24.png"; String path = ACTION_IMAGES_PATH + actionId + "24.png";
InputStream inputStream = Actions.class.getClassLoader().getResourceAsStream(path); InputStream inputStream = action.getService().getClass().getClassLoader().getResourceAsStream(path);
if (inputStream != null) { if (inputStream != null) {
try { try {
aImage = new AImage(actionId, inputStream); aImage = new AImage(actionId, inputStream);
} catch (IOException e) { } catch (IOException e) {
} }
} }
if (aImage != null) { if (aImage != null)
synchronized (imageCache) { synchronized (imageCache) {
imageCache.put(actionId, aImage); imageCache.put(actionId, aImage);
} }