Search in sources :

Example 1 with ConfigurationFactoryEx

use of com.intellij.execution.configuration.ConfigurationFactoryEx in project intellij-community by JetBrains.

the class CopyConfigurationAction method doActionPerformed.

@Override
@SuppressWarnings("unchecked")
protected void doActionPerformed(DashboardRunConfigurationNode node) {
    RunManagerEx runManager = RunManagerEx.getInstanceEx(node.getProject());
    RunnerAndConfigurationSettings settings = node.getConfigurationSettings();
    RunnerAndConfigurationSettings copiedSettings = ((RunnerAndConfigurationSettingsImpl) settings).clone();
    runManager.setUniqueNameIfNeed(copiedSettings);
    copiedSettings.setFolderName(settings.getFolderName());
    final ConfigurationFactory factory = settings.getFactory();
    if (factory instanceof ConfigurationFactoryEx) {
        ((ConfigurationFactoryEx) factory).onConfigurationCopied(settings.getConfiguration());
    }
    if (RunDialog.editConfiguration(node.getProject(), copiedSettings, ExecutionBundle.message("run.dashboard.edit.configuration.dialog.title"))) {
        runManager.addConfiguration(copiedSettings, runManager.isConfigurationShared(settings), runManager.getBeforeRunTasks(settings.getConfiguration()), false);
    }
}
Also used : RunManagerEx(com.intellij.execution.RunManagerEx) ConfigurationFactory(com.intellij.execution.configurations.ConfigurationFactory) ConfigurationFactoryEx(com.intellij.execution.configuration.ConfigurationFactoryEx) RunnerAndConfigurationSettings(com.intellij.execution.RunnerAndConfigurationSettings) RunnerAndConfigurationSettingsImpl(com.intellij.execution.impl.RunnerAndConfigurationSettingsImpl)

Example 2 with ConfigurationFactoryEx

use of com.intellij.execution.configuration.ConfigurationFactoryEx in project intellij-community by JetBrains.

the class DeploymentConfigurationManagerImpl method createAndRunConfiguration.

@Override
public void createAndRunConfiguration(@NotNull ServerType<?> serverType, @Nullable RemoteServer<?> remoteServer) {
    DeployToServerConfigurationType configurationType = DeployToServerConfigurationTypesRegistrar.getDeployConfigurationType(serverType);
    RunManagerEx runManager = RunManagerEx.getInstanceEx(myProject);
    ConfigurationFactoryEx factory = configurationType.getFactory();
    RunnerAndConfigurationSettings settings = runManager.createRunConfiguration(configurationType.getDisplayName(), factory);
    factory.onNewConfigurationCreated(settings.getConfiguration());
    DeployToServerRunConfiguration<?, ?> runConfiguration = (DeployToServerRunConfiguration<?, ?>) settings.getConfiguration();
    if (remoteServer != null) {
        runConfiguration.setServerName(remoteServer.getName());
    }
    if (RunDialog.editConfiguration(myProject, settings, "Create Deployment Configuration", DefaultRunExecutor.getRunExecutorInstance())) {
        runManager.addConfiguration(settings, runManager.isConfigurationShared(settings), runManager.getBeforeRunTasks(runConfiguration), false);
        runManager.setSelectedConfiguration(settings);
        ProgramRunnerUtil.executeConfiguration(myProject, settings, DefaultRunExecutor.getRunExecutorInstance());
    }
}
Also used : RunManagerEx(com.intellij.execution.RunManagerEx) ConfigurationFactoryEx(com.intellij.execution.configuration.ConfigurationFactoryEx) RunnerAndConfigurationSettings(com.intellij.execution.RunnerAndConfigurationSettings)

Example 3 with ConfigurationFactoryEx

use of com.intellij.execution.configuration.ConfigurationFactoryEx in project intellij-community by JetBrains.

the class CloudRunConfigurationUtil method createRunConfiguration.

public static <SC extends ServerConfiguration, DC extends DeploymentConfiguration> DeployToServerRunConfiguration<SC, DC> createRunConfiguration(RemoteServer<SC> account, Module module, DeploymentSource deploymentSource, DC deploymentConfiguration) {
    Project project = module.getProject();
    String accountName = account.getName();
    String name = generateRunConfigurationName(accountName, module.getName());
    final RunManagerEx runManager = RunManagerEx.getInstanceEx(project);
    ConfigurationFactory configurationFactory = getRunConfigurationType(account.getType()).getConfigurationFactories()[0];
    final RunnerAndConfigurationSettings runSettings = runManager.createRunConfiguration(name, configurationFactory);
    final DeployToServerRunConfiguration<SC, DC> result = (DeployToServerRunConfiguration<SC, DC>) runSettings.getConfiguration();
    result.setServerName(accountName);
    result.setDeploymentSource(deploymentSource);
    result.setDeploymentConfiguration(deploymentConfiguration);
    ((ConfigurationFactoryEx) configurationFactory).onNewConfigurationCreated(runSettings.getConfiguration());
    runManager.addConfiguration(runSettings, false);
    runManager.setSelectedConfiguration(runSettings);
    return result;
}
Also used : Project(com.intellij.openapi.project.Project) RunManagerEx(com.intellij.execution.RunManagerEx) ConfigurationFactory(com.intellij.execution.configurations.ConfigurationFactory) ConfigurationFactoryEx(com.intellij.execution.configuration.ConfigurationFactoryEx) RunnerAndConfigurationSettings(com.intellij.execution.RunnerAndConfigurationSettings) DeployToServerRunConfiguration(com.intellij.remoteServer.impl.configuration.deployment.DeployToServerRunConfiguration)

Example 4 with ConfigurationFactoryEx

use of com.intellij.execution.configuration.ConfigurationFactoryEx in project google-cloud-intellij by GoogleCloudPlatform.

the class AppEngineStandardWebIntegration method setupDeployRunConfiguration.

private void setupDeployRunConfiguration(@NotNull Module module) {
    RunManager runManager = RunManager.getInstance(module.getProject());
    boolean hasExistingDeployConfiguration = runManager.getAllConfigurationsList().stream().filter(config -> config instanceof DeployToServerRunConfiguration).map(config -> ((DeployToServerRunConfiguration) config).getServerType()).anyMatch(serverType -> serverType instanceof AppEngineCloudType);
    if (!hasExistingDeployConfiguration) {
        AppEngineCloudType serverType = ServerType.EP_NAME.findExtension(AppEngineCloudType.class);
        RemoteServer<AppEngineServerConfiguration> server = ContainerUtil.getFirstItem(RemoteServersManager.getInstance().getServers(serverType));
        DeployToServerConfigurationType configurationType = DeployToServerConfigurationTypesRegistrar.getDeployConfigurationType(serverType);
        ConfigurationFactoryEx factory = configurationType.getFactory();
        RunnerAndConfigurationSettings settings = runManager.createRunConfiguration(configurationType.getDisplayName(), factory);
        DeployToServerRunConfiguration<?, ?> runConfiguration = (DeployToServerRunConfiguration<?, ?>) settings.getConfiguration();
        if (server != null) {
            runConfiguration.setServerName(server.getName());
        }
        runManager.addConfiguration(settings, false);
    }
}
Also used : AppEngineServerConfiguration(com.google.cloud.tools.intellij.appengine.cloud.AppEngineServerConfiguration) FrameworkSupportModel(com.intellij.ide.util.frameworkSupport.FrameworkSupportModel) VirtualFile(com.intellij.openapi.vfs.VirtualFile) RunnerAndConfigurationSettings(com.intellij.execution.RunnerAndConfigurationSettings) ServerType(com.intellij.remoteServer.ServerType) Artifact(com.intellij.packaging.artifacts.Artifact) ContainerUtil(com.intellij.util.containers.ContainerUtil) DeployToServerConfigurationTypesRegistrar(com.intellij.remoteServer.impl.configuration.deployment.DeployToServerConfigurationTypesRegistrar) DeployToServerConfigurationType(com.intellij.remoteServer.impl.configuration.deployment.DeployToServerConfigurationType) Library(com.intellij.openapi.roots.libraries.Library) CloudDebugConfigType(com.google.cloud.tools.intellij.debugger.CloudDebugConfigType) AppEngineCloudType(com.google.cloud.tools.intellij.appengine.cloud.AppEngineCloudType) ModuleRunConfiguration(com.intellij.execution.configurations.ModuleRunConfiguration) ModifiableRootModel(com.intellij.openapi.roots.ModifiableRootModel) RunManager(com.intellij.execution.RunManager) Project(com.intellij.openapi.project.Project) Module(com.intellij.openapi.module.Module) FrameworkRole(com.intellij.ide.util.frameworkSupport.FrameworkRole) DeployToServerRunConfiguration(com.intellij.remoteServer.impl.configuration.deployment.DeployToServerRunConfiguration) ArtifactType(com.intellij.packaging.artifacts.ArtifactType) RemoteServer(com.intellij.remoteServer.configuration.RemoteServer) RemoteServersManager(com.intellij.remoteServer.configuration.RemoteServersManager) ConfigurationFactory(com.intellij.execution.configurations.ConfigurationFactory) FrameworkSupportInModuleProvider(com.intellij.framework.addSupport.FrameworkSupportInModuleProvider) Nullable(org.jetbrains.annotations.Nullable) CloudDebugRunConfiguration(com.google.cloud.tools.intellij.debugger.CloudDebugRunConfiguration) List(java.util.List) ServiceManager(com.intellij.openapi.components.ServiceManager) NotNull(org.jetbrains.annotations.NotNull) ConfigurationFactoryEx(com.intellij.execution.configuration.ConfigurationFactoryEx) DeployToServerConfigurationType(com.intellij.remoteServer.impl.configuration.deployment.DeployToServerConfigurationType) AppEngineServerConfiguration(com.google.cloud.tools.intellij.appengine.cloud.AppEngineServerConfiguration) AppEngineCloudType(com.google.cloud.tools.intellij.appengine.cloud.AppEngineCloudType) ConfigurationFactoryEx(com.intellij.execution.configuration.ConfigurationFactoryEx) RunnerAndConfigurationSettings(com.intellij.execution.RunnerAndConfigurationSettings) RunManager(com.intellij.execution.RunManager) DeployToServerRunConfiguration(com.intellij.remoteServer.impl.configuration.deployment.DeployToServerRunConfiguration)

Aggregations

RunnerAndConfigurationSettings (com.intellij.execution.RunnerAndConfigurationSettings)4 ConfigurationFactoryEx (com.intellij.execution.configuration.ConfigurationFactoryEx)4 RunManagerEx (com.intellij.execution.RunManagerEx)3 ConfigurationFactory (com.intellij.execution.configurations.ConfigurationFactory)3 Project (com.intellij.openapi.project.Project)2 DeployToServerRunConfiguration (com.intellij.remoteServer.impl.configuration.deployment.DeployToServerRunConfiguration)2 AppEngineCloudType (com.google.cloud.tools.intellij.appengine.cloud.AppEngineCloudType)1 AppEngineServerConfiguration (com.google.cloud.tools.intellij.appengine.cloud.AppEngineServerConfiguration)1 CloudDebugConfigType (com.google.cloud.tools.intellij.debugger.CloudDebugConfigType)1 CloudDebugRunConfiguration (com.google.cloud.tools.intellij.debugger.CloudDebugRunConfiguration)1 RunManager (com.intellij.execution.RunManager)1 ModuleRunConfiguration (com.intellij.execution.configurations.ModuleRunConfiguration)1 RunnerAndConfigurationSettingsImpl (com.intellij.execution.impl.RunnerAndConfigurationSettingsImpl)1 FrameworkSupportInModuleProvider (com.intellij.framework.addSupport.FrameworkSupportInModuleProvider)1 FrameworkRole (com.intellij.ide.util.frameworkSupport.FrameworkRole)1 FrameworkSupportModel (com.intellij.ide.util.frameworkSupport.FrameworkSupportModel)1 ServiceManager (com.intellij.openapi.components.ServiceManager)1 Module (com.intellij.openapi.module.Module)1 ModifiableRootModel (com.intellij.openapi.roots.ModifiableRootModel)1 Library (com.intellij.openapi.roots.libraries.Library)1