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.cmd.ResultListBuilder; import com.perforce.p4java.server.IServer; import hudson.model.TaskListener; import java.util.ArrayList; import java.util.List; import java.util.Map; public class SyncStreamingCallback extends AbstractStreamingCallback { public SyncStreamingCallback(IServer iserver, TaskListener listener) { super(iserver, listener); } @Override public boolean handleResult(Map<String, Object> map, int key) throws P4JavaException { List<IFileSpec> specList = new ArrayList<IFileSpec>(); specList.add(ResultListBuilder.handleFileReturn(map, getServer())); try { getValidate().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) { setFail(); P4JavaException exception = new P4JavaException(e); setException(exception); // re-throw exception as AbortException is only used if !quiet throw exception; } return true; } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#3 | 22514 | Paul Allen | Raise Errors from StreamingCallbacks. | ||
#2 | 22349 | Paul Allen |
Parallel Sync using P4Java. Update to P4Java 2017.2; using RPC level parallel sync and threaded within the JVM. Native parallel sync no longer requires a 'p4d' binary. |
||
#1 | 18889 | Paul Allen |
Asynchronous sync operation. To avoid memory issues with very large sync operations. #review-18773 |