001
014
015 package com.liferay.portal.kernel.events;
016
017
020 public class InvokerSimpleAction extends SimpleAction {
021
022 public InvokerSimpleAction(SimpleAction simpleAction) {
023 this(simpleAction, Thread.currentThread().getContextClassLoader());
024 }
025
026 public InvokerSimpleAction(
027 SimpleAction simpleAction, ClassLoader classLoader) {
028
029 _simpleAction = simpleAction;
030 _classLoader = classLoader;
031 }
032
033 @Override
034 public void run(String[] ids) throws ActionException {
035 Thread currentThread = Thread.currentThread();
036
037 ClassLoader contextClassLoader = currentThread.getContextClassLoader();
038
039 currentThread.setContextClassLoader(_classLoader);
040
041 try {
042 _simpleAction.run(ids);
043 }
044 finally {
045 currentThread.setContextClassLoader(contextClassLoader);
046 }
047 }
048
049 private ClassLoader _classLoader;
050 private SimpleAction _simpleAction;
051
052 }