This commit is contained in:
Alexey Kudravtsev
2009-09-04 13:05:21 +04:00
parent b422f99b6a
commit d923f817a5
17 changed files with 50 additions and 153 deletions
@@ -5,6 +5,7 @@ import com.intellij.compiler.CompilerConfiguration;
import com.intellij.compiler.CompilerIOUtil;
import com.intellij.compiler.make.MakeUtil;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.Application;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.compiler.*;
import com.intellij.openapi.compiler.ex.CompileContextEx;
@@ -106,13 +107,13 @@ public class TranslatingCompilerFilesMonitor implements ApplicationComponent {
}
};
private final ProjectManager myProjectManager;
private Semaphore myInitializationInProgress = new Semaphore();
private final Semaphore myInitializationInProgress = new Semaphore();
public TranslatingCompilerFilesMonitor(VirtualFileManager vfsManager, ProjectManager projectManager) {
public TranslatingCompilerFilesMonitor(VirtualFileManager vfsManager, ProjectManager projectManager, Application application) {
myProjectManager = projectManager;
projectManager.addProjectManagerListener(new MyProjectManagerListener());
vfsManager.addVirtualFileListener(new MyVfsListener());
vfsManager.addVirtualFileListener(new MyVfsListener(), application);
}
public static TranslatingCompilerFilesMonitor getInstance() {
@@ -6,7 +6,7 @@ import com.intellij.debugger.engine.DebuggerManagerThreadImpl;
import com.intellij.debugger.engine.events.DebuggerCommandImpl;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.compiler.ex.CompilerPathsEx;
import com.intellij.openapi.components.ProjectComponent;
import com.intellij.openapi.components.AbstractProjectComponent;
import com.intellij.openapi.fileTypes.FileTypeManager;
import com.intellij.openapi.fileTypes.FileTypes;
import com.intellij.openapi.fileTypes.StdFileTypes;
@@ -29,14 +29,12 @@ import java.util.Map;
* Use is subject to license terms.
*/
public class HotSwapManager implements ProjectComponent{
private final Project myProject;
public class HotSwapManager extends AbstractProjectComponent {
private final Map<DebuggerSession, Long> myTimeStamps = new HashMap<DebuggerSession, Long>();
private static final String CLASS_EXTENSION = ".class";
public HotSwapManager(Project project, DebuggerManagerEx manager) {
myProject = project;
super(project);
manager.addDebuggerManagerListener(new DebuggerManagerListener() {
public void sessionCreated(DebuggerSession session) {
myTimeStamps.put(session, Long.valueOf(System.currentTimeMillis()));
@@ -48,23 +46,11 @@ public class HotSwapManager implements ProjectComponent{
});
}
public void projectOpened() {
}
public void projectClosed() {
}
@NotNull
public String getComponentName() {
return "HotSwapManager";
}
public void initComponent() {
}
public void disposeComponent() {
}
private long getTimeStamp(DebuggerSession session) {
Long tStamp = myTimeStamps.get(session);
return tStamp != null ? tStamp.longValue() : 0;
@@ -4,14 +4,14 @@ import com.intellij.CommonBundle;
import com.intellij.execution.ExecutionException;
import com.intellij.execution.RunnerRegistry;
import com.intellij.execution.executors.DefaultRunExecutor;
import com.intellij.execution.runners.ProgramRunner;
import com.intellij.execution.runners.ExecutionEnvironment;
import com.intellij.execution.runners.ProgramRunner;
import com.intellij.execution.util.ExecutionErrorDialog;
import com.intellij.ide.DataManager;
import com.intellij.openapi.actionSystem.DataConstants;
import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.actionSystem.impl.SimpleDataContext;
import com.intellij.openapi.components.ProjectComponent;
import com.intellij.openapi.components.AbstractProjectComponent;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleUtil;
import com.intellij.openapi.project.Project;
@@ -29,8 +29,7 @@ import org.jetbrains.annotations.NotNull;
import java.awt.*;
public final class JavadocGenerationManager implements JDOMExternalizable, ProjectComponent {
private final Project myProject;
public final class JavadocGenerationManager extends AbstractProjectComponent implements JDOMExternalizable {
private final JavadocConfiguration myConfiguration;
public static JavadocGenerationManager getInstance(Project project) {
@@ -38,21 +37,10 @@ public final class JavadocGenerationManager implements JDOMExternalizable, Proje
}
JavadocGenerationManager(Project project) {
myProject = project;
super(project);
myConfiguration = new JavadocConfiguration(project);
}
public void disposeComponent() {
}
public void initComponent() { }
public void projectClosed() {
}
public void projectOpened() {
}
public void generateJavadoc(final PsiDirectory directory, DataContext dataContext) {
Component component = (Component)dataContext.getData(DataConstants.CONTEXT_COMPONENT);
final PsiPackage aPackage = directory != null ? JavaDirectoryService.getInstance().getPackage(directory) : null;