diff options
author | relves | 2009-02-16 16:40:45 +0000 |
---|---|---|
committer | relves | 2009-02-16 16:40:45 +0000 |
commit | 7a489ae77080fe81942aac26eec977fb7cd8b197 (patch) | |
tree | 7affb12d0a6df895a7e6cd7b9443a40da34df499 | |
parent | 8f9360253b55ab220cb2ab27e3fe9e43cdb8e638 (diff) | |
download | org.eclipse.mylyn.tasks-7a489ae77080fe81942aac26eec977fb7cd8b197.tar.gz org.eclipse.mylyn.tasks-7a489ae77080fe81942aac26eec977fb7cd8b197.tar.xz org.eclipse.mylyn.tasks-7a489ae77080fe81942aac26eec977fb7cd8b197.zip |
263318: [m3.0.5] Fix for Bugzilla (BMO) bug 26257 Breaks Mylyn
https://bugs.eclipse.org/bugs/show_bug.cgi?id=263318
6 files changed, 23 insertions, 2 deletions
diff --git a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaClient.java b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaClient.java index 5508de802..3bd775d92 100644 --- a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaClient.java +++ b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaClient.java @@ -1353,6 +1353,17 @@ public class BugzillaClient { } found = false; for (Iterator<String> iterator = bugzillaLanguageSettings.getResponseForCommand( + BugzillaLanguageSettings.COMMAND_SUSPICIOUS_ACTION).iterator(); iterator.hasNext() + && !found;) { + String value = iterator.next().toLowerCase(Locale.ENGLISH); + found = found || title.indexOf(value) != -1; + } + if (found) { + throw new CoreException(new BugzillaStatus(IStatus.ERROR, BugzillaCorePlugin.ID_PLUGIN, + RepositoryStatus.REPOSITORY_SUSPICIOUS_ACTION)); + } + found = false; + for (Iterator<String> iterator = bugzillaLanguageSettings.getResponseForCommand( BugzillaLanguageSettings.COMMAND_ERROR_LOGGED_OUT).iterator(); iterator.hasNext() && !found;) { String value = iterator.next().toLowerCase(Locale.ENGLISH); diff --git a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaLanguageSettings.java b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaLanguageSettings.java index c70bf2c47..4b3dcdbcb 100644 --- a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaLanguageSettings.java +++ b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaLanguageSettings.java @@ -35,6 +35,8 @@ public class BugzillaLanguageSettings { public static final String COMMAND_ERROR_LOGGED_OUT = "error_logged_out"; + public static final String COMMAND_SUSPICIOUS_ACTION = "suspicious_action"; + public static final String COMMAND_BAD_LOGIN = "bad_login"; public static final String COMMAND_PROCESSED = "processed"; diff --git a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaRepositoryConnector.java b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaRepositoryConnector.java index 6174dcd85..31f629252 100644 --- a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaRepositoryConnector.java +++ b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaRepositoryConnector.java @@ -393,6 +393,8 @@ public class BugzillaRepositoryConnector extends AbstractRepositoryConnector { enSetting.addLanguageAttribute("bad_login", "error"); enSetting.addLanguageAttribute("processed", "processed"); enSetting.addLanguageAttribute("changes_submitted", "Changes submitted"); + enSetting.addLanguageAttribute("changes_submitted", "added to Bug"); + enSetting.addLanguageAttribute("suspicious_action", "Suspicious action"); languages.add(enSetting); } diff --git a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaTaskDataHandler.java b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaTaskDataHandler.java index 766a3a8b1..aae69b467 100644 --- a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaTaskDataHandler.java +++ b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaTaskDataHandler.java @@ -256,6 +256,9 @@ public class BugzillaTaskDataHandler extends AbstractTaskDataHandler { // TODO: Move retry handling into client if (e.getStatus().getCode() == RepositoryStatus.ERROR_REPOSITORY_LOGIN) { return client.postTaskData(taskData, monitor); + } else if (e.getStatus().getCode() == RepositoryStatus.REPOSITORY_SUSPICIOUS_ACTION) { + taskData.getRoot().removeAttribute(BugzillaAttribute.TOKEN.getKey()); + return client.postTaskData(taskData, monitor); } else { throw e; } diff --git a/org.eclipse.mylyn.bugzilla.ui/plugin.xml b/org.eclipse.mylyn.bugzilla.ui/plugin.xml index 176eabe7c..b7ffe1b35 100644 --- a/org.eclipse.mylyn.bugzilla.ui/plugin.xml +++ b/org.eclipse.mylyn.bugzilla.ui/plugin.xml @@ -54,7 +54,8 @@ <languageAttribute command="bad_login" response="Ungültiger Benutzername oder ungültiges Passwort"/> <languageAttribute command="bad_login" response="error"/> <languageAttribute command="processed" response="processed"/> - <languageAttribute command="changes_submitted" response="Changes submitted"/> + <languageAttribute command="changes_submitted" response="Changes submitted"/> + <languageAttribute command="suspicious_action" response="Suspicious action"/> </language> </extension> diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/RepositoryStatus.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/RepositoryStatus.java index 0fb97d114..2791035d1 100644 --- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/RepositoryStatus.java +++ b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/tasks/core/RepositoryStatus.java @@ -1,5 +1,5 @@ /******************************************************************************* -* Copyright (c) 2004, 2008 Tasktop Technologies and others. + * Copyright (c) 2004, 2008 Tasktop Technologies and others. * 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 @@ -47,6 +47,8 @@ public class RepositoryStatus extends Status { public final static int REPOSITORY_LOGGED_OUT = 10; + public final static int REPOSITORY_SUSPICIOUS_ACTION = 11; + public final static int ERROR_INTERNAL = 7; private String htmlMessage; |