package jetbrains.mps.execution.configurations.implementation.plugin.plugin; /*Generated by MPS */ import jetbrains.mps.plugins.custom.BaseCustomProjectPlugin; import java.util.List; import com.intellij.execution.BeforeRunTaskProvider; import jetbrains.mps.internal.collections.runtime.ListSequence; import java.util.ArrayList; import jetbrains.mps.project.MPSProject; import com.intellij.openapi.extensions.ExtensionPoint; import com.intellij.execution.BeforeRunTask; import com.intellij.openapi.extensions.Extensions; public class BeforeTasksInitializer_CustomProjectPlugin extends BaseCustomProjectPlugin { private List<BeforeRunTaskProvider> myRegisteredBeforeTasks = ListSequence.fromList(new ArrayList<BeforeRunTaskProvider>()); public BeforeTasksInitializer_CustomProjectPlugin() { } public void doInit(MPSProject project) { ExtensionPoint<BeforeRunTaskProvider<BeforeRunTask>> beforeTasksExtensionPoint = Extensions.getArea(project.getProject()).getExtensionPoint(BeforeRunTaskProvider.EXTENSION_POINT_NAME); { BeforeRunTaskProvider beforeTask = (BeforeRunTaskProvider) new DeployPlugins_BeforeTask(); ListSequence.fromList(BeforeTasksInitializer_CustomProjectPlugin.this.myRegisteredBeforeTasks).addElement(beforeTask); beforeTasksExtensionPoint.registerExtension(beforeTask); } { BeforeRunTaskProvider beforeTask = (BeforeRunTaskProvider) new MakeDeployScripts_BeforeTask(); ListSequence.fromList(BeforeTasksInitializer_CustomProjectPlugin.this.myRegisteredBeforeTasks).addElement(beforeTask); beforeTasksExtensionPoint.registerExtension(beforeTask); } } public void doDispose(MPSProject project) { ExtensionPoint<BeforeRunTaskProvider<BeforeRunTask>> beforeTasksExtensionPoint = Extensions.getArea(project.getProject()).getExtensionPoint(BeforeRunTaskProvider.EXTENSION_POINT_NAME); for (BeforeRunTaskProvider beforeTask : ListSequence.fromList(BeforeTasksInitializer_CustomProjectPlugin.this.myRegisteredBeforeTasks)) { beforeTasksExtensionPoint.unregisterExtension(beforeTask); } ListSequence.fromList(BeforeTasksInitializer_CustomProjectPlugin.this.myRegisteredBeforeTasks).clear(); } }