diff --git a/colorSchemes/src/colorSchemes/Darcula.xml b/colorSchemes/src/colorSchemes/Darcula.xml
index c0004d57e3e2..654afa54e464 100644
--- a/colorSchemes/src/colorSchemes/Darcula.xml
+++ b/colorSchemes/src/colorSchemes/Darcula.xml
@@ -935,6 +935,7 @@
diff --git a/platform/lang-api/src/com/intellij/diagnostic/logging/LogConsolePreferences.java b/platform/lang-api/src/com/intellij/diagnostic/logging/LogConsolePreferences.java
index e0c35f455f6f..9070c4f3d7d9 100644
--- a/platform/lang-api/src/com/intellij/diagnostic/logging/LogConsolePreferences.java
+++ b/platform/lang-api/src/com/intellij/diagnostic/logging/LogConsolePreferences.java
@@ -90,12 +90,11 @@ public class LogConsolePreferences extends LogFilterRegistrar {
fireStateChanged();
}
-
- public boolean isApplicable(@NotNull String text, String prevType, boolean checkStandartFilters) {
+ public boolean isApplicable(@NotNull String text, String prevType, boolean checkStandardFilters) {
for (LogFilter filter : myRegisteredLogFilters.keySet()) {
if (myRegisteredLogFilters.get(filter).booleanValue() && !filter.isAcceptable(text)) return false;
}
- if (checkStandartFilters) {
+ if (checkStandardFilters) {
final String type = getType(text);
boolean selfTyped = false;
if (type != null) {
diff --git a/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java
index f505ff423e94..651ffc8ee015 100644
--- a/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java
+++ b/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2013 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -55,10 +55,12 @@ import com.intellij.psi.*;
import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil;
import com.intellij.psi.tree.IElementType;
import com.intellij.psi.util.PsiUtilBase;
+import com.intellij.ui.ColorUtil;
import com.intellij.util.Alarm;
import com.intellij.util.Processor;
import com.intellij.util.containers.WeakHashMap;
import com.intellij.util.text.CharArrayUtil;
+import com.intellij.util.ui.UIUtil;
import org.jetbrains.annotations.NotNull;
import java.awt.*;
@@ -413,7 +415,11 @@ public class BraceHighlightingHandler {
if (myProject.isDisposed() || myEditor.isDisposed()) return;
Color color = attributes.getBackgroundColor();
if (color == null) return;
- color = color.darker();
+ if (UIUtil.isUnderDarcula()) {
+ color = ColorUtil.shift(color, 1.1d);
+ } else {
+ color = color.darker();
+ }
lineMarkFragment(startLine, endLine, color);
}
};
diff --git a/platform/lang-impl/src/com/intellij/diagnostic/logging/DefaultLogFilterModel.java b/platform/lang-impl/src/com/intellij/diagnostic/logging/DefaultLogFilterModel.java
index c12d54c204b7..0e32371dea5f 100644
--- a/platform/lang-impl/src/com/intellij/diagnostic/logging/DefaultLogFilterModel.java
+++ b/platform/lang-impl/src/com/intellij/diagnostic/logging/DefaultLogFilterModel.java
@@ -30,7 +30,7 @@ import java.util.List;
*/
public class DefaultLogFilterModel extends LogFilterModel {
private final Project myProject;
- private boolean myCheckStandartFilters = true;
+ private boolean myCheckStandardFilters = true;
private String myPrevType = null;
public DefaultLogFilterModel(Project project) {
@@ -42,11 +42,11 @@ public class DefaultLogFilterModel extends LogFilterModel {
}
public boolean isCheckStandartFilters() {
- return myCheckStandartFilters;
+ return myCheckStandardFilters;
}
- public void setCheckStandartFilters(boolean checkStandartFilters) {
- myCheckStandartFilters = checkStandartFilters;
+ public void setCheckStandartFilters(boolean checkStandardFilters) {
+ myCheckStandardFilters = checkStandardFilters;
}
@Override
@@ -68,7 +68,7 @@ public class DefaultLogFilterModel extends LogFilterModel {
@Override
public boolean isApplicable(String line) {
if (!super.isApplicable(line)) return false;
- return getPreferences().isApplicable(line, myPrevType, myCheckStandartFilters);
+ return getPreferences().isApplicable(line, myPrevType, myCheckStandardFilters);
}
@Override
@@ -78,70 +78,70 @@ public class DefaultLogFilterModel extends LogFilterModel {
@Override
public List getLogFilters() {
- LogConsolePreferences prefs = getPreferences();
+ LogConsolePreferences preferences = getPreferences();
final ArrayList filters = new ArrayList();
- if (myCheckStandartFilters) {
- addStandartFilters(filters, prefs);
+ if (myCheckStandardFilters) {
+ addStandardFilters(filters, preferences);
}
- filters.addAll(prefs.getRegisteredLogFilters());
+ filters.addAll(preferences.getRegisteredLogFilters());
return filters;
}
- private void addStandartFilters(ArrayList filters, final LogConsolePreferences prefs) {
- filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.all"), prefs) {
+ private void addStandardFilters(ArrayList filters, final LogConsolePreferences preferences) {
+ filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.all"), preferences) {
@Override
public void selectFilter() {
- prefs.FILTER_ERRORS = false;
- prefs.FILTER_INFO = false;
- prefs.FILTER_WARNINGS = false;
- prefs.FILTER_DEBUG = false;
+ preferences.FILTER_ERRORS = false;
+ preferences.FILTER_INFO = false;
+ preferences.FILTER_WARNINGS = false;
+ preferences.FILTER_DEBUG = false;
}
@Override
public boolean isSelected() {
- return !prefs.FILTER_ERRORS && !prefs.FILTER_INFO && !prefs.FILTER_WARNINGS && !prefs.FILTER_DEBUG;
+ return !preferences.FILTER_ERRORS && !preferences.FILTER_INFO && !preferences.FILTER_WARNINGS && !preferences.FILTER_DEBUG;
}
});
- filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.errors.warnings.and.infos"), prefs) {
+ filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.errors.warnings.and.infos"), preferences) {
@Override
public void selectFilter() {
- prefs.FILTER_ERRORS = false;
- prefs.FILTER_INFO = false;
- prefs.FILTER_WARNINGS = false;
- prefs.FILTER_DEBUG = true;
+ preferences.FILTER_ERRORS = false;
+ preferences.FILTER_INFO = false;
+ preferences.FILTER_WARNINGS = false;
+ preferences.FILTER_DEBUG = true;
}
@Override
public boolean isSelected() {
- return !prefs.FILTER_ERRORS && !prefs.FILTER_INFO && !prefs.FILTER_WARNINGS && prefs.FILTER_DEBUG;
+ return !preferences.FILTER_ERRORS && !preferences.FILTER_INFO && !preferences.FILTER_WARNINGS && preferences.FILTER_DEBUG;
}
});
- filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.errors.and.warnings"), prefs) {
+ filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.errors.and.warnings"), preferences) {
@Override
public void selectFilter() {
- prefs.FILTER_ERRORS = false;
- prefs.FILTER_INFO = true;
- prefs.FILTER_WARNINGS = false;
- prefs.FILTER_DEBUG = true;
+ preferences.FILTER_ERRORS = false;
+ preferences.FILTER_INFO = true;
+ preferences.FILTER_WARNINGS = false;
+ preferences.FILTER_DEBUG = true;
}
@Override
public boolean isSelected() {
- return !prefs.FILTER_ERRORS && prefs.FILTER_INFO && !prefs.FILTER_WARNINGS && prefs.FILTER_DEBUG;
+ return !preferences.FILTER_ERRORS && preferences.FILTER_INFO && !preferences.FILTER_WARNINGS && preferences.FILTER_DEBUG;
}
});
- filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.errors"), prefs) {
+ filters.add(new MyFilter(DiagnosticBundle.message("log.console.filter.show.errors"), preferences) {
@Override
public void selectFilter() {
- prefs.FILTER_ERRORS = false;
- prefs.FILTER_INFO = true;
- prefs.FILTER_WARNINGS = true;
- prefs.FILTER_DEBUG = true;
+ preferences.FILTER_ERRORS = false;
+ preferences.FILTER_INFO = true;
+ preferences.FILTER_WARNINGS = true;
+ preferences.FILTER_DEBUG = true;
}
@Override
public boolean isSelected() {
- return !prefs.FILTER_ERRORS && prefs.FILTER_INFO && prefs.FILTER_WARNINGS && prefs.FILTER_DEBUG;
+ return !preferences.FILTER_ERRORS && preferences.FILTER_INFO && preferences.FILTER_WARNINGS && preferences.FILTER_DEBUG;
}
});
}
@@ -171,16 +171,16 @@ public class DefaultLogFilterModel extends LogFilterModel {
}
private abstract class MyFilter extends IndependentLogFilter {
- private final LogConsolePreferences myPrefs;
+ private final LogConsolePreferences myPreferences;
- protected MyFilter(String name, LogConsolePreferences prefs) {
+ protected MyFilter(String name, LogConsolePreferences preferences) {
super(name);
- myPrefs = prefs;
+ myPreferences = preferences;
}
@Override
public boolean isAcceptable(String line) {
- return myPrefs.isApplicable(line, myPrevType, myCheckStandartFilters);
+ return myPreferences.isApplicable(line, myPrevType, myCheckStandardFilters);
}
}
}
diff --git a/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleBase.java b/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleBase.java
index cb4c1a849fb6..c624914a4c11 100644
--- a/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleBase.java
+++ b/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleBase.java
@@ -50,6 +50,7 @@ import javax.swing.event.ChangeEvent;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import java.io.BufferedReader;
import java.io.IOException;
@@ -156,7 +157,7 @@ public abstract class LogConsoleBase extends AdditionalTabComponent implements L
myFilter.setSelectedItem(customFilter != null ? customFilter : "");
new AnAction() {
{
- registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.SHIFT_DOWN_MASK)),
+ registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, InputEvent.SHIFT_DOWN_MASK)),
LogConsoleBase.this);
}
diff --git a/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleImpl.java b/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleImpl.java
index 980b920064c5..5933634dfcbc 100644
--- a/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleImpl.java
+++ b/platform/lang-impl/src/com/intellij/diagnostic/logging/LogConsoleImpl.java
@@ -75,13 +75,13 @@ public abstract class LogConsoleImpl extends LogConsoleBase {
inputStream.skip(skippedContents);
}
}
- catch (FileNotFoundException e) {
+ catch (FileNotFoundException ignored) {
if (FileUtil.createIfDoesntExist(file)) {
reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), charset));
}
}
}
- catch (Throwable e) {
+ catch (Throwable ignored) {
reader = null;
}
return reader;
diff --git a/plugins/github/src/org/jetbrains/plugins/github/GithubShareAction.java b/plugins/github/src/org/jetbrains/plugins/github/GithubShareAction.java
index b666347312d6..233079fc341a 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/GithubShareAction.java
+++ b/plugins/github/src/org/jetbrains/plugins/github/GithubShareAction.java
@@ -212,7 +212,7 @@ public class GithubShareAction extends DumbAwareAction {
}
// check access to private repos (network)
- final GithubUserDetailed userInfo = GithubApiUtil.getCurrentUserInfo(auth);
+ final GithubUserDetailed userInfo = GithubApiUtil.getCurrentUserDetailed(auth);
githubInfoRef.set(new GithubInfo(auth, userInfo, names));
}
catch (IOException e) {
diff --git a/plugins/github/src/org/jetbrains/plugins/github/GithubUtil.java b/plugins/github/src/org/jetbrains/plugins/github/GithubUtil.java
index 2ec56e2227e6..5a2f7fca4766 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/GithubUtil.java
+++ b/plugins/github/src/org/jetbrains/plugins/github/GithubUtil.java
@@ -232,7 +232,7 @@ public class GithubUtil {
}
private static void testConnection(@NotNull GithubAuthData auth, @Nullable String login) throws IOException {
- GithubUserDetailed user = GithubApiUtil.getCurrentUserInfo(auth);
+ GithubUserDetailed user = GithubApiUtil.getCurrentUserDetailed(auth);
if (login != null && !login.equalsIgnoreCase(user.getLogin())) {
throw new GithubAuthenticationException("Wrong login");
}
diff --git a/plugins/github/src/org/jetbrains/plugins/github/api/GithubApiUtil.java b/plugins/github/src/org/jetbrains/plugins/github/api/GithubApiUtil.java
index 60ebc3ec3b4b..7c044292fb02 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/api/GithubApiUtil.java
+++ b/plugins/github/src/org/jetbrains/plugins/github/api/GithubApiUtil.java
@@ -33,10 +33,7 @@ import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URLEncoder;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.NoSuchElementException;
+import java.util.*;
/**
* @author Kirill Likhodedov
@@ -404,7 +401,13 @@ public class GithubApiUtil {
}
@NotNull
- public static GithubUserDetailed getCurrentUserInfo(@NotNull GithubAuthData auth) throws IOException {
+ public static GithubUser getCurrentUser(@NotNull GithubAuthData auth) throws IOException {
+ JsonElement result = getRequest(auth, "/user");
+ return createDataFromRaw(fromJson(result, GithubUserRaw.class), GithubUser.class);
+ }
+
+ @NotNull
+ public static GithubUserDetailed getCurrentUserDetailed(@NotNull GithubAuthData auth) throws IOException {
JsonElement result = getRequest(auth, "/user");
return createDataFromRaw(fromJson(result, GithubUserRaw.class), GithubUserDetailed.class);
}
@@ -479,18 +482,16 @@ public class GithubApiUtil {
}
@NotNull
- public static List getIssues(@NotNull GithubAuthData auth,
- @NotNull String user,
- @NotNull String repo,
- @Nullable String query) throws IOException {
+ public static List getIssuesAssigned(@NotNull GithubAuthData auth,
+ @NotNull String user,
+ @NotNull String repo,
+ @Nullable String assigned) throws IOException {
String path;
- boolean noQuery = StringUtil.isEmpty(query);
- if (!noQuery) {
- query = URLEncoder.encode(query, "UTF-8");
- path = "/legacy/issues/search/" + user + "/" + repo + "/open/" + query + "?per_page=100";
+ if (StringUtil.isEmptyOrSpaces(assigned)) {
+ path = "/repos/" + user + "/" + repo + "/issues?per_page=100";
}
else {
- path = "/repos/" + user + "/" + repo + "/issues?per_page=100";
+ path = "/repos/" + user + "/" + repo + "/issues?assignee=" + assigned + "&per_page=100";
}
PagedRequest request =
@@ -499,6 +500,20 @@ public class GithubApiUtil {
return request.getAll();
}
+ @NotNull
+
+ public static List getIssuesQueried(@NotNull GithubAuthData auth,
+ @NotNull String user,
+ @NotNull String repo,
+ @Nullable String query) throws IOException {
+ query = URLEncoder.encode("@" + user + "/" + repo + " " + query, "UTF-8");
+ String path = "/search/issues/?q=" + query;
+
+ JsonElement result = getRequest(auth, path);
+
+ return createDataFromRaw(fromJson(result, GithubIssuesSearchResultRaw.class), GithubIssuesSearchResult.class).getIssues();
+ }
+
@NotNull
public static GithubIssue getIssue(@NotNull GithubAuthData auth, @NotNull String user, @NotNull String repo, @NotNull String id)
throws IOException {
@@ -570,4 +585,4 @@ public class GithubApiUtil {
return request.getAll();
}
-}
+}
\ No newline at end of file
diff --git a/plugins/github/src/org/jetbrains/plugins/github/api/GithubIssuesSearchResult.java b/plugins/github/src/org/jetbrains/plugins/github/api/GithubIssuesSearchResult.java
new file mode 100644
index 000000000000..b129b2cc6cbd
--- /dev/null
+++ b/plugins/github/src/org/jetbrains/plugins/github/api/GithubIssuesSearchResult.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2000-2013 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jetbrains.plugins.github.api;
+
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
+
+/**
+ * @author Aleksey Pivovarov
+ */
+@SuppressWarnings("UnusedDeclaration")
+public class GithubIssuesSearchResult {
+ @NotNull private List issues;
+
+ public GithubIssuesSearchResult(@NotNull List issues) {
+ this.issues = issues;
+ }
+
+ @NotNull
+ public List getIssues() {
+ return issues;
+ }
+}
diff --git a/plugins/github/src/org/jetbrains/plugins/github/api/GithubIssuesSearchResultRaw.java b/plugins/github/src/org/jetbrains/plugins/github/api/GithubIssuesSearchResultRaw.java
new file mode 100644
index 000000000000..60c91310404e
--- /dev/null
+++ b/plugins/github/src/org/jetbrains/plugins/github/api/GithubIssuesSearchResultRaw.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2000-2013 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jetbrains.plugins.github.api;
+
+import org.jetbrains.annotations.NotNull;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author Aleksey Pivovarov
+ */
+@SuppressWarnings("UnusedDeclaration")
+public class GithubIssuesSearchResultRaw implements DataConstructor {
+ List items;
+
+ @NotNull
+ GithubIssuesSearchResult createIssueSearchResult() {
+ List issues = new ArrayList();
+ for (GithubIssueRaw raw : items) {
+ issues.add(raw.createIssue());
+ }
+ return new GithubIssuesSearchResult(issues);
+ }
+
+
+ @SuppressWarnings("unchecked")
+ @NotNull
+ @Override
+ public T create(@NotNull Class resultClass) {
+ if (resultClass.isAssignableFrom(GithubIssuesSearchResult.class)) {
+ return (T)createIssueSearchResult();
+ }
+
+ throw new ClassCastException(this.getClass().getName() + ": bad class type: " + resultClass.getName());
+ }
+}
diff --git a/plugins/github/src/org/jetbrains/plugins/github/tasks/GithubRepository.java b/plugins/github/src/org/jetbrains/plugins/github/tasks/GithubRepository.java
index f02f78a92592..e5c8e66e75c9 100644
--- a/plugins/github/src/org/jetbrains/plugins/github/tasks/GithubRepository.java
+++ b/plugins/github/src/org/jetbrains/plugins/github/tasks/GithubRepository.java
@@ -39,6 +39,7 @@ public class GithubRepository extends BaseRepositoryImpl {
private Pattern myPattern = Pattern.compile("($^)");
private String myRepoAuthor = "";
private String myRepoName = "";
+ private String myUser = "";
private String myToken = "";
{
@@ -85,7 +86,16 @@ public class GithubRepository extends BaseRepositoryImpl {
@NotNull
private Task[] getIssues(@Nullable String query) throws Exception {
- List issues = GithubApiUtil.getIssues(getAuthData(), getRepoAuthor(), getRepoName(), query);
+ List issues;
+ if (StringUtil.isEmptyOrSpaces(query)) {
+ if (StringUtil.isEmptyOrSpaces(myUser)) {
+ myUser = GithubApiUtil.getCurrentUser(getAuthData()).getLogin();
+ }
+ issues = GithubApiUtil.getIssuesAssigned(getAuthData(), getRepoAuthor(), getRepoName(), myUser);
+ }
+ else {
+ issues = GithubApiUtil.getIssuesQueried(getAuthData(), getRepoAuthor(), getRepoName(), query);
+ }
return ContainerUtil.map2Array(issues, Task.class, new Function() {
@Override
@@ -223,6 +233,14 @@ public class GithubRepository extends BaseRepositoryImpl {
myRepoAuthor = repoAuthor;
}
+ public String getUser() {
+ return myUser;
+ }
+
+ public void setUser(String user) {
+ myUser = user;
+ }
+
@Transient
public String getToken() {
return myToken;
diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/gant/GantRunner.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/gant/GantRunner.java
index c843a4463536..fedbecbc34e4 100644
--- a/plugins/groovy/src/org/jetbrains/plugins/groovy/gant/GantRunner.java
+++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/gant/GantRunner.java
@@ -22,6 +22,7 @@ import com.intellij.execution.configurations.RunProfile;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.options.ShowSettingsUtil;
import com.intellij.openapi.project.Project;
+import com.intellij.openapi.roots.libraries.LibraryUtil;
import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
@@ -36,6 +37,7 @@ import org.jetbrains.plugins.groovy.util.GroovyUtils;
import org.jetbrains.plugins.groovy.util.LibrariesUtil;
import java.io.File;
+import java.util.List;
import static com.intellij.util.containers.ContainerUtil.ar;
@@ -129,7 +131,6 @@ public class GantRunner extends GroovyScriptRunner {
final File[] groovyJars = GroovyConfigUtils.getGroovyAllJars(gantHome + "/lib/");
if (groovyJars.length > 0) {
params.getClassPath().add(groovyJars[0].getAbsolutePath());
- return;
}
if (module == null) {
@@ -141,17 +142,20 @@ public class GantRunner extends GroovyScriptRunner {
File[] libJars = GroovyUtils.getFilesInDirectoryByPattern(groovyHome + "/lib/", ".*\\.jar");
if (libJars.length > 0) {
params.getClassPath().addAllFiles(libJars);
- return;
}
}
+ List classpath = params.getClassPath().getRootDirs();
+
String[] characteristicClasses = ar(
- LibrariesUtil.SOME_GROOVY_CLASS, "org.apache.tools.ant.BuildException",
- "org.apache.tools.ant.launch.AntMain", "org.apache.commons.cli.ParseException");
+ LibrariesUtil.SOME_GROOVY_CLASS, "org.apache.tools.ant.BuildException", "org.apache.tools.ant.launch.AntMain",
+ "org.apache.commons.cli.ParseException");
for (String someClass : characteristicClasses) {
- VirtualFile jar = LibrariesUtil.findJarWithClass(module, someClass);
- if (jar != null) {
- params.getClassPath().add(jar);
+ if (!LibraryUtil.isClassAvailableInLibrary(classpath, someClass)) {
+ VirtualFile jar = LibrariesUtil.findJarWithClass(module, someClass);
+ if (jar != null) {
+ params.getClassPath().add(jar);
+ }
}
}
}
diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/JiraTask.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/JiraTask.java
index c83bdf56723c..cbab1c877fa5 100644
--- a/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/JiraTask.java
+++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/JiraTask.java
@@ -20,6 +20,7 @@ import com.intellij.tasks.*;
import com.intellij.tasks.jira.model.JiraComment;
import com.intellij.tasks.jira.model.JiraIssue;
import com.intellij.tasks.jira.model.JiraIssueType;
+import com.intellij.tasks.jira.model.JiraStatus;
import com.intellij.util.Function;
import com.intellij.util.containers.ContainerUtil;
import icons.TasksIcons;
@@ -100,7 +101,8 @@ class JiraTask extends Task {
@Override
public TaskState getState() {
- switch (Integer.parseInt(myJiraIssue.getId())) {
+ JiraStatus status = myJiraIssue.getStatus();
+ switch (Integer.parseInt(status.getId())) {
case 1:
return TaskState.OPEN;
case 3:
diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/model/JiraIssue.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/model/JiraIssue.java
index 5c7d03279826..30e21a48f6b9 100644
--- a/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/model/JiraIssue.java
+++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/jira/model/JiraIssue.java
@@ -32,7 +32,7 @@ public class JiraIssue {
*/
public static final String REQUIRED_RESPONSE_FIELDS = "id,key,summary,description," +
"created,updated,duedate,resolutiondate" +
- "assignee,reporter,issuetype,comment";
+ "assignee,reporter,issuetype,comment,status";
private String id;
private String key;
@@ -109,6 +109,10 @@ public class JiraIssue {
return fields.comment == null ? ContainerUtil.emptyList() : fields.comment.getComments();
}
+ public JiraStatus getStatus() {
+ return fields.status;
+ }
+
public static class Fields {
private String summary;
private String description;
@@ -122,5 +126,6 @@ public class JiraIssue {
private JiraUser reporter;
private JiraIssueType issuetype;
+ private JiraStatus status;
}
}