Search in sources :

Example 1 with TagOpt

use of org.eclipse.jgit.transport.TagOpt in project egit by eclipse.

the class RefSpecPage method revalidateImpl.

private void revalidateImpl(final RepositorySelection newRepoSelection) {
    final ListRemoteOperation listRemotesOp;
    try {
        final URIish uri;
        uri = newRepoSelection.getURI(pushPage);
        int timeout = Activator.getDefault().getPreferenceStore().getInt(UIPreferences.REMOTE_CONNECTION_TIMEOUT);
        listRemotesOp = new ListRemoteOperation(local, uri, timeout);
        if (credentials != null)
            listRemotesOp.setCredentialsProvider(new EGitCredentialsProvider(credentials.getUser(), credentials.getPassword()));
        getContainer().run(true, true, new IRunnableWithProgress() {

            @Override
            public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
                listRemotesOp.run(monitor);
            }
        });
    } catch (InvocationTargetException e) {
        final Throwable cause = e.getCause();
        transportError(cause.getMessage());
        Activator.handleError(UIText.RefSpecPage_errorTransportDialogMessage, cause, true);
        return;
    } catch (InterruptedException e) {
        transportError(UIText.RefSpecPage_operationCancelled);
        return;
    }
    this.validatedRepoSelection = newRepoSelection;
    specsPanel.setAssistanceData(local, listRemotesOp.getRemoteRefs(), currentRepoSelection.getConfig());
    if (newRepoSelection.isConfigSelected()) {
        saveButton.setVisible(true);
        saveButton.setText(NLS.bind(UIText.RefSpecPage_saveSpecifications, currentRepoSelection.getConfigName()));
        saveButton.getParent().layout();
        if (!pushPage) {
            tagsAutoFollowButton.setSelection(false);
            tagsFetchTagsButton.setSelection(false);
            tagsNoTagsButton.setSelection(false);
            final TagOpt tagOpt = newRepoSelection.getConfig().getTagOpt();
            switch(tagOpt) {
                case AUTO_FOLLOW:
                    tagsAutoFollowButton.setSelection(true);
                    break;
                case FETCH_TAGS:
                    tagsFetchTagsButton.setSelection(true);
                    break;
                case NO_TAGS:
                    tagsNoTagsButton.setSelection(true);
                    break;
            }
        }
    } else if (!pushPage)
        tagsAutoFollowButton.setSelection(true);
    checkPage();
}
Also used : URIish(org.eclipse.jgit.transport.URIish) ListRemoteOperation(org.eclipse.egit.core.op.ListRemoteOperation) IProgressMonitor(org.eclipse.core.runtime.IProgressMonitor) TagOpt(org.eclipse.jgit.transport.TagOpt) EGitCredentialsProvider(org.eclipse.egit.ui.internal.credentials.EGitCredentialsProvider) InvocationTargetException(java.lang.reflect.InvocationTargetException) IRunnableWithProgress(org.eclipse.jface.operation.IRunnableWithProgress)

Aggregations

InvocationTargetException (java.lang.reflect.InvocationTargetException)1 IProgressMonitor (org.eclipse.core.runtime.IProgressMonitor)1 ListRemoteOperation (org.eclipse.egit.core.op.ListRemoteOperation)1 EGitCredentialsProvider (org.eclipse.egit.ui.internal.credentials.EGitCredentialsProvider)1 IRunnableWithProgress (org.eclipse.jface.operation.IRunnableWithProgress)1 TagOpt (org.eclipse.jgit.transport.TagOpt)1 URIish (org.eclipse.jgit.transport.URIish)1