Skip to content

Commit

Permalink
perfomance: JetCompilerManager should be StartupActivity instead of P…
Browse files Browse the repository at this point in the history
…rojectComponent
  • Loading branch information
develar committed Nov 23, 2012
1 parent 7878fc9 commit 5f948ea
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 30 deletions.
4 changes: 1 addition & 3 deletions idea/src/META-INF/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,6 @@
<component>
<implementation-class>org.jetbrains.jet.plugin.JetStandardLibraryInitializer</implementation-class>
</component>
<component>
<implementation-class>org.jetbrains.jet.plugin.compiler.JetCompilerManager</implementation-class>
</component>
<component>
<implementation-class>org.jetbrains.jet.plugin.caches.JetCacheManager</implementation-class>
</component>
Expand Down Expand Up @@ -243,5 +240,6 @@

<moduleService serviceInterface="org.jetbrains.jet.plugin.project.KotlinJsBuildConfigurationManager"
serviceImplementation="org.jetbrains.jet.plugin.project.KotlinJsBuildConfigurationManager"/>
<postStartupActivity implementation="org.jetbrains.jet.plugin.compiler.JetCompilerManager"/>
</extensions>
</idea-plugin>
34 changes: 7 additions & 27 deletions idea/src/org/jetbrains/jet/plugin/compiler/JetCompilerManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@
package org.jetbrains.jet.plugin.compiler;

import com.intellij.openapi.compiler.*;
import com.intellij.openapi.components.ProjectComponent;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileTypes.FileType;
import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.project.DumbAware;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
import com.intellij.openapi.startup.StartupActivity;
import org.jetbrains.jet.plugin.JetFileType;

import java.util.Collections;
Expand All @@ -33,13 +33,15 @@
/**
* @author yole
*/
public class JetCompilerManager implements ProjectComponent {
public class JetCompilerManager implements StartupActivity, DumbAware {
private static final Logger LOG = Logger.getInstance(JetCompilerManager.class);

// Comes from external make
private static final String PREFIX_WITH_COMPILER_NAME = KOTLIN_COMPILER_NAME + ": " + INTERNAL_ERROR_PREFIX;

public JetCompilerManager(Project project, CompilerManager manager) {
@Override
public void runActivity(Project project) {
CompilerManager manager = CompilerManager.getInstance(project);
manager.addTranslatingCompiler(new JetCompiler(),
Collections.<FileType>singleton(JetFileType.INSTANCE),
Collections.singleton(StdFileTypes.CLASS));
Expand All @@ -66,26 +68,4 @@ public void fileGenerated(String outputRoot, String relativePath) {
}
}, project);
}

@Override
public void projectOpened() {
}

@Override
public void projectClosed() {
}

@Override
public void initComponent() {
}

@Override
public void disposeComponent() {
}

@NotNull
@Override
public String getComponentName() {
return JetCompilerManager.class.getCanonicalName();
}
}
}

0 comments on commit 5f948ea

Please sign in to comment.