org.eclipse.ui.console.IConsoleConstants#org.eclipse.core.runtime.SubMonitor源码实例Demo

下面列出了org.eclipse.ui.console.IConsoleConstants#org.eclipse.core.runtime.SubMonitor 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: codewind-eclipse   文件: CodewindSocket.java
boolean blockUntilFirstConnection(IProgressMonitor monitor) {
	SubMonitor mon = SubMonitor.convert(monitor, 2500);
	final int delay = 100;
	final int timeout = 2500;
	int waited = 0;
	while(!hasConnected && waited < timeout) {
		mon.split(100);
		try {
			Thread.sleep(delay);
			waited += delay;

			if (waited % (5 * delay) == 0) {
				Logger.log("Waiting for CodewindSocket initial connection"); //$NON-NLS-1$
			}
		}
		catch(InterruptedException e) {
			Logger.logError(e);
		}
		if (mon.isCanceled()) {
			return false;
		}
	}
	Logger.log("CodewindSocket initialized in time ? " + hasConnected); //$NON-NLS-1$
	return hasConnected;
}
 
源代码2 项目: codewind-eclipse   文件: RegistryUtil.java
public static List<RegistryInfo> listRegistrySecrets(String conid, IProgressMonitor monitor) throws IOException, JSONException, TimeoutException {
	SubMonitor mon = SubMonitor.convert(monitor, 100);
	Process process = null;
	try {
		process = CLIUtil.runCWCTL(CLIUtil.GLOBAL_JSON_INSECURE, REG_SECRET_LIST_CMD, new String[] {CLIUtil.CON_ID_OPTION, conid});
		ProcessResult result = ProcessHelper.waitForProcess(process, 500, 60, mon.split(100));
		CLIUtil.checkResult(REG_SECRET_LIST_CMD, result, true);
		JSONArray registryArray = new JSONArray(result.getOutput().trim());
		List<RegistryInfo> registries = new ArrayList<RegistryInfo>();
		for (int i = 0; i < registryArray.length(); i++) {
			registries.add(new RegistryInfo(registryArray.getJSONObject(i)));
		}
		return registries;
	} finally {
		if (process != null && process.isAlive()) {
			process.destroy();
		}
	}
}
 
源代码3 项目: codewind-eclipse   文件: OtherUtil.java
public static void setLoglevels(String connectionName, String level, String conid, IProgressMonitor monitor) throws IOException, JSONException, TimeoutException {
	SubMonitor mon = SubMonitor.convert(monitor, NLS.bind(Messages.SetLogLevelTaskLabel, new String[] {connectionName, level}), 100);
	Process process = null;
	try {
		process = CLIUtil.runCWCTL(CLIUtil.GLOBAL_JSON_INSECURE, LOGLEVELS_CMD, new String[] {CLIUtil.CON_ID_OPTION, conid}, new String[] {level});
		ProcessResult result = ProcessHelper.waitForProcess(process, 500, 300, mon);
		CLIUtil.checkResult(LOGLEVELS_CMD, result, true);
		JSONObject resultJson = new JSONObject(result.getOutput());
		LogLevels logLevels = new LogLevels(resultJson);
		if (!logLevels.getCurrentLevel().equals(level)) {
			String msg = "The current log level is not what was requested, requested: " + level + ", actual: " + logLevels.getCurrentLevel(); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
			Logger.logError(msg);
			throw new IOException(msg); //$NON-NLS-1$
		}
	} finally {
		if (process != null && process.isAlive()) {
			process.destroy();
		}
	}
}
 
源代码4 项目: google-cloud-eclipse   文件: WebProjectUtil.java
/**
 * Create a file in the appropriate location for the project's {@code WEB-INF}. This
 * implementation respects the order and tags on the WTP virtual component model, creating the
 * file in the {@code <wb-resource>} with the {@code defaultRootSource} tag when present. This
 * method is typically used after ensuring the file does not exist with {@link
 * #findInWebInf(IProject, IPath)}.
 *
 * <p>See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=448544">Eclipse bug 448544</a>
 * for details of the {@code defaultRootSource} tag.
 *
 * @param project the hosting project
 * @param filePath the path of the file within the project's {@code WEB-INF}
 * @param contents the content for the file
 * @param overwrite if {@code true} then overwrite the file if it exists
 * @see #findInWebInf(IProject, IPath)
 */
public static IFile createFileInWebInf(
    IProject project,
    IPath filePath,
    InputStream contents,
    boolean overwrite,
    IProgressMonitor monitor)
    throws CoreException {
  IFolder webInfDir = findWebInfForNewResource(project);
  IFile file = webInfDir.getFile(filePath);
  SubMonitor progress = SubMonitor.convert(monitor, 2);
  if (!file.exists()) {
    ResourceUtils.createFolders(file.getParent(), progress.newChild(1));
    file.create(contents, true, progress.newChild(1));
  } else if (overwrite) {
    file.setContents(contents, IResource.FORCE | IResource.KEEP_HISTORY, progress.newChild(2));
  }
  return file;
}
 
源代码5 项目: APICloud-Studio   文件: UnifiedBuilder.java
private void incrementalBuild(List<IBuildParticipant> participants, IResourceDelta delta, IProgressMonitor monitor)
{
	try
	{
		SubMonitor sub = SubMonitor.convert(monitor, 100);
		ResourceCollector collector = new ResourceCollector();
		delta.accept(collector);

		indexProjectBuildPaths(sub.newChild(25));

		// Notify of the removed files
		removeFiles(participants, collector.removedFiles, sub.newChild(5));

		// Now build the new/updated files
		buildFiles(participants, collector.updatedFiles, sub.newChild(70));
	}
	catch (CoreException e)
	{
		IdeLog.logError(BuildPathCorePlugin.getDefault(), e);
	}
}
 
源代码6 项目: eclipse.jdt.ls   文件: FileEventHandler.java
private static WorkspaceEdit getRenameEdit(IJavaElement targetElement, String newName, IProgressMonitor monitor) throws CoreException {
	RenameSupport renameSupport = RenameSupport.create(targetElement, newName, RenameSupport.UPDATE_REFERENCES);
	if (renameSupport == null) {
		return null;
	}

	if (targetElement instanceof IPackageFragment) {
		((RenamePackageProcessor) renameSupport.getJavaRenameProcessor()).setRenameSubpackages(true);
	}

	RenameRefactoring renameRefactoring = renameSupport.getRenameRefactoring();
	RefactoringTickProvider rtp = renameRefactoring.getRefactoringTickProvider();
	SubMonitor submonitor = SubMonitor.convert(monitor, "Creating rename changes...", rtp.getAllTicks());
	CheckConditionsOperation checkConditionOperation = new CheckConditionsOperation(renameRefactoring, CheckConditionsOperation.ALL_CONDITIONS);
	checkConditionOperation.run(submonitor.split(rtp.getCheckAllConditionsTicks()));
	if (checkConditionOperation.getStatus().getSeverity() >= RefactoringStatus.FATAL) {
		JavaLanguageServerPlugin.logError(checkConditionOperation.getStatus().getMessageMatchingSeverity(RefactoringStatus.ERROR));
	}

	Change change = renameRefactoring.createChange(submonitor.split(rtp.getCreateChangeTicks()));
	change.initializeValidationData(new NotCancelableProgressMonitor(submonitor.split(rtp.getInitializeChangeTicks())));
	return ChangeUtil.convertToWorkspaceEdit(change);
}
 
源代码7 项目: codewind-eclipse   文件: InstallUtil.java
public static ProcessResult startCodewind(String version, IProgressMonitor monitor) throws IOException, TimeoutException {
	SubMonitor mon = SubMonitor.convert(monitor, Messages.StartCodewindJobLabel, 100);
	Process process = null;
	try {
		CodewindManager.getManager().setInstallerStatus(InstallerStatus.STARTING);
		process = CLIUtil.runCWCTL(null, START_CMD, new String[] {TAG_OPTION, version});
		ProcessResult result = ProcessHelper.waitForProcess(process, 500, getPrefs().getInt(CodewindCorePlugin.CW_START_TIMEOUT), mon.split(90));
		return result;
	} finally {
		if (process != null && process.isAlive()) {
			process.destroy();
		}
		CodewindManager.getManager().refreshInstallStatus(mon.isCanceled() ? new NullProgressMonitor() : mon.split(10));
		CodewindManager.getManager().setInstallerStatus(null);
	}
}
 
源代码8 项目: codewind-eclipse   文件: InstallUtil.java
public static ProcessResult removeCodewind(String version, IProgressMonitor monitor) throws IOException, TimeoutException {
	SubMonitor mon = SubMonitor.convert(monitor, Messages.RemovingCodewindJobLabel, 100);
	Process process = null;
	try {
		CodewindManager.getManager().setInstallerStatus(InstallerStatus.UNINSTALLING);
		if (version != null) {
			process = CLIUtil.runCWCTL(null, REMOVE_CMD, new String[] {TAG_OPTION, version});
		} else {
			process = CLIUtil.runCWCTL(null, REMOVE_CMD, null);
		}
	    ProcessResult result = ProcessHelper.waitForProcess(process, 500, getPrefs().getInt(CodewindCorePlugin.CW_UNINSTALL_TIMEOUT), mon.split(90));
	    return result;
	} finally {
		if (process != null && process.isAlive()) {
			process.destroy();
		}
		CodewindManager.getManager().refreshInstallStatus(mon.isCanceled() ? new NullProgressMonitor() : mon.split(10));
		CodewindManager.getManager().setInstallerStatus(null);
	}
}
 
源代码9 项目: xtext-eclipse   文件: AbstractProjectCreator.java
@Override
protected void execute(final IProgressMonitor monitor)
		throws CoreException, InvocationTargetException, InterruptedException {
	SubMonitor subMonitor = SubMonitor.convert(monitor, 
			getCreateModelProjectMessage(), 
			2);
	try {
		final IProject project = createProject(subMonitor.newChild(1));
		if (project == null)
			return;
		enhanceProject(project, subMonitor.newChild(1));
		IFile modelFile = getModelFile(project);
		setResult(modelFile);
	} finally {
		subMonitor.done();
	}
}
 
@Override
public void earlyStartup() {
  workbench = PlatformUI.getWorkbench();
  workspace = ResourcesPlugin.getWorkspace();

  Job projectUpdater = new WorkspaceJob(Messages.getString("updating.projects.jobname")) { //$NON-NLS-1$
    @Override
    public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
      SubMonitor progress = SubMonitor.convert(monitor, 40);
      progress.subTask(Messages.getString("searching.for.projects")); //$NON-NLS-1$
      Collection<IProject> projects = findCandidates(progress.newChild(10));
      if (projects.isEmpty()) {
        return Status.OK_STATUS;
      }
      projects = promptUser(projects, progress.newChild(5));
      if (projects.isEmpty()) {
        return Status.OK_STATUS;
      }
      progress.subTask(Messages.getString("updating.projects")); //$NON-NLS-1$
      return upgradeProjects(projects, progress.newChild(25));
    }
  };
  projectUpdater.setRule(workspace.getRoot());
  projectUpdater.setUser(true);
  projectUpdater.schedule(500);
}
 
/**
 * Prompt the user to select the projects to upgrade.
 */
private Collection<IProject> promptUser(Collection<IProject> projects, SubMonitor progress) {
  Preconditions.checkArgument(!projects.isEmpty(), "no projects specified!"); // $NON-NLS-1$ //$NON-NLS-1$
  progress.setBlocked(StatusUtil.info(this, Messages.getString("waiting.for.user"))); //$NON-NLS-1$
  boolean[] proceed = new boolean[1];
  workbench.getDisplay().syncExec(() -> {
    StringBuilder sb = new StringBuilder(
        Messages.getString("following.projects.must.be.updated")); //$NON-NLS-1$
    sb.append("\n"); //$NON-NLS-1$
    for (IProject project : projects) {
      sb.append("\n    ").append(project.getName()); //$NON-NLS-1$
    }
    sb.append("\n\n"); //$NON-NLS-1$
    sb.append(Messages.getString("update.now")); //$NON-NLS-1$
    proceed[0] =
        MessageDialog.openQuestion(getShell(), Messages.getString("cloud.tools.for.eclipse"), sb.toString()); //$NON-NLS-1$
  });
  progress.clearBlocked();
  return proceed[0] ? projects : Collections.<IProject>emptyList();
}
 
源代码12 项目: sarl   文件: AbstractSarlMavenTest.java
@Override
protected void createFolders(IProject project, SubMonitor subMonitor,
		Shell shell) throws CoreException {
	if (this.folders != null) {
		for (final String folderName : this.folders) {
			IPath path = Path.fromPortableString(folderName);
			IPath tmpPath = Path.EMPTY;
			for (String segment : path.segments()) {
				tmpPath = tmpPath.append(segment);
				IFolder folder = project.getFolder(tmpPath.toPortableString());
				if (!folder.exists()) {
					folder.create(false, true, subMonitor.newChild(1));
				}
			}
		}
	}
}
 
源代码13 项目: google-cloud-eclipse   文件: LaunchHelperTest.java
@Before
public void setUp() {
  handler = new LaunchHelper() {
    @Override
    protected void launch(IServer server, String launchMode, SubMonitor progress)
        throws CoreException {
      // do nothing
    }

    @Override
    Collection<IServer> findExistingServers(IModule[] modules, boolean exact,
        SubMonitor progress) {
      if (serverToReturn != null) {
        return Collections.singleton(serverToReturn);
      }
      return super.findExistingServers(modules, exact, progress);
    }
  };
}
 
源代码14 项目: tracecompass   文件: TracePackageImportOperation.java
private IStatus deleteExistingTraces(IProgressMonitor progressMonitor) {
    for (TracePackageElement packageElement : fImportTraceElements) {
        TracePackageTraceElement traceElement = (TracePackageTraceElement) packageElement;
        if (!isFilesChecked(traceElement)) {
            continue;
        }

        TmfCommonProjectElement projectElement = getMatchingProjectElement(traceElement);
        try {
            if (projectElement instanceof TmfExperimentElement) {
                Display.getDefault().syncExec(() -> projectElement.closeEditors());
                projectElement.deleteSupplementaryFolder();
                projectElement.getResource().delete(true, SubMonitor.convert(progressMonitor));
            } else if (projectElement instanceof TmfTraceElement) {
                ((TmfTraceElement) projectElement).delete(SubMonitor.convert(progressMonitor), true);
            }
        } catch (CoreException e) {
            return new Status(IStatus.ERROR, Activator.PLUGIN_ID, org.eclipse.tracecompass.internal.tmf.ui.project.wizards.tracepkg.Messages.TracePackage_ErrorOperation, e);
        }
    }

    return Status.OK_STATUS;
}
 
源代码15 项目: thym   文件: HybridProject.java
public void build(IProgressMonitor monitor, final String... buildOptions) throws CoreException{
	ISchedulingRule rule = ResourcesPlugin.getWorkspace().getRuleFactory().modifyRule(getProject());
	try{
		Job.getJobManager().beginRule(rule, monitor);
	
		SubMonitor sm = SubMonitor.convert(monitor);
		sm.setWorkRemaining(100);
		ErrorDetectingCLIResult status = getProjectCLI().build(sm.newChild(70),buildOptions).convertTo(ErrorDetectingCLIResult.class);
		getProject().refreshLocal(IResource.DEPTH_INFINITE, sm.newChild(30));
		if(status.asStatus().getSeverity() == IStatus.ERROR){
			throw new CoreException(status.asStatus());
		}
	} finally {
		Job.getJobManager().endRule(rule);
	}
}
 
protected void executeParticipants(ResourceRelocationContext context, SubMonitor monitor) {
	List<? extends IResourceRelocationStrategy> strategies = strategyRegistry.getStrategies();
	if (context.getChangeType() == ResourceRelocationContext.ChangeType.COPY) {
		context.getChangeSerializer().setUpdateRelatedFiles(false);
	}

	monitor.setWorkRemaining(strategies.size());

	for (IResourceRelocationStrategy strategy : strategies) {
		try {
			monitor.split(1);
			strategy.applyChange(context);
		} catch (OperationCanceledException t) {
			issues.add(ERROR, "Operation was cancelled while applying resource changes", t);
			LOG.error(t.getMessage(), t);
			break;
		}
	}
}
 
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
  IProject project = ProjectFromSelectionHelper.getFirstProject(event);
  if (!CloudToolsEclipseProjectUpdater.hasOldContainers(project)) {
    throw new ExecutionException(Messages.getString("project.appears.up.to.date")); //$NON-NLS-1$
  }
  String jobName = Messages.getString("updating.project", project.getName()); //$NON-NLS-1$
  Job updateJob = new WorkspaceJob(jobName) {
    @Override
    public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
      return CloudToolsEclipseProjectUpdater.updateProject(project, SubMonitor.convert(monitor));
    }
  };
  updateJob.setRule(project.getWorkspace().getRoot());
  updateJob.setUser(true);
  updateJob.schedule();
  return null;
}
 
/**
 * Safely create a folder meant to receive extracted content by making sure
 * there is no name clash.
 */
private static IFolder safeCreateExtractedFolder(IFolder destinationFolder, IPath relativeContainerRelativePath, IProgressMonitor monitor) throws CoreException {
    SubMonitor subMonitor = SubMonitor.convert(monitor, 2);
    IFolder extractedFolder;
    String suffix = ""; //$NON-NLS-1$
    int i = 2;
    while (true) {
        IPath fullPath = destinationFolder.getFullPath().append(relativeContainerRelativePath + ".extract" + suffix); //$NON-NLS-1$
        IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(fullPath);
        if (!folder.exists()) {
            extractedFolder = folder;
            break;
        }
        suffix = "(" + i + ")"; //$NON-NLS-1$//$NON-NLS-2$
        i++;
    }
    subMonitor.worked(1);

    TraceUtils.createFolder(extractedFolder, subMonitor.newChild(1));
    return extractedFolder;
}
 
源代码19 项目: dsl-devkit   文件: RegistryBuilderParticipant.java
/**
 * Builds all other registered (non-language specific) {@link IXtextBuilderParticipant}s.
 *
 * @param buildContext
 *          the {@link IBuildContext}, must not be {@code null}
 * @param monitor
 *          the {@link IProgressMonitor}, must not be {@code null}
 * @throws CoreException
 *           caused by an {@link IXtextBuilderParticipant}
 */
protected void buildOtherParticipants(final IBuildContext buildContext, final IProgressMonitor monitor) throws CoreException {
  ImmutableList<IXtextBuilderParticipant> otherBuilderParticipants = getParticipants();
  if (otherBuilderParticipants.isEmpty()) {
    return;
  }
  SubMonitor progress = SubMonitor.convert(monitor, otherBuilderParticipants.size());
  progress.subTask(Messages.RegistryBuilderParticipant_InvokingBuildParticipants);
  for (final IXtextBuilderParticipant participant : otherBuilderParticipants) {
    if (progress.isCanceled()) {
      throw new OperationCanceledException();
    }
    try {
      if (initializeParticipant(participant)) {
        participant.build(buildContext, progress.newChild(1));
      }
      // CHECKSTYLE:CHECK-OFF IllegalCatchCheck we need to recover from any exception and continue the build
    } catch (Throwable throwable) {
      // CHECKSTYLE:CHECK-ON IllegalCatchCheck
      LOG.error("Error occurred during build of builder participant: " //$NON-NLS-1$
          + participant.getClass().getName(), throwable);
    }
  }
}
 
源代码20 项目: xtext-xtend   文件: XtendProjectConfigurator.java
@Override
public void configure(ProjectConfigurationRequest request,
		IProgressMonitor monitor) throws CoreException {
	addNature(request.getProject(), XtextProjectHelper.NATURE_ID, monitor);

	OutputConfiguration config = new XtendOutputConfigurationProvider()
			.getOutputConfigurations().iterator().next();

	List<MojoExecution> executions = getMojoExecutions(request, monitor);
	SubMonitor progress = SubMonitor.convert(monitor, executions.size());
	for (MojoExecution execution : executions) {
		String goal = execution.getGoal();
		if (goal.equals("compile")) {
			readCompileConfig(config, request, execution, progress.split(1));
		} else if (goal.equals("testCompile")) {
			readTestCompileConfig(config, request, execution, progress.split(1));
		} else if (goal.equals("xtend-install-debug-info")) {
			readDebugInfoConfig(config, request, execution, progress.split(1));
		} else if (goal.equals("xtend-test-install-debug-info")) {
			readTestDebugInfoConfig(config, request, execution, progress.split(1));
		}
	}

	writePreferences(config, request.getProject());
}
 
源代码21 项目: sarl   文件: SARLProjectConfigurator.java
@Override
public void unconfigure(IProject project, IProgressMonitor monitor) throws CoreException {
	try {
		final SubMonitor mon = SubMonitor.convert(monitor, 4);
		final IProjectDescription description = project.getDescription();
		final List<String> natures = new LinkedList<>(Arrays.asList(description.getNatureIds()));
		natures.remove(SARLEclipseConfig.XTEXT_NATURE_ID);
		natures.remove(SARLEclipseConfig.NATURE_ID);
		final String[] newNatures = natures.toArray(new String[natures.size()]);
		mon.worked(1);
		final IStatus status = ResourcesPlugin.getWorkspace().validateNatureSet(newNatures);
		mon.worked(1);
		if (status.getCode() == IStatus.OK) {
			description.setNatureIds(newNatures);
			project.setDescription(description, mon.newChild(1));
			safeRefresh(project, mon.newChild(1));
		} else {
			throw new CoreException(status);
		}
	} finally {
		monitor.done();
	}
}
 
源代码22 项目: google-cloud-eclipse   文件: WarPublisher.java
public static IStatus[] publishWar(IProject project, IPath destination, IPath safeWorkDirectory,
    IProgressMonitor monitor) throws CoreException {
  Preconditions.checkNotNull(project, "project is null"); //$NON-NLS-1$
  Preconditions.checkNotNull(destination, "destination is null"); //$NON-NLS-1$
  Preconditions.checkArgument(!destination.isEmpty(), "destination is empty path"); //$NON-NLS-1$
  Preconditions.checkNotNull(safeWorkDirectory, "safeWorkDirectory is null"); //$NON-NLS-1$
  if (monitor.isCanceled()) {
    throw new OperationCanceledException();
  }

  SubMonitor subMonitor = SubMonitor.convert(monitor, 100);
  subMonitor.setTaskName(Messages.getString("task.name.publish.war")); //$NON-NLS-1$

  IModuleResource[] resources =
      flattenResources(project, safeWorkDirectory, subMonitor.newChild(10));
  if (resources.length == 0) {
    IStatus error = StatusUtil.error(WarPublisher.class, project.getName()
        + " has no resources to publish"); //$NON-NLS-1$
    return new IStatus[] {error};
  }
  return PublishUtil.publishZip(resources, destination, subMonitor.newChild(90));
}
 
源代码23 项目: APICloud-Studio   文件: UnifiedBuilder.java
@Override
protected void clean(IProgressMonitor monitor) throws CoreException
{
	super.clean(monitor);

	IProject project = getProjectHandle();

	IBuildParticipantManager manager = getBuildParticipantManager();
	if (manager == null)
	{
		return;
	}
	List<IBuildParticipant> participants = manager.getAllBuildParticipants();
	participants = filterToEnabled(participants, project);

	SubMonitor sub = SubMonitor.convert(monitor, participants.size() + 2);
	sub.worked(1);

	ParserPoolFactory.getInstance().clearCache();

	removeProblemsAndTasksFor(project);
	sub.worked(1);

	// FIXME Should we visit all files and call "deleteFile" sort of like what we do with fullBuild?
	for (IBuildParticipant participant : participants)
	{
		if (sub.isCanceled())
		{
			return;
		}

		participant.clean(project, sub.newChild(1));
	}
	sub.done();
}
 
源代码24 项目: tesb-studio-se   文件: StopRuntimeProgress.java
@Override
public void run(IProgressMonitor parentMonitor) throws InvocationTargetException, InterruptedException {
    SubMonitor subMonitor = SubMonitor.convert(parentMonitor, 10);
    subMonitor.setTaskName(RunContainerMessages.getString("HaltRuntimeAction.Stoping")); //$NON-NLS-1$
    if (checkRunning()) {
        if (RuntimeServerController.getInstance().isRunning()) {
            try {
                RuntimeServerController.getInstance().stopRuntimeServer();
                int i = 0;
                String dot = "."; //$NON-NLS-1$
                // JMXUtil.connectToRuntime() != null
                while (RuntimeServerController.getInstance().isRunning() && i < 11 && !subMonitor.isCanceled()) {
                    subMonitor.setTaskName(RunContainerMessages.getString("HaltRuntimeAction.Task") + dot); //$NON-NLS-1$
                    dot += "."; //$NON-NLS-1$
                    subMonitor.worked(1);
                    Thread.sleep(3000);
                }
                if (RuntimeServerController.getInstance().isRunning()) {
                    throw new InterruptedException("Stop runtime server failed, please try again or stop it manually.");
                }
            } catch (Exception e) {
                ExceptionHandler.process(e);
                e.printStackTrace();
                throw new InvocationTargetException(e);
            }
        }
    }
}
 
源代码25 项目: codewind-eclipse   文件: RegistryUtil.java
private static void runRegistrySecretCmd(String[] command, String[] options, String[] args, IProgressMonitor monitor) throws IOException, JSONException, TimeoutException {
	SubMonitor mon = SubMonitor.convert(monitor, 100);
	Process process = null;
	try {
		process = CLIUtil.runCWCTL(CLIUtil.GLOBAL_JSON_INSECURE, command, options, args);
		ProcessResult result = ProcessHelper.waitForProcess(process, 500, 60, mon.split(100));
		CLIUtil.checkResult(command, result, false);
	} finally {
		if (process != null && process.isAlive()) {
			process.destroy();
		}
	}
}
 
源代码26 项目: codewind-eclipse   文件: AuthUtil.java
public static AuthToken genAuthToken(String username, String password, String conid, IProgressMonitor monitor) throws IOException, JSONException, TimeoutException {
	SubMonitor mon = SubMonitor.convert(monitor, Messages.AuthGenTaskLabel, 100);
	Process process = null;
	try {
		process = CLIUtil.runCWCTL(null, SECKEYRING_UPDATE_CMD, new String[] {USERNAME_OPTION, username, PASSWORD_OPTION, password, CLIUtil.CON_ID_OPTION, conid});
		ProcessResult result = ProcessHelper.waitForProcess(process, 500, 60, mon.split(50));
		if (result.getExitValue() != 0) {
			Logger.logError("Seckeyring update failed with rc: " + result.getExitValue() + " and error: " + result.getErrorMsg()); //$NON-NLS-1$ //$NON-NLS-2$
			throw new IOException(result.getErrorMsg());
		}
		if (result.getOutput() == null || result.getOutput().trim().isEmpty()) {
			// This should not happen
			Logger.logError("Seckeyring update had 0 return code but the output is empty"); //$NON-NLS-1$
			throw new IOException("The output from seckeyring update is empty."); //$NON-NLS-1$
		}
		JSONObject resultJson = new JSONObject(result.getOutput());
		if (!STATUS_OK_VALUE.equals(resultJson.getString(STATUS_KEY))) {
			String msg = "Seckeyring update failed for: " + conid + " with output: " + resultJson.getString(STATUS_MSG_KEY); //$NON-NLS-1$ //$NON-NLS-2$
			Logger.logError(msg);
			throw new IOException(msg);
		}
		
		return getAuthToken(username, conid, mon.split(50));
	} finally {
		if (process != null && process.isAlive()) {
			process.destroy();
		}
	}
}
 
源代码27 项目: tracecompass   文件: ResourceUtil.java
private static boolean createEclipseLink(IResource link, IPath targetLocation, @Nullable IProgressMonitor monitor) throws CoreException {
    SubMonitor subMon = SubMonitor.convert(monitor);
    if (link instanceof IFile) {
        ((IFile) link).createLink(targetLocation, IResource.REPLACE, subMon);
    } else if (link instanceof IFolder) {
        ((IFolder) link).createLink(targetLocation, IResource.REPLACE, subMon);
    }
    return true;
}
 
源代码28 项目: thym   文件: HybridProjectCreator.java
private IProject createHybridMobileProject(String projectName,
        URI location, IProgressMonitor monitor) throws CoreException {
    Assert.isNotNull(projectName, "Project name is null, can not create a project without a name");
    SubMonitor subMonitor = SubMonitor.convert(monitor, 100);
    IProject project = createBasicProject(projectName, location, subMonitor.split(50));
    addNature(project, subMonitor.split(50));
    return project;
}
 
源代码29 项目: sarl   文件: NewSarlClassWizardPage.java
@Override
protected void generateTypeContent(ISourceAppender appender, IJvmTypeProvider typeProvider,
		String comment, IProgressMonitor monitor) throws Exception {
	final SubMonitor mon = SubMonitor.convert(monitor, 3);
	final ScriptSourceAppender scriptBuilder = this.codeBuilderFactory.buildScript(
			getPackageFragment().getElementName(), typeProvider);
	final ISarlClassBuilder clazz = scriptBuilder.addSarlClass(getTypeName());
	final String superType = getSuperClass();
	// Do not add the "Object" type because it is the default.
	if (Strings.isNullOrEmpty(superType) || Object.class.getName().equals(superType)) {
		clazz.setExtends(null);
	} else {
		clazz.setExtends(superType);
	}
	for (final String type : getSuperInterfaces()) {
		clazz.addImplements(type);
	}
	clazz.setDocumentation(comment);
	mon.worked(1);
	createInheritedMembers(
		Object.class.getCanonicalName(),
		clazz.getSarlClass(),
		true,
		() -> clazz.addSarlConstructor(),
		name -> clazz.addOverrideSarlAction(name),
		superType,
		getSuperInterfaces());
	mon.worked(2);
	scriptBuilder.build(appender);
	mon.done();
}
 
private LibraryClasspathContainer resolveLibraryFiles(
    IJavaProject javaProject,
    IPath containerPath,
    Library library,
    List<Job> sourceAttacherJobs,
    IProgressMonitor monitor)
    throws CoreException {

  List<LibraryFile> libraryFiles = library.getAllDependencies();
  SubMonitor subMonitor = SubMonitor.convert(monitor, libraryFiles.size());
  subMonitor.subTask(Messages.getString("TaskResolveArtifacts", getLibraryDescription(library)));
  SubMonitor child = subMonitor.newChild(libraryFiles.size());

  List<IClasspathEntry> entries = new ArrayList<>();
  for (LibraryFile libraryFile : libraryFiles) {
    IClasspathEntry newLibraryEntry =
        resolveLibraryFileAttachSourceAsync(
            javaProject, containerPath, libraryFile, sourceAttacherJobs, monitor);
    entries.add(newLibraryEntry);
    child.worked(1);
  }
  monitor.done();
  LibraryClasspathContainer container =
      new LibraryClasspathContainer(
          containerPath, getLibraryDescription(library), entries, libraryFiles);

  return container;
}