Browse Source

Send no-progress option with NullProgressMonitor.

The NullProgressMonitor does not report progress anywhere. Inform the
server not to send progress by enabling the no-progress capability.

Change-Id: Id18dbc754c814d1a5534a284c947030bf201c569
stable-3.1
Colby Ranger 11 years ago
parent
commit
69761dbcdd
  1. 11
      org.eclipse.jgit/src/org/eclipse/jgit/transport/BasePackFetchConnection.java

11
org.eclipse.jgit/src/org/eclipse/jgit/transport/BasePackFetchConnection.java

@ -63,6 +63,7 @@ import org.eclipse.jgit.lib.Config;
import org.eclipse.jgit.lib.Config.SectionParser; import org.eclipse.jgit.lib.Config.SectionParser;
import org.eclipse.jgit.lib.Constants; import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.MutableObjectId; import org.eclipse.jgit.lib.MutableObjectId;
import org.eclipse.jgit.lib.NullProgressMonitor;
import org.eclipse.jgit.lib.ObjectId; import org.eclipse.jgit.lib.ObjectId;
import org.eclipse.jgit.lib.ObjectInserter; import org.eclipse.jgit.lib.ObjectInserter;
import org.eclipse.jgit.lib.ProgressMonitor; import org.eclipse.jgit.lib.ProgressMonitor;
@ -221,6 +222,8 @@ public abstract class BasePackFetchConnection extends BasePackConnection
private boolean noDone; private boolean noDone;
private boolean noProgress;
private String lockMessage; private String lockMessage;
private PackLock packLock; private PackLock packLock;
@ -320,7 +323,9 @@ public abstract class BasePackFetchConnection extends BasePackConnection
* Execute common ancestor negotiation and fetch the objects. * Execute common ancestor negotiation and fetch the objects.
* *
* @param monitor * @param monitor
* progress monitor to receive status updates. * progress monitor to receive status updates. If the monitor is
* the {@link NullProgressMonitor#INSTANCE}, then the no-progress
* option enabled.
* @param want * @param want
* the advertised remote references the caller wants to fetch. * the advertised remote references the caller wants to fetch.
* @param have * @param have
@ -337,6 +342,8 @@ public abstract class BasePackFetchConnection extends BasePackConnection
final Collection<Ref> want, final Set<ObjectId> have, final Collection<Ref> want, final Set<ObjectId> have,
OutputStream outputStream) throws TransportException { OutputStream outputStream) throws TransportException {
try { try {
noProgress = monitor == NullProgressMonitor.INSTANCE;
markRefsAdvertised(); markRefsAdvertised();
markReachable(have, maxTimeWanted(want)); markReachable(have, maxTimeWanted(want));
@ -480,6 +487,8 @@ public abstract class BasePackFetchConnection extends BasePackConnection
private String enableCapabilities() throws TransportException { private String enableCapabilities() throws TransportException {
final StringBuilder line = new StringBuilder(); final StringBuilder line = new StringBuilder();
if (noProgress)
wantCapability(line, OPTION_NO_PROGRESS);
if (includeTags) if (includeTags)
includeTags = wantCapability(line, OPTION_INCLUDE_TAG); includeTags = wantCapability(line, OPTION_INCLUDE_TAG);
if (allowOfsDelta) if (allowOfsDelta)

Loading…
Cancel
Save