package org.jenkinsci.plugins.p4.client; import com.perforce.p4java.core.file.IFileSpec; import com.perforce.p4java.exception.P4JavaException; import com.perforce.p4java.impl.mapbased.server.Server; import com.perforce.p4java.server.IServer; import com.perforce.p4java.server.callback.IStreamingCallback; import hudson.model.TaskListener; import java.util.ArrayList; import java.util.List; import java.util.Map; public class SyncStreamingCallback implements IStreamingCallback { private boolean done = false; private boolean fail = false; private final Server server; private final Validate validate; public SyncStreamingCallback(IServer iserver, TaskListener listener) { this.server = (Server) iserver; this.validate = new Validate(listener); } @Override public boolean startResults(int key) throws P4JavaException { return true; } @Override public boolean endResults(int key) throws P4JavaException { done = true; return true; } @Override public boolean handleResult(Map<String, Object> map, int key) throws P4JavaException { List<IFileSpec> specList = new ArrayList<IFileSpec>(); specList.add(server.handleFileReturn(map)); try { validate.check(specList, "file(s) up-to-date.", "file does not exist", "no file(s) as of that date", "no such file(s)", "Unexpected argument syntax - @"); } catch (Exception e) { fail = true; // re-throw exception as AbortException is only used if !quiet throw new P4JavaException(e); } return true; } public boolean isDone() { return done; } public boolean isFail() { return fail; } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#5 | 22348 | Paul Allen | Parallel Sync - graph support | ||
#4 | 22325 | Paul Allen | ReAdd 22116 - Enable P4Java parallel sync. | ||
#3 | 22126 | Paul Allen | Back out changelist 22116 - Parallel Sync (wait for p4java 17.2) | ||
#2 | 22116 | Paul Allen | Enable P4Java parallel sync. | ||
#1 | 21940 | Paul Allen | Branching using p4-jenkins | ||
//guest/perforce_software/p4jenkins/main/src/main/java/org/jenkinsci/plugins/p4/client/SyncStreamingCallback.java | |||||
#1 | 18889 | Paul Allen |
Asynchronous sync operation. To avoid memory issues with very large sync operations. #review-18773 |