diff --git a/lib/jdom.jar b/lib/jdom.jar index 2c66dd0bb4c5..2173e135b1f3 100644 Binary files a/lib/jdom.jar and b/lib/jdom.jar differ diff --git a/lib/src/jdom.zip b/lib/src/jdom.zip index ce1f3778c192..412f7d002bfb 100644 Binary files a/lib/src/jdom.zip and b/lib/src/jdom.zip differ diff --git a/platform/util/src/com/intellij/openapi/util/JDOMUtil.java b/platform/util/src/com/intellij/openapi/util/JDOMUtil.java index 851a50eeeccc..bb85f0dd5cc4 100644 --- a/platform/util/src/com/intellij/openapi/util/JDOMUtil.java +++ b/platform/util/src/com/intellij/openapi/util/JDOMUtil.java @@ -68,12 +68,9 @@ public class JDOMUtil { @NotNull public static List getChildren(@Nullable Element parent, @NotNull String name) { if (parent != null) { - @SuppressWarnings({"UnnecessaryLocalVariable", "unchecked"}) final List children = parent.getChildren(name); - return children; - } - else { - return Collections.emptyList(); + return parent.getChildren(name); } + return Collections.emptyList(); } @SuppressWarnings("UtilityClassWithoutPrivateConstructor") diff --git a/platform/util/src/com/intellij/util/xmlb/JDOMXIncluder.java b/platform/util/src/com/intellij/util/xmlb/JDOMXIncluder.java index 8a764574f686..c9232148f7e4 100644 --- a/platform/util/src/com/intellij/util/xmlb/JDOMXIncluder.java +++ b/platform/util/src/com/intellij/util/xmlb/JDOMXIncluder.java @@ -54,17 +54,17 @@ public class JDOMXIncluder { throw new NullPointerException("Document must not be null"); } - Document result = (Document)original.clone(); + Document result = original.clone(); Element root = result.getRootElement(); - List resolved = resolve(root, base); + List resolved = resolve(root, base); // check that the list returned contains // exactly one root element Element newRoot = null; - Iterator iterator = resolved.iterator(); + Iterator iterator = resolved.iterator(); while (iterator.hasNext()) { - Object o = iterator.next(); + Content o = iterator.next(); if (o instanceof Element) { if (newRoot != null) { throw new XIncludeException("Tried to include multiple roots"); @@ -74,7 +74,7 @@ public class JDOMXIncluder { else if (o instanceof Comment || o instanceof ProcessingInstruction) { // do nothing } - else if (o instanceof Text || o instanceof String) { + else if (o instanceof Text) { throw new XIncludeException("Tried to include text node outside of root element"); } else if (o instanceof EntityRef) { @@ -91,7 +91,7 @@ public class JDOMXIncluder { } // Could probably combine two loops - List newContent = result.getContent(); + List newContent = result.getContent(); // resolved contains list of new content // use it to replace old root element iterator = resolved.iterator(); @@ -99,7 +99,7 @@ public class JDOMXIncluder { // put in nodes before root element int rootPosition = newContent.indexOf(result.getRootElement()); while (iterator.hasNext()) { - Object o = iterator.next(); + Content o = iterator.next(); if (o instanceof Comment || o instanceof ProcessingInstruction) { newContent.add(rootPosition, o); rootPosition++; @@ -118,7 +118,7 @@ public class JDOMXIncluder { int addPosition = rootPosition + 1; // put in nodes after root element while (iterator.hasNext()) { - Object o = iterator.next(); + Content o = iterator.next(); if (o instanceof Comment || o instanceof ProcessingInstruction) { newContent.add(addPosition, o); addPosition++; @@ -131,11 +131,11 @@ public class JDOMXIncluder { return result; } - public static List resolve(@NotNull Element original, String base) throws XIncludeException { + public static List resolve(@NotNull Element original, String base) throws XIncludeException { Stack bases = new Stack(); if (base != null) bases.push(base); - List result = resolve(original, bases); + List result = resolve(original, bases); bases.pop(); return result; @@ -148,7 +148,7 @@ public class JDOMXIncluder { return false; } - protected static List resolve(Element original, Stack bases) throws XIncludeException { + protected static List resolve(Element original, Stack bases) throws XIncludeException { if (bases.size() != 0) bases.peek(); if (isIncludeElement(original)) { @@ -156,14 +156,14 @@ public class JDOMXIncluder { } else { Element resolvedElement = resolveNonXIncludeElement(original, bases); - List resultList = new ArrayList(); + List resultList = new ArrayList(1); resultList.add(resolvedElement); return resultList; } } - private static List resolveXIncludeElement(Element element, Stack bases) throws XIncludeException { + private static List resolveXIncludeElement(Element element, Stack bases) throws XIncludeException { String base = ""; if (bases.size() != 0) base = bases.peek(); @@ -212,7 +212,7 @@ public class JDOMXIncluder { assert !bases.contains(remote.toExternalForm()) : "Circular XInclude Reference to " + remote.toExternalForm(); final Element fallbackElement = element.getChild("fallback", element.getNamespace()); - List remoteParsed = parseRemote(bases, remote, fallbackElement); + List remoteParsed = parseRemote(bases, remote, fallbackElement); if (remoteParsed.size() > 0) { remoteParsed = extractNeededChildren(element, remoteParsed); } @@ -222,7 +222,7 @@ public class JDOMXIncluder { if (o instanceof Element) { Element e = (Element)o; - List nodes = resolve(e, bases); + List nodes = resolve(e, bases); remoteParsed.addAll(i, nodes); i += nodes.size(); remoteParsed.remove(i); @@ -243,8 +243,8 @@ public class JDOMXIncluder { try { String encoding = element.getAttributeValue(ENCODING); String s = StreamUtil.readText(URLUtil.openResourceStream(remote), encoding); - List resultList = new ArrayList(); - resultList.add(s); + List resultList = new ArrayList(1); + resultList.add(new Text(s)); return resultList; } catch (IOException e) { @@ -261,7 +261,7 @@ public class JDOMXIncluder { public static Pattern CHILDREN_PATTERN = Pattern.compile("/([^/]*)(/[^/]*)?/\\*"); @Nullable - private static List extractNeededChildren(final Element element, List remoteElements) { + private static List extractNeededChildren(final Element element, List remoteElements) { final String xpointer = element.getAttributeValue(XPOINTER); if (xpointer != null) { @@ -288,7 +288,7 @@ public class JDOMXIncluder { if (subTagName != null) { e = e.getChild(subTagName.substring(1)); // cut off the slash } - return new ArrayList(e.getContent()); + return new ArrayList(e.getContent()); } else return Collections.emptyList(); @@ -298,14 +298,15 @@ public class JDOMXIncluder { } } - private static List parseRemote(final Stack bases, final URL remote, @Nullable Element fallbackElement) { + @NotNull + private static List parseRemote(final Stack bases, final URL remote, @Nullable Element fallbackElement) { try { Document doc = JDOMUtil.loadResourceDocument(remote); bases.push(remote.toExternalForm()); Element root = doc.getRootElement(); - final List list = resolve(root, bases); + final List list = resolve(root, bases); bases.pop(); return list; @@ -326,13 +327,13 @@ public class JDOMXIncluder { if (bases.size() != 0) bases.peek(); Element result = new Element(original.getName(), original.getNamespace()); - Iterator attributes = original.getAttributes().iterator(); + Iterator attributes = original.getAttributes().iterator(); while (attributes.hasNext()) { - Attribute a = (Attribute)attributes.next(); - result.setAttribute((Attribute)a.clone()); + Attribute a = attributes.next(); + result.setAttribute(a.clone()); } - for (Object o : original.getContent()) { + for (Content o : original.getContent()) { if (o instanceof Element) { Element element = (Element)o; if (isIncludeElement(element)) { @@ -342,14 +343,8 @@ public class JDOMXIncluder { result.addContent(resolveNonXIncludeElement(element, bases)); } } - else if (o instanceof String) { - result.addContent((String)o); - } - else if (o instanceof Content) { - result.addContent((Content)((Content)o).clone()); - } else { - throw new XIncludeException("Unexpected Type " + o.getClass()); + result.addContent(o.clone()); } } // end while diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/lighthouse/LighthouseRepository.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/lighthouse/LighthouseRepository.java index a76be436445f..6050fc216941 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/lighthouse/LighthouseRepository.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/lighthouse/LighthouseRepository.java @@ -96,12 +96,12 @@ public class LighthouseRepository extends BaseRepositoryImpl { throw new Exception("Error fetching issues for: " + url + ", HTTP status code: " + method.getStatusCode() + "\n" + element.getText()); } - @SuppressWarnings({"unchecked"}) - List children = element.getChildren("ticket"); - List taskList = ContainerUtil.mapNotNull(children, new NullableFunction() { - public Task fun(Object o) { - return createIssue((Element)o); + List children = element.getChildren("ticket"); + + List taskList = ContainerUtil.mapNotNull(children, new NullableFunction() { + public Task fun(Element o) { + return createIssue(o); } }); tasks.addAll(taskList); diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/pivotal/PivotalTrackerRepository.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/pivotal/PivotalTrackerRepository.java index 340a9deadb0e..48c60549fd03 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/pivotal/PivotalTrackerRepository.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/pivotal/PivotalTrackerRepository.java @@ -83,18 +83,17 @@ public class PivotalTrackerRepository extends BaseRepositoryImpl { @Override public Task[] getIssues(@Nullable final String query, final int max, final long since) throws Exception { - @SuppressWarnings({"unchecked"}) List children = getStories(query, max); + List children = getStories(query, max); - final List tasks = ContainerUtil.mapNotNull(children, new NullableFunction() { - public Task fun(Object o) { - return createIssue((Element)o); + final List tasks = ContainerUtil.mapNotNull(children, new NullableFunction() { + public Task fun(Element o) { + return createIssue(o); } }); return tasks.toArray(new Task[tasks.size()]); } - @SuppressWarnings({"unchecked"}) - private List getStories(@Nullable final String query, final int max) throws Exception { + private List getStories(@Nullable final String query, final int max) throws Exception { String url = API_URL + "/projects/" + myProjectId + "/stories"; url += "?filter=" + encodeUrl("state:started,unstarted,unscheduled,rejected"); if (!StringUtil.isEmpty(query)) { diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/redmine/RedmineRepository.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/redmine/RedmineRepository.java index f50fe62f92af..f2b082dd33ed 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/redmine/RedmineRepository.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/redmine/RedmineRepository.java @@ -67,11 +67,11 @@ public class RedmineRepository extends BaseRepositoryImpl { @Override public Task[] getIssues(@Nullable String query, int max, long since) throws Exception { - @SuppressWarnings({"unchecked"}) List children = getIssues(query, max); + List children = getIssues(query, max); - final List tasks = ContainerUtil.mapNotNull(children, new NullableFunction() { - public Task fun(Object o) { - return createIssue((Element)o); + final List tasks = ContainerUtil.mapNotNull(children, new NullableFunction() { + public Task fun(Element o) { + return createIssue(o); } }); return tasks.toArray(new Task[tasks.size()]); @@ -188,8 +188,7 @@ public class RedmineRepository extends BaseRepositoryImpl { return super.isConfigured() && !StringUtil.isEmpty(myProjectId); } - @SuppressWarnings({"unchecked"}) - private List getIssues(@Nullable String query, int max) throws Exception { + private List getIssues(@Nullable String query, int max) throws Exception { String url = "/projects/" + myProjectId + "/issues.xml?"; final boolean hasKey = !StringUtil.isEmpty(myAPIKey) && !isUseHttpAuthentication(); if (hasKey) { diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/youtrack/YouTrackRepository.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/youtrack/YouTrackRepository.java index 6d16b395b27d..7187072738b7 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/youtrack/YouTrackRepository.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/youtrack/YouTrackRepository.java @@ -91,12 +91,12 @@ public class YouTrackRepository extends BaseRepositoryImpl { if ("error".equals(element.getName())) { throw new Exception("Error from YouTrack for " + requestUrl + ": '" + element.getText() + "'"); } - @SuppressWarnings({"unchecked"}) - List children = element.getChildren("issue"); - final List tasks = ContainerUtil.mapNotNull(children, new NullableFunction() { - public Task fun(Object o) { - return createIssue((Element)o); + List children = element.getChildren("issue"); + + final List tasks = ContainerUtil.mapNotNull(children, new NullableFunction() { + public Task fun(Element o) { + return createIssue(o); } }); return tasks.toArray(new Task[tasks.size()]);