private IStatus setProperty(String key, String value, ProvisioningContext provisioningContext, IProgressMonitor monitor) { IEngine engine = (IEngine) agent.getService(IEngine.SERVICE_NAME); IProvisioningPlan plan = engine.createPlan(profile, provisioningContext); plan.setProfileProperty(key, value); IPhaseSet phaseSet = PhaseSetFactory.createPhaseSetIncluding(new String[] {PhaseSetFactory.PHASE_PROPERTY}); return engine.perform(plan, phaseSet, monitor); }
private IStatus executePlan(IProvisioningPlan plan, ProvisioningContext provisioningContext, IProgressMonitor monitor) { IEngine engine = (IEngine) agent.getService(IEngine.SERVICE_NAME); IPhaseSet phaseSet = PhaseSetFactory.createDefaultPhaseSetExcluding(new String[] {PhaseSetFactory.PHASE_COLLECT, PhaseSetFactory.PHASE_CHECK_TRUST}); if (plan.getInstallerPlan() != null) { IStatus installerPlanStatus = engine.perform(plan.getInstallerPlan(), phaseSet, monitor); if (!installerPlanStatus.isOK()) return installerPlanStatus; applyConfiguration(true); } return engine.perform(plan, phaseSet, monitor); }
private IStatus performRemoveForMovedIUs(ReconcilerProfileChangeRequest request, ProvisioningContext context, IProgressMonitor monitor) { Collection<IInstallableUnit> moves = request.getMoves(); if (moves.isEmpty()) return Status.OK_STATUS; IEngine engine = (IEngine) agent.getService(IEngine.SERVICE_NAME); IProvisioningPlan plan = engine.createPlan(profile, context); for (IInstallableUnit unit : moves) plan.removeInstallableUnit(unit); return executePlan(plan, context, monitor); }
public static IStatus executePlan(IProvisioningPlan result, IEngine engine, IPhaseSet phaseSet, ProvisioningContext context, IProgressMonitor progress) { if (!result.getStatus().isOK()) return result.getStatus(); if (result.getInstallerPlan() != null) { IStatus installerPlanStatus = ((IEngine) result.getInstallerPlan().getProfile().getProvisioningAgent().getService(IEngine.SERVICE_NAME)).perform(result.getInstallerPlan(), phaseSet, progress); if (!installerPlanStatus.isOK()) return installerPlanStatus; Configurator configChanger = ServiceHelper.getService(DirectorActivator.context, Configurator.class); try { configChanger.applyConfiguration(); } catch (IOException e) { return new Status(IStatus.ERROR, DirectorActivator.PI_DIRECTOR, Messages.Director_error_applying_configuration, e); } } return engine.perform(result, phaseSet, progress); } }
private IProvisioningPlan generateProvisioningPlan(Collection<IInstallableUnit> fromState, Collection<IInstallableUnit> toState, ProfileChangeRequest changeRequest, IProvisioningPlan installerPlan, ProvisioningContext context) { IProvisioningPlan plan = engine.createPlan(changeRequest.getProfile(), context); plan.setFuturePlan(new CollectionResult<>(toState)); planIUOperations(plan, fromState, toState); planPropertyOperations(plan, changeRequest, toState); if (DEBUG) { Object[] operands = new Object[0]; try { Method getOperands = plan.getClass().getMethod("getOperands"); //$NON-NLS-1$ operands = (Object[]) getOperands.invoke(plan); } catch (Throwable e) { // ignore } for (int i = 0; i < operands.length; i++) { Tracing.debug(operands[i].toString()); } } Map<IInstallableUnit, RequestStatus>[] changes = buildDetailedSuccess(toState, changeRequest); Map<IInstallableUnit, RequestStatus> requestChanges = (changes == null) ? null : changes[0]; Map<IInstallableUnit, RequestStatus> requestSideEffects = (changes == null) ? null : changes[1]; IStatus status = convertChangesToStatus(requestChanges, requestSideEffects); QueryableArray plannedState = new QueryableArray(toState.toArray(new IInstallableUnit[toState.size()])); PlannerStatus plannerStatus = new PlannerStatus(status, null, requestChanges, requestSideEffects, plannedState); plan.setStatus(plannerStatus); plan.setInstallerPlan(installerPlan); return plan; }
IProvisioningPlan plan = engine.createPlan(profile, context); for (Iterator<IInstallableUnit> iter = ius.iterator(); iter.hasNext();) { IInstallableUnit iu = iter.next(); IStatus status = engine.perform(plan, phaseSet, new NullProgressMonitor());
if (plan.getInstallerPlan() != null) { ISizingPhaseSet sizingPhaseSet = PhaseSetFactory.createSizingPhaseSet(); IStatus status = engine.perform(plan.getInstallerPlan(), sizingPhaseSet, mon.newChild(100)); if (status.isOK()) installPlanSize = sizingPhaseSet.getDiskSize(); IStatus status = engine.perform(plan, sizingPhaseSet, mon.newChild(200)); if (status.isOK()) return installPlanSize + sizingPhaseSet.getDiskSize();
sub.newChild(ExpandWork / 2)); } catch (OperationCanceledException e) { IProvisioningPlan plan = engine.createPlan(pcr.getProfile(), context); plan.setStatus(Status.CANCEL_STATUS); return plan;
IProvisioningPlan downloadPlan = getEngine().createPlan(profile, context); Iterator<IInstallableUnit> it = QueryUtil.compoundQueryable(plan.getAdditions(), plan.getInstallerPlan().getAdditions()).query(QueryUtil.createIUAnyQuery(), null).iterator(); while (it.hasNext()) { IStatus downloadStatus = getEngine().perform(downloadPlan, download, mon.newChild(300)); if (!downloadStatus.isOK()) { mon.done(); IStatus installerPlanStatus = getEngine().perform(plan.getInstallerPlan(), set, mon.newChild(100)); if (!installerPlanStatus.isOK()) { mon.done(); return getEngine().perform(plan, set, mon.newChild(500 - ticksUsed));
plan.setProfileProperty(PROP_PROVISION_MODE, TargetDefinitionPersistenceHelper.MODE_PLANNER); plan.setProfileProperty(PROP_ALL_ENVIRONMENTS, Boolean.toString(false)); IStatus result = engine.perform(plan, phases, subMonitor.split(75));
sub.setTaskName(Messages.Director_Task_installer_plan); if (profileRegistry == null) { IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); plan.setStatus(new Status(ERROR, PI_DIRECTOR, Messages.Planner_no_profile_registry)); return plan; IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); plan.setStatus(new Status(ERROR, PI_DIRECTOR, NLS.bind(Messages.Planner_profile_out_of_sync, profile.getProfileId())));
IProvisioningPlan downloadPlan = getEngine().createPlan(profile, context); Iterator<IInstallableUnit> it = QueryUtil.compoundQueryable(plan.getAdditions(), plan.getInstallerPlan().getAdditions()).query(QueryUtil.createIUAnyQuery(), null).iterator(); while (it.hasNext()) { IStatus downloadStatus = getEngine().perform(downloadPlan, download, mon.newChild(300)); if (!downloadStatus.isOK()) { mon.done(); IStatus installerPlanStatus = getEngine().perform(plan.getInstallerPlan(), set, mon.newChild(100)); if (!installerPlanStatus.isOK()) { mon.done(); return getEngine().perform(plan, set, mon.newChild(500 - ticksUsed));
IStatus result = engine.perform(plan, phases, subMonitor.split(100)); if (subMonitor.isCanceled()) { return;
.slice(new IInstallableUnit[] { (IInstallableUnit) updatedPlan[0] }, sub.newChild(ExpandWork / 4)); if (slice == null) { IProvisioningPlan plan = engine.createPlan(profile, context); plan.setStatus(slicer.getStatus()); return plan; switch (s.getSeverity()) { case CANCEL: { IProvisioningPlan plan = engine.createPlan(profile, context); plan.setStatus(s); return plan; if (s.getCode() != UNSATISFIABLE || (context != null && !(context.getProperty(EXPLANATION) == null || Boolean.parseBoolean(context.getProperty(EXPLANATION))))) { IProvisioningPlan plan = engine.createPlan(profile, context); plan.setStatus(s); return plan; new RequestStatus(null, REMOVED, ERROR, explanation), requestChanges, requestSideEffects, null); IProvisioningPlan plan = engine.createPlan(profile, context); plan.setStatus(plannerStatus); return plan;
context.setMetadataRepositories(repositories); context.setArtifactRepositories(getArtifactRepositories(target)); IProvisioningPlan plan = engine.createPlan(fProfile, context); setPlanProperties(plan, target, TargetDefinitionPersistenceHelper.MODE_SLICER); IStatus result = engine.perform(plan, phases, subMonitor.split(50)); if (!result.isOK()) { throw new CoreException(result);
Messages.Planner_actions_and_software_incompatible, null); agentStatus.add(((IProvisioningPlan) agentSolution).getStatus()); IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); plan.setStatus(agentStatus); IProvisioningPlan installerPlan = engine.createPlan(initialRequest.getProfile(), initialContext); installerPlan.setStatus(agentStatus); plan.setInstallerPlan(installerPlan);
null); externalInstallerStatus.add(((IProvisioningPlan) externalInstallerPlan).getStatus()); IProvisioningPlan plan = engine.createPlan(initialRequest.getProfile(), initialContext); plan.setStatus(externalInstallerStatus); IProvisioningPlan installerPlan = engine.createPlan(agentProfile, initialContext); installerPlan.setStatus(externalInstallerStatus); plan.setInstallerPlan(installerPlan);