Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 174473 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/mylyn/internal/trac/ui/TracConnectorUi.java (-1 / +6 lines)
Lines 123-130 Link Here
123
		TracTask task = new TracTask("", Kind.TASK.name(), Kind.TASK.toString());
123
		TracTask task = new TracTask("", Kind.TASK.name(), Kind.TASK.toString());
124
		task.setTaskKind(Kind.TASK.toString());
124
		task.setTaskKind(Kind.TASK.toString());
125
		legendItems.add(task);
125
		legendItems.add(task);
126
		
126
127
		return legendItems;
127
		return legendItems;
128
	}
128
	}
129
129
130
	@Override
131
	public WizardPage getRepositoryPage(TaskRepository repository) {
132
		return new TracCustomQueryPage(repository);
133
	}
134
130
}
135
}
(-)src/org/eclipse/mylyn/internal/web/tasks/WebConnectorUi.java (+6 lines)
Lines 10-15 Link Here
10
10
11
import org.eclipse.jface.resource.ImageDescriptor;
11
import org.eclipse.jface.resource.ImageDescriptor;
12
import org.eclipse.jface.wizard.IWizard;
12
import org.eclipse.jface.wizard.IWizard;
13
import org.eclipse.jface.wizard.WizardPage;
13
import org.eclipse.mylyn.internal.tasks.core.LocalTask;
14
import org.eclipse.mylyn.internal.tasks.core.LocalTask;
14
import org.eclipse.mylyn.internal.tasks.ui.TasksUiImages;
15
import org.eclipse.mylyn.internal.tasks.ui.TasksUiImages;
15
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
16
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
Lines 67-70 Link Here
67
	public boolean hasSearchPage() {
68
	public boolean hasSearchPage() {
68
		return false;
69
		return false;
69
	}
70
	}
71
72
	@Override
73
	public WizardPage getRepositoryPage(TaskRepository repository) {
74
		return new WebQueryWizardPage(repository);
75
	}
70
}
76
}
(-)src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaConnectorUi.java (+6 lines)
Lines 19-24 Link Here
19
import org.eclipse.jface.text.hyperlink.IHyperlink;
19
import org.eclipse.jface.text.hyperlink.IHyperlink;
20
import org.eclipse.jface.viewers.IStructuredSelection;
20
import org.eclipse.jface.viewers.IStructuredSelection;
21
import org.eclipse.jface.wizard.IWizard;
21
import org.eclipse.jface.wizard.IWizard;
22
import org.eclipse.jface.wizard.WizardPage;
22
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaCorePlugin;
23
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaCorePlugin;
23
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaReportElement;
24
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaReportElement;
24
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaRepositoryQuery;
25
import org.eclipse.mylyn.internal.bugzilla.core.BugzillaRepositoryQuery;
Lines 213-216 Link Here
213
		return super.supportsDueDates(task);
214
		return super.supportsDueDates(task);
214
	}
215
	}
215
216
217
	@Override
218
	public WizardPage getRepositoryPage(TaskRepository repository) {
219
		return new BugzillaQueryTypeWizardPage(repository);
220
	}
221
216
}
222
}
(-)src/org/eclipse/mylyn/tasks/ui/AbstractRepositoryConnectorUi.java (+2 lines)
Lines 65-70 Link Here
65
	 *            can be null
65
	 *            can be null
66
	 */
66
	 */
67
	public abstract IWizard getQueryWizard(TaskRepository repository, AbstractRepositoryQuery queryToEdit);
67
	public abstract IWizard getQueryWizard(TaskRepository repository, AbstractRepositoryQuery queryToEdit);
68
	
69
	public abstract WizardPage getRepositoryPage(TaskRepository repository);
68
70
69
	public abstract IWizard getNewTaskWizard(TaskRepository taskRepository);
71
	public abstract IWizard getNewTaskWizard(TaskRepository taskRepository);
70
72
(-)src/org/eclipse/mylyn/internal/tasks/ui/wizards/NewRepositoryWizard.java (-2 / +59 lines)
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
}
(-)src/org/eclipse/mylyn/internal/tasks/ui/LocalTaskConnectorUi.java (+6 lines)
Lines 9-14 Link Here
9
package org.eclipse.mylyn.internal.tasks.ui;
9
package org.eclipse.mylyn.internal.tasks.ui;
10
10
11
import org.eclipse.jface.wizard.IWizard;
11
import org.eclipse.jface.wizard.IWizard;
12
import org.eclipse.jface.wizard.WizardPage;
12
import org.eclipse.mylyn.internal.tasks.core.LocalRepositoryConnector;
13
import org.eclipse.mylyn.internal.tasks.core.LocalRepositoryConnector;
13
import org.eclipse.mylyn.internal.tasks.ui.wizards.NewLocalTaskWizard;
14
import org.eclipse.mylyn.internal.tasks.ui.wizards.NewLocalTaskWizard;
14
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
15
import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery;
Lines 46-49 Link Here
46
		return false;
47
		return false;
47
	}
48
	}
48
49
50
	@Override
51
	public WizardPage getRepositoryPage(TaskRepository repository) {
52
		return null;
53
	}
54
49
}
55
}
(-)src/org/eclipse/mylyn/tasks/ui/wizards/AbstractRepositorySettingsPage.java (+18 lines)
Lines 22-27 Link Here
22
import org.eclipse.jface.operation.IRunnableWithProgress;
22
import org.eclipse.jface.operation.IRunnableWithProgress;
23
import org.eclipse.jface.preference.PreferenceDialog;
23
import org.eclipse.jface.preference.PreferenceDialog;
24
import org.eclipse.jface.preference.StringFieldEditor;
24
import org.eclipse.jface.preference.StringFieldEditor;
25
import org.eclipse.jface.wizard.IWizardPage;
25
import org.eclipse.jface.wizard.WizardPage;
26
import org.eclipse.jface.wizard.WizardPage;
26
import org.eclipse.mylyn.internal.tasks.core.IRepositoryConstants;
27
import org.eclipse.mylyn.internal.tasks.core.IRepositoryConstants;
27
import org.eclipse.mylyn.monitor.core.StatusHandler;
28
import org.eclipse.mylyn.monitor.core.StatusHandler;
Lines 186-191 Link Here
186
187
187
	private Hyperlink manageAccountHyperlink;
188
	private Hyperlink manageAccountHyperlink;
188
189
190
	private IWizardPage repositoryPage;
191
189
	public AbstractRepositorySettingsPage(String title, String description, AbstractRepositoryConnectorUi repositoryUi) {
192
	public AbstractRepositorySettingsPage(String title, String description, AbstractRepositoryConnectorUi repositoryUi) {
190
		super(title);
193
		super(title);
191
		super.setTitle(title);
194
		super.setTitle(title);
Lines 1299-1302 Link Here
1299
1302
1300
	}
1303
	}
1301
1304
1305
	@Override
1306
	public IWizardPage getNextPage() {
1307
		if (isPageComplete()) {
1308
			AbstractRepositoryConnectorUi connectorUi = TasksUiPlugin.getConnectorUi(connector.getConnectorKind());
1309
			repositoryPage = connectorUi.getRepositoryPage(createTaskRepository());
1310
			repositoryPage.setWizard(getWizard());
1311
			return repositoryPage;
1312
		}
1313
		return super.getNextPage();
1314
	}
1315
1316
	public IWizardPage getRepositoryPage() {
1317
		return repositoryPage;
1318
	}
1319
1302
}
1320
}
(-)src/org/eclipse/mylyn/internal/jira/ui/JiraConnectorUi.java (+6 lines)
Lines 19-24 Link Here
19
import org.eclipse.jface.wizard.WizardPage;
19
import org.eclipse.jface.wizard.WizardPage;
20
import org.eclipse.mylyn.internal.jira.ui.wizards.EditJiraQueryWizard;
20
import org.eclipse.mylyn.internal.jira.ui.wizards.EditJiraQueryWizard;
21
import org.eclipse.mylyn.internal.jira.ui.wizards.JiraQueryPage;
21
import org.eclipse.mylyn.internal.jira.ui.wizards.JiraQueryPage;
22
import org.eclipse.mylyn.internal.jira.ui.wizards.JiraQueryWizardPage;
22
import org.eclipse.mylyn.internal.jira.ui.wizards.JiraRepositorySettingsPage;
23
import org.eclipse.mylyn.internal.jira.ui.wizards.JiraRepositorySettingsPage;
23
import org.eclipse.mylyn.internal.jira.ui.wizards.NewJiraQueryWizard;
24
import org.eclipse.mylyn.internal.jira.ui.wizards.NewJiraQueryWizard;
24
import org.eclipse.mylyn.internal.jira.ui.wizards.NewJiraTaskWizard;
25
import org.eclipse.mylyn.internal.jira.ui.wizards.NewJiraTaskWizard;
Lines 156-159 Link Here
156
		return links;
157
		return links;
157
	}
158
	}
158
159
160
	@Override
161
	public WizardPage getRepositoryPage(TaskRepository repository) {
162
		return new JiraQueryWizardPage(repository);
163
	}
164
159
}
165
}

Return to bug 174473