private ProvisioningPlan getUpdatesInternal(Collection<ProducerSpec> producers) throws ProvisioningException { final ProvisioningPlan plan = ProvisioningPlan.builder(); updatesTracker = getUpdatesTracker(); updatesTracker.starting(producers.size()); for(ProducerSpec producer : producers) { updatesTracker.processing(producer); final FeaturePackUpdatePlan fpPlan = getFeaturePackUpdate(producer); if(!fpPlan.isEmpty()) { plan.update(fpPlan); } updatesTracker.processed(producer); } updatesTracker.complete(); return plan; }
@Override public void processed(ProgressTracker<T> tracker) { processedItems.add(tracker.getItem()); }
@Override public void pulse(ProgressTracker<Long> tracker) { System.out.println(String.format(" %s of %s (%s%%), %sms", tracker.getProcessedVolume(), tracker.getTotalVolume(), Math.round(tracker.getProgress()), tracker.getLastPulseInterval())); } @Override
@Override public String processingContent(ProgressTracker<PackageRuntime> tracker) { return String.format("%s of %s (%s%%)", tracker.getProcessedVolume(), tracker.getTotalVolume(), ((double) Math.round(tracker.getProgress() * 10)) / 10); }
private static <T> void doProcess(ProgressTracker<T> tracker, TrackedProcessor processor, Iterable<T> i) throws Exception { for(T o : i) { tracker.processing(o); processor.process(o); tracker.processed(o); } tracker.complete(); }
buildTracker.processing(fpl.getFPID()); fp = layoutFactory.resolveFeaturePack(fpl, type, fpFactory); buildTracker.processed(fpl.getFPID()); featurePacks.put(fpl.getProducer(), fp);
@Override public void pulse(ProgressTracker<T> tracker) { for (int i = processedVolume; i < tracker.getProcessedVolume(); ++i) { recap(tracker, i + 1, processedItems.get(i)); } processedVolume = (int) tracker.getProcessedVolume(); doPulse(tracker); }
tracker.processing(loc.getFPID());
@Override public String processingContent(ProgressTracker<PackageRuntime> tracker) { return String.format("%s of %s (%s%%)", tracker.getProcessedVolume(), tracker.getTotalVolume(), ((double) Math.round(tracker.getProgress() * 10)) / 10); }
@Override public void complete(ProgressTracker<T> tracker) { if(processedVolume > 0 && processedVolume < tracker.getProcessedVolume()) { while (processedVolume < tracker.getProcessedVolume()) { recap(tracker, processedVolume + 1, processedItems.get(processedVolume++)); } } processedItems.clear(); processedVolume = 0; doComplete(tracker); }
@Override protected String processingContent(ProgressTracker<ProducerSpec> tracker) { return session.getExposedLocation(null, tracker.getItem().getLocation()).toString(); }
@Override protected String processingContent(ProgressTracker<FPID> tracker) { return session.getExposedLocation(null, tracker.getItem().getLocation()).toString(); }
@Override protected String processingContent(ProgressTracker<FPID> tracker) { return session.getExposedLocation(null, tracker.getItem().getLocation()).toString(); }