diff options
author | Kevin Sawicki | 2012-01-30 23:10:03 +0000 |
---|---|---|
committer | Gerrit Code Review @ Eclipse.org | 2012-01-30 23:10:03 +0000 |
commit | e7ed54b982c1c5e69de85d1d70a94c63e093864e (patch) | |
tree | b9a7ac7cbfb9fcc57388055c691477a89e1e3467 | |
parent | 319274e83d11e9b6ed8d8892cad25093bb7e0090 (diff) | |
parent | c1f3a09f0a9f9e59a433041bdc50def029c24fdb (diff) | |
download | egit-github-e7ed54b982c1c5e69de85d1d70a94c63e093864e.tar.gz egit-github-e7ed54b982c1c5e69de85d1d70a94c63e093864e.tar.xz egit-github-e7ed54b982c1c5e69de85d1d70a94c63e093864e.zip |
Merge "Add the RepositorySearchWizardPage to the EGit import wizard" into stable-1.3
-rw-r--r-- | org.eclipse.mylyn.github.ui/META-INF/MANIFEST.MF | 1 | ||||
-rw-r--r-- | org.eclipse.mylyn.github.ui/plugin.xml | 11 | ||||
-rw-r--r--[-rwxr-xr-x] | org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/RepositorySearchWizardPage.java | 26 |
3 files changed, 35 insertions, 3 deletions
diff --git a/org.eclipse.mylyn.github.ui/META-INF/MANIFEST.MF b/org.eclipse.mylyn.github.ui/META-INF/MANIFEST.MF index e9f08270..4a22e8ea 100644 --- a/org.eclipse.mylyn.github.ui/META-INF/MANIFEST.MF +++ b/org.eclipse.mylyn.github.ui/META-INF/MANIFEST.MF @@ -36,6 +36,7 @@ Import-Package: org.eclipse.egit.core;version="[1.3.0,1.4.0)", org.eclipse.egit.ui.internal.branch;version="[1.3.0,1.4.0)", org.eclipse.egit.ui.internal.commit;version="[1.3.0,1.4.0)", org.eclipse.egit.ui.internal.fetch;version="[1.3.0,1.4.0)", + org.eclipse.egit.ui.internal.provisional.wizards;version="[1.3.0,1.4.0)", org.eclipse.egit.ui.internal.pull;version="[1.3.0,1.4.0)", org.eclipse.jgit.errors;version="[1.3.0,1.4.0)", org.eclipse.jgit.lib;version="[1.3.0,1.4.0)", diff --git a/org.eclipse.mylyn.github.ui/plugin.xml b/org.eclipse.mylyn.github.ui/plugin.xml index 2dd024ea..724ec315 100644 --- a/org.eclipse.mylyn.github.ui/plugin.xml +++ b/org.eclipse.mylyn.github.ui/plugin.xml @@ -295,4 +295,15 @@ icon="platform:/plugin/org.eclipse.egit.ui/icons/obj16/rebase.gif"> </image> </extension> + <extension + point="org.eclipse.egit.ui.cloneSourceProvider"> + <source + hasFixLocation="true" + icon="icons/obj16/github.png" + label="%githubMenuLabel"> + </source> + <repositorySearchPage + class="org.eclipse.mylyn.internal.github.ui.RepositorySearchWizardPage"> + </repositorySearchPage> + </extension> </plugin> diff --git a/org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/RepositorySearchWizardPage.java b/org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/RepositorySearchWizardPage.java index 7fae81f4..fe92cf35 100755..100644 --- a/org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/RepositorySearchWizardPage.java +++ b/org.eclipse.mylyn.github.ui/src/org/eclipse/mylyn/internal/github/ui/RepositorySearchWizardPage.java @@ -18,12 +18,16 @@ import java.util.List; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.egit.github.core.Language; +import org.eclipse.egit.github.core.Repository; import org.eclipse.egit.github.core.SearchRepository; import org.eclipse.egit.github.core.client.GitHubClient; import org.eclipse.egit.github.core.client.IGitHubConstants; import org.eclipse.egit.github.core.service.RepositoryService; import org.eclipse.egit.github.core.util.UrlUtils; import org.eclipse.egit.ui.UIIcons; +import org.eclipse.egit.ui.internal.provisional.wizards.GitRepositoryInfo; +import org.eclipse.egit.ui.internal.provisional.wizards.IRepositorySearchResult; +import org.eclipse.egit.ui.internal.provisional.wizards.NoRepositoryInfoException; import org.eclipse.jface.layout.GridDataFactory; import org.eclipse.jface.layout.GridLayoutFactory; import org.eclipse.jface.operation.IRunnableWithProgress; @@ -39,6 +43,7 @@ import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.viewers.StyledString; import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.wizard.WizardPage; +import org.eclipse.mylyn.internal.github.core.GitHub; import org.eclipse.mylyn.internal.github.core.GitHubException; import org.eclipse.swt.SWT; import org.eclipse.swt.events.ModifyEvent; @@ -56,7 +61,8 @@ import org.eclipse.ui.PlatformUI; /** * Search for GitHub repositories wizard page. */ -public class RepositorySearchWizardPage extends WizardPage { +@SuppressWarnings("restriction") +public class RepositorySearchWizardPage extends WizardPage implements IRepositorySearchResult { private SearchRepository[] repositories = null; @@ -69,9 +75,9 @@ public class RepositorySearchWizardPage extends WizardPage { private Text searchText; /** - * + * */ - protected RepositorySearchWizardPage() { + public RepositorySearchWizardPage() { super("repoSearchPage", Messages.RepositorySearchWizardPage_Title, null); //$NON-NLS-1$ setDescription(Messages.RepositorySearchWizardPage_Description); setPageComplete(false); @@ -285,4 +291,18 @@ public class RepositorySearchWizardPage extends WizardPage { GitHubUi.logError(e); } } + + public GitRepositoryInfo getGitRepositoryInfo() throws NoRepositoryInfoException { + GitHubClient client = GitHub + .configureClient(new GitHubClient()); + RepositoryService service = new RepositoryService(client); + String cloneUrl = null; + try { + Repository fullRepo = service.getRepository(repositories[0]); + cloneUrl = fullRepo.getCloneUrl(); + } catch (IOException e) { + throw new NoRepositoryInfoException(e.getMessage(), e); + } + return new GitRepositoryInfo(cloneUrl); + } } |