/******************************************************************************* * Copyright (c) 2011 GitHub Inc. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Kevin Sawicki (GitHub Inc.) - initial API and implementation * Robin Stocker *******************************************************************************/ package org.eclipse.egit.ui.internal.history.command; import java.util.List; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; import org.eclipse.egit.ui.Activator; import org.eclipse.egit.ui.internal.commit.CommitEditor; import org.eclipse.egit.ui.internal.commit.RepositoryCommit; import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.revwalk.RevCommit; import org.eclipse.ui.PartInitException; /** * Opens a {@link RevCommit} in the commit editor */ public class OpenInCommitViewerHandler extends AbstractHistoryCommandHandler { @Override public Object execute(ExecutionEvent event) throws ExecutionException { Repository repository = getRepository(event); List<RevCommit> commits = getSelectedCommits(event); for (RevCommit commit : commits) { try { CommitEditor.open(new RepositoryCommit(repository, commit)); } catch (PartInitException e) { Activator.showError("Error opening commit viewer", e); //$NON-NLS-1$ } } return null; } }