James Moger
2014-07-02 3610dc445e01ee07faae64acaabcdc00aac5e1b5
src/main/java/com/gitblit/manager/PluginManager.java
@@ -34,8 +34,6 @@
import java.util.Map;
import java.util.TreeMap;
import javax.inject.Inject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -60,6 +58,8 @@
import com.gitblit.utils.StringUtils;
import com.google.common.io.Files;
import com.google.common.io.InputSupplier;
import com.google.inject.Inject;
import com.google.inject.Singleton;
/**
 * The plugin manager maintains the lifecycle of plugins. It is exposed as
@@ -70,13 +70,14 @@
 * @author James Moger
 *
 */
@Singleton
public class PluginManager implements IPluginManager, PluginStateListener {
   private final Logger logger = LoggerFactory.getLogger(getClass());
   private final DefaultPluginManager pf4j;
   private final IRuntimeManager runtimeManager;
   private DefaultPluginManager pf4j;
   // timeout defaults of Maven 3.0.4 in seconds
   private int connectTimeout = 20;
@@ -85,18 +86,7 @@
   @Inject
   public PluginManager(IRuntimeManager runtimeManager) {
      File dir = runtimeManager.getFileOrFolder(Keys.plugins.folder, "${baseFolder}/plugins");
      dir.mkdirs();
      this.runtimeManager = runtimeManager;
      this.pf4j = new DefaultPluginManager(dir);
      try {
         Version systemVersion = Version.createVersion(Constants.getVersion());
         pf4j.setSystemVersion(systemVersion);
      } catch (Exception e) {
         logger.error(null, e);
      }
   }
   @Override
@@ -111,6 +101,16 @@
   @Override
   public PluginManager start() {
      File dir = runtimeManager.getFileOrFolder(Keys.plugins.folder, "${baseFolder}/plugins");
      dir.mkdirs();
      pf4j = new DefaultPluginManager(dir);
      try {
         Version systemVersion = Version.createVersion(Constants.getVersion());
         pf4j.setSystemVersion(systemVersion);
      } catch (Exception e) {
         logger.error(null, e);
      }
      pf4j.loadPlugins();
      logger.debug("Starting plugins");
      pf4j.startPlugins();