From: <kp...@us...> - 2009-10-07 13:42:00
|
Revision: 16286 http://jedit.svn.sourceforge.net/jedit/?rev=16286&view=rev Author: kpouer Date: 2009-10-07 13:41:52 +0000 (Wed, 07 Oct 2009) Log Message: ----------- fix project watching when Lucene is loaded before ProjectViewer Modified Paths: -------------- plugins/LucenePlugin/trunk/src/gatchan/jedit/lucene/LucenePlugin.java Modified: plugins/LucenePlugin/trunk/src/gatchan/jedit/lucene/LucenePlugin.java =================================================================== --- plugins/LucenePlugin/trunk/src/gatchan/jedit/lucene/LucenePlugin.java 2009-10-07 07:32:51 UTC (rev 16285) +++ plugins/LucenePlugin/trunk/src/gatchan/jedit/lucene/LucenePlugin.java 2009-10-07 13:41:52 UTC (rev 16286) @@ -22,12 +22,11 @@ package gatchan.jedit.lucene; import org.apache.lucene.analysis.Analyzer; -import org.gjt.sp.jedit.EditBus; -import org.gjt.sp.jedit.EditPlugin; +import org.gjt.sp.jedit.*; import org.gjt.sp.jedit.io.VFS; import org.gjt.sp.jedit.io.VFSFile; import org.gjt.sp.jedit.io.VFSManager; -import org.gjt.sp.jedit.jEdit; +import org.gjt.sp.jedit.msg.PluginUpdate; import org.gjt.sp.util.IOUtilities; import org.gjt.sp.util.Log; @@ -40,7 +39,7 @@ /** * @author Matthieu Casanova */ -public class LucenePlugin extends EditPlugin +public class LucenePlugin extends EBPlugin { static CentralIndex CENTRAL; private static final String CENTRAL_INDEX_NAME = "__CENTRAL__"; @@ -63,6 +62,36 @@ projectWatcher = new ProjectWatcher(); } + @Override + public void handleMessage(EBMessage message) + { + if (message instanceof PluginUpdate) + { + PluginUpdate pluginUpdate = (PluginUpdate) message; + if (pluginUpdate.getWhat() == PluginUpdate.ACTIVATED) + { + if ("projectviewer.ProjectPlugin".equals(pluginUpdate.getPluginJAR().getPlugin().getClassName())) + { + if (projectWatcher == null) + { + projectWatcher = new ProjectWatcher(); + } + } + } + else if (pluginUpdate.getWhat() == PluginUpdate.DEACTIVATED) + { + if ("projectviewer.ProjectPlugin".equals(pluginUpdate.getPluginJAR().getPlugin().getClassName())) + { + if (projectWatcher != null) + { + projectWatcher.stop(); + projectWatcher = null; + } + } + } + } + } + private void loadIndexes() { File f = new File(getPluginHome(), INDEXES_FILE_NAME); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |