Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/PersonProposalProvider.java')
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/PersonProposalProvider.java31
1 files changed, 23 insertions, 8 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/PersonProposalProvider.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/PersonProposalProvider.java
index c3bbd5316..74388c4bb 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/PersonProposalProvider.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/PersonProposalProvider.java
@@ -46,6 +46,7 @@ import org.eclipse.osgi.util.NLS;
* @author David Shepherd
* @author Sam Davis
* @author Thomas Ehrnhoefer
+ * @author Mike Wu
*/
public class PersonProposalProvider implements IContentProposalProvider {
@@ -207,8 +208,15 @@ public class PersonProposalProvider implements IContentProposalProvider {
});
if (proposals.size() > 0) {
+ String user = null;
+ if (repositoryUrl != null && connectorKind != null) {
+ user = getCurrentUser(repositoryUrl, connectorKind);
+ }
for (String proposal : proposals.keySet()) {
addAddress(addressSet, proposal);
+ if (user != null && user.equals(proposal)) {
+ currentUser = user;
+ }
}
return addressSet;
}
@@ -227,14 +235,9 @@ public class PersonProposalProvider implements IContentProposalProvider {
tasks.add(currentTask);
}
- TaskRepository repository = TasksUi.getRepositoryManager().getRepository(connectorKind, repositoryUrl);
-
- if (repository != null) {
- AuthenticationCredentials credentials = repository.getCredentials(AuthenticationType.REPOSITORY);
- if (credentials != null && credentials.getUserName().length() > 0) {
- currentUser = credentials.getUserName();
- addressSet.add(currentUser);
- }
+ currentUser = getCurrentUser(repositoryUrl, connectorKind);
+ if (currentUser != null) {
+ addressSet.add(currentUser);
}
Collection<AbstractTask> allTasks = TasksUiPlugin.getTaskList().getAllTasks();
@@ -252,6 +255,18 @@ public class PersonProposalProvider implements IContentProposalProvider {
return addressSet;
}
+ private String getCurrentUser(String repositoryUrl, String connectorKind) {
+ TaskRepository repository = TasksUi.getRepositoryManager().getRepository(connectorKind, repositoryUrl);
+
+ if (repository != null) {
+ AuthenticationCredentials credentials = repository.getCredentials(AuthenticationType.REPOSITORY);
+ if (credentials != null && credentials.getUserName().length() > 0) {
+ return credentials.getUserName();
+ }
+ }
+ return null;
+ }
+
private void addAddresses(ITask task, Set<String> addressSet) {
addAddress(addressSet, task.getOwner());
}

Back to the top