|
Lines 8-19
Link Here
|
| 8 |
|
8 |
|
| 9 |
package org.eclipse.mylyn.internal.tasks.ui.wizards; |
9 |
package org.eclipse.mylyn.internal.tasks.ui.wizards; |
| 10 |
|
10 |
|
|
|
11 |
import org.eclipse.core.runtime.CoreException; |
| 12 |
import org.eclipse.core.runtime.IProgressMonitor; |
| 11 |
import org.eclipse.jface.viewers.IStructuredSelection; |
13 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
|
14 |
import org.eclipse.jface.wizard.IWizardPage; |
| 12 |
import org.eclipse.mylyn.internal.tasks.ui.actions.AddRepositoryAction; |
15 |
import org.eclipse.mylyn.internal.tasks.ui.actions.AddRepositoryAction; |
|
|
16 |
import org.eclipse.mylyn.monitor.core.StatusHandler; |
| 17 |
import org.eclipse.mylyn.tasks.core.AbstractRepositoryConnector; |
| 18 |
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery; |
| 13 |
import org.eclipse.mylyn.tasks.core.TaskRepository; |
19 |
import org.eclipse.mylyn.tasks.core.TaskRepository; |
| 14 |
import org.eclipse.mylyn.tasks.ui.TasksUiPlugin; |
20 |
import org.eclipse.mylyn.tasks.ui.TasksUiPlugin; |
|
|
21 |
import org.eclipse.mylyn.tasks.ui.search.AbstractRepositoryQueryPage; |
| 15 |
import org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositorySettingsPage; |
22 |
import org.eclipse.mylyn.tasks.ui.wizards.AbstractRepositorySettingsPage; |
| 16 |
import org.eclipse.ui.IWorkbench; |
23 |
import org.eclipse.ui.IWorkbench; |
|
|
24 |
import org.eclipse.ui.actions.WorkspaceModifyOperation; |
| 17 |
|
25 |
|
| 18 |
/** |
26 |
/** |
| 19 |
* @author Mik Kersten |
27 |
* @author Mik Kersten |
|
Lines 38-43
Link Here
|
| 38 |
abstractRepositorySettingsPage.updateProperties(repository); |
46 |
abstractRepositorySettingsPage.updateProperties(repository); |
| 39 |
TasksUiPlugin.getRepositoryManager().addRepository(repository, |
47 |
TasksUiPlugin.getRepositoryManager().addRepository(repository, |
| 40 |
TasksUiPlugin.getDefault().getRepositoriesFilePath()); |
48 |
TasksUiPlugin.getDefault().getRepositoriesFilePath()); |
|
|
49 |
|
| 50 |
try { |
| 51 |
IWizardPage wizardPage = abstractRepositorySettingsPage.getRepositoryPage(); |
| 52 |
|
| 53 |
String connectorKind = repository.getConnectorKind(); |
| 54 |
if (connectorKind.equals("bugzilla")) |
| 55 |
wizardPage = wizardPage.getNextPage(); |
| 56 |
|
| 57 |
if (wizardPage != null && wizardPage instanceof AbstractRepositoryQueryPage) { |
| 58 |
AbstractRepositoryQueryPage queryPage = (AbstractRepositoryQueryPage) wizardPage; |
| 59 |
|
| 60 |
final AbstractRepositoryQuery query = queryPage.getQuery(); |
| 61 |
|
| 62 |
TasksUiPlugin.getTaskListManager().getTaskList().addQuery(query); |
| 63 |
|
| 64 |
WorkspaceModifyOperation op = new WorkspaceModifyOperation() { |
| 65 |
@Override |
| 66 |
protected void execute(IProgressMonitor monitor) throws CoreException { |
| 67 |
monitor.beginTask("Executing query", 50); |
| 68 |
try { |
| 69 |
AbstractRepositoryConnector connector = TasksUiPlugin.getRepositoryManager() |
| 70 |
.getRepositoryConnector(query.getRepositoryKind()); |
| 71 |
TasksUiPlugin.getSynchronizationManager().synchronize(connector, query, null, true); |
| 72 |
} finally { |
| 73 |
monitor.done(); |
| 74 |
} |
| 75 |
} |
| 76 |
}; |
| 77 |
|
| 78 |
try { |
| 79 |
getContainer().run(true, false, op); |
| 80 |
} catch (Exception e) { |
| 81 |
StatusHandler.log(e, "There was a problem executing the query refresh"); |
| 82 |
} |
| 83 |
} |
| 84 |
} catch (Exception e) { |
| 85 |
e.printStackTrace(); |
| 86 |
return true; |
| 87 |
} |
| 88 |
|
| 41 |
return true; |
89 |
return true; |
| 42 |
} |
90 |
} |
| 43 |
return false; |
91 |
return false; |
|
Lines 53-59
Link Here
|
| 53 |
|
101 |
|
| 54 |
@Override |
102 |
@Override |
| 55 |
public boolean canFinish() { |
103 |
public boolean canFinish() { |
| 56 |
return super.canFinish() && abstractRepositorySettingsPage != null |
104 |
|
| 57 |
&& abstractRepositorySettingsPage.isPageComplete(); |
105 |
try { |
|
|
106 |
IWizardPage wizardPage = abstractRepositorySettingsPage.getRepositoryPage(); |
| 107 |
if (wizardPage.getNextPage() != null) |
| 108 |
return wizardPage.getNextPage().isPageComplete(); |
| 109 |
else |
| 110 |
return wizardPage.isPageComplete(); |
| 111 |
} catch (Exception e) { |
| 112 |
return super.canFinish() && abstractRepositorySettingsPage != null |
| 113 |
&& abstractRepositorySettingsPage.isPageComplete(); |
| 114 |
} |
| 58 |
} |
115 |
} |
| 59 |
} |
116 |
} |