Example usage for org.eclipse.jgit.transport Transport setTimeout

List of usage examples for org.eclipse.jgit.transport Transport setTimeout

Introduction

In this page you can find the example usage for org.eclipse.jgit.transport Transport setTimeout.

Prototype

public void setTimeout(int seconds) 

Source Link

Document

Set the timeout before willing to abort an IO call.

Usage

From source file:jetbrains.buildServer.buildTriggers.vcs.git.TransportFactoryImpl.java

License:Apache License

public Transport createTransport(@NotNull final Repository r, @NotNull final URIish url,
        @NotNull final AuthSettings authSettings, final int timeoutSeconds)
        throws NotSupportedException, VcsException {
    try {//from w ww.jav a2s. c om
        checkUrl(url);
        URIish preparedURI = prepareURI(url);
        final Transport t = Transport.open(r, preparedURI);
        t.setCredentialsProvider(authSettings.toCredentialsProvider());
        if (t instanceof SshTransport) {
            SshTransport ssh = (SshTransport) t;
            ssh.setSshSessionFactory(getSshSessionFactory(authSettings, url));
        }
        t.setTimeout(timeoutSeconds);
        return t;
    } catch (TransportException e) {
        throw new VcsException("Cannot create transport", e);
    }
}

From source file:org.eclipse.egit.core.op.CloneOperation.java

License:Open Source License

private void doFetch(final IProgressMonitor monitor) throws NotSupportedException, TransportException {
    final Transport tn = Transport.open(local, remoteConfig);
    if (credentialsProvider != null)
        tn.setCredentialsProvider(credentialsProvider);
    tn.setTimeout(this.timeout);
    try {//from   w  w  w.ja v a 2s.c o m
        final EclipseGitProgressTransformer pm;
        pm = new EclipseGitProgressTransformer(monitor);
        fetchResult = tn.fetch(pm, null);
    } finally {
        tn.close();
    }
}

From source file:org.eclipse.egit.core.op.ListRemoteOperation.java

License:Open Source License

/**
 * @param pm//from   w w w. j  a  v a  2  s . c  o  m
 *            the monitor to be used for reporting progress and responding
 *            to cancellation. The monitor is never <code>null</code>
 * @throws InvocationTargetException
 * @throws InterruptedException
 */
public void run(IProgressMonitor pm) throws InvocationTargetException, InterruptedException {
    Transport transport = null;
    Connection connection = null;
    try {
        transport = Transport.open(localDb, uri);
        if (credentialsProvider != null)
            transport.setCredentialsProvider(credentialsProvider);
        transport.setTimeout(this.timeout);

        if (pm != null)
            pm.beginTask(CoreText.ListRemoteOperation_title, IProgressMonitor.UNKNOWN);
        connection = transport.openFetch();
        remoteRefsMap = connection.getRefsMap();
    } catch (NotSupportedException e) {
        throw new InvocationTargetException(e);
    } catch (TransportException e) {
        throw new InvocationTargetException(e);
    } finally {
        if (connection != null)
            connection.close();
        if (transport != null)
            transport.close();
        if (pm != null)
            pm.done();
    }
}

From source file:org.eclipse.egit.core.op.PushOperation.java

License:Open Source License

/**
 * Execute operation and store result. Operation is executed independently
 * on each remote repository./* w w  w . ja v a  2s  . c  om*/
 * <p>
 *
 * @param actMonitor
 *            the monitor to be used for reporting progress and responding
 *            to cancellation. The monitor is never <code>null</code>
 *
 * @throws InvocationTargetException
 *             Cause of this exceptions may include
 *             {@link TransportException}, {@link NotSupportedException} or
 *             some unexpected {@link RuntimeException}.
 */
public void run(IProgressMonitor actMonitor) throws InvocationTargetException {

    if (operationResult != null)
        throw new IllegalStateException(CoreText.OperationAlreadyExecuted);

    for (URIish uri : this.specification.getURIs()) {
        for (RemoteRefUpdate update : this.specification.getRefUpdates(uri))
            if (update.getStatus() != Status.NOT_ATTEMPTED)
                throw new IllegalStateException(CoreText.RemoteRefUpdateCantBeReused);
    }
    IProgressMonitor monitor;
    if (actMonitor == null)
        monitor = new NullProgressMonitor();
    else
        monitor = actMonitor;

    final int totalWork = specification.getURIsNumber() * WORK_UNITS_PER_TRANSPORT;
    if (dryRun)
        monitor.beginTask(CoreText.PushOperation_taskNameDryRun, totalWork);
    else
        monitor.beginTask(CoreText.PushOperation_taskNameNormalRun, totalWork);

    operationResult = new PushOperationResult();

    for (final URIish uri : specification.getURIs()) {
        final SubProgressMonitor subMonitor = new SubProgressMonitor(monitor, WORK_UNITS_PER_TRANSPORT,
                SubProgressMonitor.PREPEND_MAIN_LABEL_TO_SUBTASK);
        Transport transport = null;
        try {
            if (monitor.isCanceled()) {
                operationResult.addOperationResult(uri, CoreText.PushOperation_resultCancelled);
                continue;
            }
            transport = Transport.open(localDb, uri);
            if (credentialsProvider != null)
                transport.setCredentialsProvider(credentialsProvider);
            transport.setTimeout(this.timeout);

            if (rc != null)
                transport.applyConfig(rc);
            transport.setDryRun(dryRun);
            final EclipseGitProgressTransformer gitSubMonitor = new EclipseGitProgressTransformer(subMonitor);
            final PushResult pr = transport.push(gitSubMonitor, specification.getRefUpdates(uri));
            operationResult.addOperationResult(uri, pr);
            monitor.worked(WORK_UNITS_PER_TRANSPORT);
        } catch (final NoRemoteRepositoryException e) {
            operationResult.addOperationResult(uri,
                    NLS.bind(CoreText.PushOperation_resultNoServiceError, e.getMessage()));
        } catch (final TransportException e) {
            operationResult.addOperationResult(uri,
                    NLS.bind(CoreText.PushOperation_resultTransportError, e.getMessage()));
        } catch (final NotSupportedException e) {
            operationResult.addOperationResult(uri,
                    NLS.bind(CoreText.PushOperation_resultNotSupported, e.getMessage()));
        } finally {
            if (transport != null) {
                transport.close();
            }
            // Dirty trick to get things always working.
            subMonitor.beginTask("", WORK_UNITS_PER_TRANSPORT); //$NON-NLS-1$
            subMonitor.done();
            subMonitor.done();
        }
    }
    monitor.done();
}

From source file:org.kuali.student.git.importer.JGitPushMain.java

License:Educational Community License

private static void configure(Transport transport, String username, String password) {

    if (username != null && password != null)
        transport.setCredentialsProvider(new UsernamePasswordCredentialsProvider(username, password));

    // wait 30 seconds
    transport.setTimeout(30);

}