Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCurtis Windatt2013-02-05 16:04:51 +0000
committerCurtis Windatt2013-02-08 20:36:11 +0000
commit7a53d56ebca276be7bf4fbe60f195c37e291629a (patch)
tree9dfd6e66f351b5a68893526bf30811fc40a1a683
parent3a7634c1cd2077b625a6942d8bfc401030457b8a (diff)
downloadeclipse.pde.ui-7a53d56ebca276be7bf4fbe60f195c37e291629a.tar.gz
eclipse.pde.ui-7a53d56ebca276be7bf4fbe60f195c37e291629a.tar.xz
eclipse.pde.ui-7a53d56ebca276be7bf4fbe60f195c37e291629a.zip
Bug 271045 - API tools should work with unresolved bundles
Incremental changes
-rw-r--r--apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/APIToolsAnalysisTask.java75
-rw-r--r--apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/AnalysisReportConversionTask.java162
-rw-r--r--apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/Messages.java7
-rw-r--r--apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/messages.properties25
4 files changed, 134 insertions, 135 deletions
diff --git a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/APIToolsAnalysisTask.java b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/APIToolsAnalysisTask.java
index d44b413f11..09133c3b0e 100644
--- a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/APIToolsAnalysisTask.java
+++ b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/APIToolsAnalysisTask.java
@@ -60,7 +60,6 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
List apiBundleVersionProblems = new ArrayList();
List apiCompatibilityProblems = new ArrayList();
List apiUsageProblems = new ArrayList();
- List otherProblems = new ArrayList();
String componentID;
public Summary(String componentID, IApiProblem[] apiProblems) {
@@ -78,7 +77,6 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
apiBundleVersionProblems.add(problem);
break;
default:
- otherProblems.add(problem);
break;
}
}
@@ -96,7 +94,6 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
dumpProblems("Usage:", apiUsageProblems, printWriter); //$NON-NLS-1$
dumpProblems("Compatibility:", apiCompatibilityProblems, printWriter); //$NON-NLS-1$
dumpProblems("Bundle Versions:", apiBundleVersionProblems, printWriter); //$NON-NLS-1$
- dumpProblems("Other Problems:", otherProblems, printWriter); //$NON-NLS-1$
printWriter.println("=================================================================================="); //$NON-NLS-1$
printWriter.flush();
printWriter.close();
@@ -108,16 +105,13 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
printWriter.print(
apiUsageProblems.size()
+ apiBundleVersionProblems.size()
- + apiCompatibilityProblems.size()
- + otherProblems.size());
+ + apiCompatibilityProblems.size());
printWriter.print(" (Usage: "); //$NON-NLS-1$
printWriter.print(apiUsageProblems.size());
printWriter.print(", Compatibility: "); //$NON-NLS-1$
printWriter.print(apiCompatibilityProblems.size());
printWriter.print(", Bundle version: "); //$NON-NLS-1$
printWriter.print(apiBundleVersionProblems.size());
- printWriter.print(", Other: "); //$NON-NLS-1$
- printWriter.print(otherProblems.size());
printWriter.print(')');
printWriter.println();
}
@@ -132,11 +126,8 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
printWriter.println(problem.getMessage());
}
}
-
-
-
-
}
+
/**
* Stores integer counts for types of problems reported
*/
@@ -156,6 +147,7 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
}
public static final String BUNDLE_VERSION = "bundleVersion"; //$NON-NLS-1$
public static final String COMPATIBILITY = "compatibility"; //$NON-NLS-1$
+ public static final String COMPONENT_RESOLUTION = "componentResolution"; //$NON-NLS-1$
private static final Summary[] NO_SUMMARIES = new Summary[0];
public static final String USAGE = "usage"; //$NON-NLS-1$
@@ -231,6 +223,19 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
category.setAttribute(IApiXmlConstants.ATTR_VALUE, BUNDLE_VERSION);
insertAPIProblems(category, document, summary.apiBundleVersionProblems, counter);
report.appendChild(category);
+
+ if (bundlesWithErrors != null && bundlesWithErrors.containsKey(componentID)){
+ category = document.createElement(IApiXmlConstants.ATTR_CATEGORY);
+ category.setAttribute(IApiXmlConstants.ATTR_KEY, Integer.toString(IApiProblem.CATEGORY_API_COMPONENT_RESOLUTION));
+ category.setAttribute(IApiXmlConstants.ATTR_VALUE, COMPONENT_RESOLUTION);
+ ResolverError[] errors = (ResolverError[])bundlesWithErrors.get(componentID);
+ for (int j = 0; j < errors.length; j++) {
+ Element error = document.createElement(IApiXmlConstants.ELEMENT_RESOLVER_ERROR);
+ error.setAttribute(IApiXmlConstants.ATTR_MESSAGE, errors[j].toString());
+ category.appendChild(error);
+ }
+ report.appendChild(category);
+ }
contents = Util.serializeDocument(document);
} catch (DOMException e) {
@@ -243,8 +248,8 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
}
}
- // Write out a list of components skipped because they aren't API Tools enabled or because they had resolver errors
- if ((nonAPIBundleNames != null && nonAPIBundleNames.size() != 0) || (bundlesWithErrors != null && !bundlesWithErrors.isEmpty())) {
+ // Write out a list of components skipped because they aren't API Tools enabled
+ if (nonAPIBundleNames != null && nonAPIBundleNames.size() != 0) {
String contents = null;
try {
Document document = Util.newDocument();
@@ -252,35 +257,14 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
report.setAttribute(IApiXmlConstants.ATTR_VERSION, IApiXmlConstants.API_REPORT_CURRENT_VERSION);
document.appendChild(report);
- if (nonAPIBundleNames != null){
- for (Iterator iterator = nonAPIBundleNames.iterator(); iterator.hasNext();) {
- String bundleName = (String) iterator.next();
- if (!isFiltered(bundleName)){
- Element bundle = document.createElement(IApiXmlConstants.ELEMENT_BUNDLE);
- bundle.setAttribute(IApiXmlConstants.ATTR_NAME, bundleName);
- report.appendChild(bundle);
- }
- }
- }
-
- if (bundlesWithErrors != null){
- for (Iterator iterator = bundlesWithErrors.keySet().iterator(); iterator.hasNext();) {
- String bundleName = (String) iterator.next();
- if (!isFiltered(bundleName)){
- Element bundle = document.createElement(IApiXmlConstants.ELEMENT_BUNDLE);
- bundle.setAttribute(IApiXmlConstants.ATTR_NAME, bundleName);
- ResolverError[] errors = (ResolverError[])bundlesWithErrors.get(bundleName);
- for (int i = 0; i < errors.length; i++) {
- Element error = document.createElement(IApiXmlConstants.ELEMENT_RESOLVER_ERROR);
- error.setAttribute(IApiXmlConstants.ATTR_MESSAGE, errors[i].toString());
- bundle.appendChild(error);
- }
- report.appendChild(bundle);
- }
+ for (Iterator iterator = nonAPIBundleNames.iterator(); iterator.hasNext();) {
+ String bundleName = (String) iterator.next();
+ if (!isFiltered(bundleName)){
+ Element bundle = document.createElement(IApiXmlConstants.ELEMENT_BUNDLE);
+ bundle.setAttribute(IApiXmlConstants.ATTR_NAME, bundleName);
+ report.appendChild(bundle);
}
}
-
-
contents = Util.serializeDocument(document);
} catch (DOMException e) {
throw new BuildException(e);
@@ -415,12 +399,11 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
continue;
}
- // If the component has resolver errors the results may not be accurate
+ // If the component has resolver errors the results may not be accurate, store problems in other category
try {
- ResolverError[] errors = apiComponent.getErrors();
- if (errors != null && errors.length > 0){
- bundlesWithErrors.put(name, errors);
- continue;
+ ResolverError[] resolverErrors = apiComponent.getErrors();
+ if (resolverErrors != null && resolverErrors.length > 0){
+ bundlesWithErrors.put(name, apiComponent.getErrors());
}
} catch (CoreException e){
ApiPlugin.log(e.getStatus());
@@ -464,7 +447,7 @@ public class APIToolsAnalysisTask extends CommonUtilsTask {
System.out.println(iterator.next());
}
System.out.println("=========================="); //$NON-NLS-1$
- System.out.println("Total number of api tools components in current baseline that have errors :" + bundlesWithErrors.size()); //$NON-NLS-1$
+ System.out.println("Total number of components with resolver errors :" + bundlesWithErrors.size()); //$NON-NLS-1$
System.out.println("Details:"); //$NON-NLS-1$
List names = new ArrayList();
names.addAll(bundlesWithErrors.keySet());
diff --git a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/AnalysisReportConversionTask.java b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/AnalysisReportConversionTask.java
index a62d4b6300..e0901f3fdf 100644
--- a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/AnalysisReportConversionTask.java
+++ b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/AnalysisReportConversionTask.java
@@ -20,7 +20,6 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -87,9 +86,6 @@ public class AnalysisReportConversionTask extends Task {
boolean debug;
Report report;
- String currentSkippedBundle;
- List currentSkippedBundleProblems = new ArrayList();
-
public ConverterDefaultHandler(boolean debug) {
this.debug = debug;
}
@@ -119,64 +115,44 @@ public class AnalysisReportConversionTask extends Task {
System.out.println("problem severity : " + severity); //$NON-NLS-1$
}
this.report.addProblem(this.category, new Problem(message, severity));
- } else if (IApiXmlConstants.ELEMENT_BUNDLE.equals(name)) {
- currentSkippedBundle = attributes.getValue(IApiXmlConstants.ATTR_NAME);
- currentSkippedBundleProblems.clear();
+ } else if (IApiXmlConstants.ELEMENT_RESOLVER_ERROR.equals(name)) {
+ String message = attributes.getValue(IApiXmlConstants.ATTR_MESSAGE);
if (this.debug) {
- System.out.println("skipped bundle name : " + currentSkippedBundle); //$NON-NLS-1$
+ System.out.println("Resolver error : " + message); //$NON-NLS-1$
}
- } else if (IApiXmlConstants.ELEMENT_RESOLVER_ERROR.equals(name)){
- String error = attributes.getValue(IApiXmlConstants.ATTR_MESSAGE);
- currentSkippedBundleProblems.add(error);
+ this.report.addProblem(this.category, new Problem(message, ApiPlugin.SEVERITY_WARNING));
+ } else if (IApiXmlConstants.ELEMENT_BUNDLE.equals(name)) {
+ String bundleName = attributes.getValue(IApiXmlConstants.ATTR_NAME);
if (this.debug) {
- System.out.println("skipped bundle problem : " + error); //$NON-NLS-1$
+ System.out.println("bundle name : " + bundleName); //$NON-NLS-1$
}
- } else if (!IApiXmlConstants.ELEMENT_PROBLEM_MESSAGE_ARGUMENTS.equals(name)
- && !IApiXmlConstants.ELEMENT_PROBLEM_MESSAGE_ARGUMENT.equals(name)
- && !IApiXmlConstants.ELEMENT_API_PROBLEMS.equals(name)
- && !IApiXmlConstants.ELEMENT_PROBLEM_EXTRA_ARGUMENT.equals(name)
- && !IApiXmlConstants.ELEMENT_PROBLEM_EXTRA_ARGUMENTS.equals(name)) {
- System.out.println("unknown element : " + String.valueOf(name)); //$NON-NLS-1$
- }
-
- }
-
- public void endElement(String uri, String localName, String qName)
- throws SAXException {
- if (IApiXmlConstants.ELEMENT_BUNDLE.equals(qName)) {
- String[] errors = null;
- if (!currentSkippedBundleProblems.isEmpty()){
- errors = (String[])currentSkippedBundleProblems.toArray(new String[currentSkippedBundleProblems.size()]);
+ this.report.addNonApiBundles(bundleName);
+ } else if (this.debug) {
+ if (!IApiXmlConstants.ELEMENT_PROBLEM_MESSAGE_ARGUMENTS.equals(name)
+ && !IApiXmlConstants.ELEMENT_PROBLEM_MESSAGE_ARGUMENT.equals(name)
+ && !IApiXmlConstants.ELEMENT_API_PROBLEMS.equals(name)
+ && !IApiXmlConstants.ELEMENT_PROBLEM_EXTRA_ARGUMENT.equals(name)
+ && !IApiXmlConstants.ELEMENT_PROBLEM_EXTRA_ARGUMENTS.equals(name)) {
+ System.out.println("unknown element : " + String.valueOf(name)); //$NON-NLS-1$
}
- this.report.addSkippedBundle(currentSkippedBundle, errors);
- currentSkippedBundle = null;
- currentSkippedBundleProblems.clear();
}
}
-
}
static private final class Report {
String componentID;
String link;
- Map skippedBundles;
+ List nonApiBundles;
Map problemsPerCategories;
Report(String componentID) {
this.componentID = componentID;
}
- /**
- * Adds an entry for a skipped bundle, if null is provided as the problems
- * it is assumed that the bundle was skipped because it isn't an API bundle.
- *
- * @param bundleName name of the bundle
- * @param problems one or more problem messages prevent this bundle from being analyzed, can be <code>null</code> if bundle wasn't API tools enabled
- */
- public void addSkippedBundle(String bundleName, String[] problems) {
- if (this.skippedBundles == null) {
- this.skippedBundles = new HashMap();
+ public void addNonApiBundles(String bundleName) {
+ if (this.nonApiBundles == null) {
+ this.nonApiBundles = new ArrayList();
}
- this.skippedBundles.put(bundleName, problems);
+ this.nonApiBundles.add(bundleName);
}
public void addProblem(String category, Problem problem) {
@@ -191,14 +167,13 @@ public class AnalysisReportConversionTask extends Task {
problemsList.add(problem);
}
- /**
- * @return map of string bundle name to String[] problem messages or <code>null</code> if bundle was skipped because it isn't API Tools enabled
- */
- public Map getSkippedBundles() {
- if (this.skippedBundles == null || this.skippedBundles.size() == 0) {
- return new HashMap(0);
+ public String[] getNonApiBundles() {
+ if (this.nonApiBundles == null || this.nonApiBundles.size() == 0) {
+ return NO_NON_API_BUNDLES;
}
- return skippedBundles;
+ String[] nonApiBundlesNames = new String[this.nonApiBundles.size()];
+ this.nonApiBundles.toArray(nonApiBundlesNames);
+ return nonApiBundlesNames;
}
public Problem[] getProblems(String category) {
@@ -230,6 +205,7 @@ public class AnalysisReportConversionTask extends Task {
int apiUsageNumber;
int bundleVersionNumber;
int compatibilityNumber;
+ int componentResolutionNumber;
String componentID;
String link;
@@ -238,22 +214,25 @@ public class AnalysisReportConversionTask extends Task {
this.apiUsageNumber = report.getProblemSize(APIToolsAnalysisTask.USAGE);
this.bundleVersionNumber = report.getProblemSize(APIToolsAnalysisTask.BUNDLE_VERSION);
this.compatibilityNumber = report.getProblemSize(APIToolsAnalysisTask.COMPATIBILITY);
+ this.componentResolutionNumber = report.getProblemSize(APIToolsAnalysisTask.COMPONENT_RESOLUTION);
this.componentID = report.componentID;
this.link = report.link;
}
public String toString() {
- return MessageFormat.format("{0} : compatibility {1}, api usage {2}, bundle version {3}, link {4}", //$NON-NLS-1$
+ return MessageFormat.format("{0} : compatibility {1}, api usage {2}, bundle version {3}, resolution {4}, link {5}", //$NON-NLS-1$
new String[] {
this.componentID,
Integer.toString(this.compatibilityNumber),
Integer.toString(this.apiUsageNumber),
Integer.toString(this.bundleVersionNumber),
+ Integer.toString(this.componentResolutionNumber),
this.link
});
}
}
static final Problem[] NO_PROBLEMS = new Problem[0];
+ static final String[] NO_NON_API_BUNDLES = new String[0];
boolean debug;
private String htmlReportsLocation;
@@ -271,6 +250,7 @@ public class AnalysisReportConversionTask extends Task {
new String[] {
report.componentID
}));
+
// dump the summary
writer.println(
MessageFormat.format(
@@ -279,7 +259,17 @@ public class AnalysisReportConversionTask extends Task {
Integer.toString(report.getProblemSize(APIToolsAnalysisTask.COMPATIBILITY)),
Integer.toString(report.getProblemSize(APIToolsAnalysisTask.USAGE)),
Integer.toString(report.getProblemSize(APIToolsAnalysisTask.BUNDLE_VERSION)),
- }));
+ }));
+
+ if (report.getProblemSize(APIToolsAnalysisTask.COMPONENT_RESOLUTION) > 0){
+ writer.println(
+ MessageFormat.format(
+ Messages.fullReportTask_resolutiondetails,
+ new String[] {
+ report.componentID,
+ Integer.toString(report.getProblemSize(APIToolsAnalysisTask.COMPONENT_RESOLUTION))
+ }));
+ }
}
private void dumpIndexEntry(int i, PrintWriter writer, Summary summary) {
if (debug) {
@@ -308,7 +298,27 @@ public class AnalysisReportConversionTask extends Task {
summary.link,
}));
}
+ if (summary.componentResolutionNumber > 0){
+ if ((i % 2) == 0) {
+ writer.println(
+ MessageFormat.format(
+ Messages.fullReportTask_resolutionsummary_even,
+ new String[] {
+ summary.componentID,
+ Integer.toString(summary.componentResolutionNumber)
+ }));
+ } else {
+ writer.println(
+ MessageFormat.format(
+ Messages.fullReportTask_resolutionsummary_odd,
+ new String[] {
+ summary.componentID,
+ Integer.toString(summary.componentResolutionNumber)
+ }));
+ }
+ }
}
+
private void dumpIndexFile(File reportsRoot, Summary[] summaries, Summary allNonApiBundleSummary) {
File htmlFile = new File(this.htmlReportsLocation, "index.html"); //$NON-NLS-1$
PrintWriter writer = null;
@@ -352,32 +362,18 @@ public class AnalysisReportConversionTask extends Task {
}
private void dumpNonApiBundles(PrintWriter writer, Report report) {
writer.println(Messages.fullReportTask_bundlesheader);
- Map nonApiBundleNames = report.getSkippedBundles();
- int count = 0;
- for (Iterator iterator = nonApiBundleNames.keySet().iterator(); iterator.hasNext();) {
- StringBuffer result = new StringBuffer();
- String bundleName = (String) iterator.next();
- result.append(bundleName);
- String[] bundleErrors = (String[]) nonApiBundleNames.get(bundleName);
- if (bundleErrors == null){
- result.append(Messages.AnalysisReportConversionTask_BundleErrorNewline);
- result.append(Messages.AnalysisReportConversionTask_NotSetupForAPIAnalysis);
- } else {
- for (int i = 0; i < bundleErrors.length; i++) {
- result.append(Messages.AnalysisReportConversionTask_BundleErrorNewline);
- result.append(bundleErrors[i]);
- }
- }
- if ((count % 2) == 0) {
- writer.println(MessageFormat.format(Messages.fullReportTask_bundlesentry_even, new String[] { result.toString() }));
+ String[] nonApiBundleNames = report.getNonApiBundles();
+ for (int i = 0; i < nonApiBundleNames.length; i++) {
+ String bundleName = nonApiBundleNames[i];
+ if ((i % 2) == 0) {
+ writer.println(MessageFormat.format(Messages.fullReportTask_bundlesentry_even, new String[] { bundleName }));
} else {
- writer.println(MessageFormat.format(Messages.fullReportTask_bundlesentry_odd, new String[] { result.toString() }));
+ writer.println(MessageFormat.format(Messages.fullReportTask_bundlesentry_odd, new String[] { bundleName }));
}
- count++;
}
writer.println(Messages.fullReportTask_bundlesfooter);
}
- private void dumpProblems(PrintWriter writer, String categoryName, Problem[] problems) {
+ private void dumpProblems(PrintWriter writer, String categoryName, Problem[] problems, boolean printEmptyCategory) {
if (problems != null && problems.length != 0) {
writer.println(
MessageFormat.format(
@@ -392,6 +388,9 @@ public class AnalysisReportConversionTask extends Task {
break;
case ApiPlugin.SEVERITY_WARNING :
writer.println(MessageFormat.format(Messages.fullReportTask_problementry_even_warning, new String[] { problem.getHtmlMessage() }));
+ break;
+ default:
+ break;
}
} else {
switch(problem.severity) {
@@ -400,11 +399,14 @@ public class AnalysisReportConversionTask extends Task {
break;
case ApiPlugin.SEVERITY_WARNING :
writer.println(MessageFormat.format(Messages.fullReportTask_problementry_odd_warning, new String[] { problem.getHtmlMessage() }));
+ break;
+ default:
+ break;
}
}
}
writer.println(Messages.fullReportTask_categoryfooter);
- } else {
+ } else if (printEmptyCategory) {
writer.println(
MessageFormat.format(
Messages.fullReportTask_category_no_elements,
@@ -432,12 +434,10 @@ public class AnalysisReportConversionTask extends Task {
dumpNonApiBundles(writer, report);
} else {
dumpHeader(writer, report);
- // generate compatibility category
- dumpProblems(writer, Messages.fullReportTask_compatibility_header, report.getProblems(APIToolsAnalysisTask.COMPATIBILITY));
- writer.println(Messages.fullReportTask_categoryseparator);
- dumpProblems(writer, Messages.fullReportTask_api_usage_header, report.getProblems(APIToolsAnalysisTask.USAGE));
- writer.println(Messages.fullReportTask_categoryseparator);
- dumpProblems(writer, Messages.fullReportTask_bundle_version_header, report.getProblems(APIToolsAnalysisTask.BUNDLE_VERSION));
+ dumpProblems(writer, Messages.AnalysisReportConversionTask_component_resolution_header, report.getProblems(APIToolsAnalysisTask.COMPONENT_RESOLUTION), false);
+ dumpProblems(writer, Messages.fullReportTask_compatibility_header, report.getProblems(APIToolsAnalysisTask.COMPATIBILITY), true);
+ dumpProblems(writer, Messages.fullReportTask_api_usage_header, report.getProblems(APIToolsAnalysisTask.USAGE), true);
+ dumpProblems(writer, Messages.fullReportTask_bundle_version_header, report.getProblems(APIToolsAnalysisTask.BUNDLE_VERSION), true);
dumpFooter(writer);
}
writer.flush();
diff --git a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/Messages.java b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/Messages.java
index 03d8c3f5ed..1e9ca8af9e 100644
--- a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/Messages.java
+++ b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/Messages.java
@@ -55,6 +55,9 @@ public class Messages extends NLS {
public static String fullReportTask_indexfooter;
public static String fullReportTask_indexsummary_even;
public static String fullReportTask_indexsummary_odd;
+ public static String fullReportTask_resolutionsummary_even;
+ public static String fullReportTask_resolutionsummary_odd;
+ public static String fullReportTask_resolutiondetails;
public static String missing_xml_files_location;
public static String invalid_directory_name;
@@ -98,9 +101,7 @@ public class Messages extends NLS {
public static String AddedElement;
- public static String AnalysisReportConversionTask_BundleErrorNewline;
-
- public static String AnalysisReportConversionTask_NotSetupForAPIAnalysis;
+ public static String AnalysisReportConversionTask_component_resolution_header;
public static String RemovedElement;
public static String ChangedElement;
diff --git a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/messages.properties b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/messages.properties
index cd9b38df29..89ab5f6236 100644
--- a/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/messages.properties
+++ b/apitools/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/messages.properties
@@ -51,7 +51,7 @@ missing_xml_files_location=The directory that contains xml reports must be speci
invalid_directory_name=''{0}'' is not a valid directory name
could_not_create_sax_parser=Could not create a sax parser
could_not_create_file=Could not create file {0}
-fullReportTask_nonApiBundleSummary=<p>List of <a href=\"{0}\">skipped bundles</a>.</p>
+fullReportTask_nonApiBundleSummary=<p>List of <a href=\"{0}\">bundles not configured for API analysis</a>.</p>
fullReportTask_apiBundleSummary=<p>All bundles have been converted to API tools.</p>
ioexception_writing_html_file=An IOException occurred while writing html for: {0}
fullReportTask_compatibility_header=Compatibility
@@ -82,10 +82,10 @@ fullReportTask_bundlesheader=<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.01 Transi
<html>\n\
<head>\n\
\ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\n\
-\ <title>Skipped Bundles</title>\n\
+\ <title>Bundles Not Setup For API Analysis</title>\n\
</head>\n\
<body>\n\
-<h1>Skipped Bundles</h1>\n\
+<h1>Bundles Not Setup For API Analysis</h1>\n\
<table border="1">\n
# {0} is the bundle name
fullReportTask_bundlesentry_even=\ <tr>\n <td align="left">{0}</td>\n </tr>
@@ -186,10 +186,25 @@ fullReportTask_indexsummary_odd=\ <tr>\n\
\ <td align="center" bgcolor="#FFFFCC">{2}</td>\n\
\ <td align="center" bgcolor="#FFFFCC">{3}</td>\n\
\ </tr>\n
+# {0} component id
+# {1} component resolution problem number
+fullReportTask_resolutionsummary_even=\ <tr>\n\
+\ <td></td>\n\
+\ <td align="left" colspan="3">Reported warnings may not be accurate because {0} has {1} resolution problems.</td>\n\
+\ </tr>\n
+# {0} component id
+# {1} component resolution problem number
+fullReportTask_resolutionsummary_odd=\ <tr>\n\
+\ <td bgcolor="#FFFFCC"></td>\n\
+\ <td align="left" bgcolor="#FFFFCC" colspan="3">Reported warnings may not be accurate because {0} has {1} resolution problems.</td>\n\
+\ </tr>\n
+# {0} component id
+# {1} component resolution problem number
+fullReportTask_resolutiondetails=<p><b><font color="#FF0000">Reported warnings may not be accurate because {0} has {1} resolution problems. See the Component Resolution category for details.</font></b></p>\n
+
UseTask_no_scan_both_types_not_searched_for=Build stopping - neither API, internal nor illegal references are being searched for
AddedElement=ADDED
-AnalysisReportConversionTask_BundleErrorNewline=<br>\n
-AnalysisReportConversionTask_NotSetupForAPIAnalysis=Not Setup For API Analysis
+AnalysisReportConversionTask_component_resolution_header=Component Resolution
RemovedElement=REMOVED
ChangedElement=CHANGED
deprecationReportTask_componentEntry=<table border="1" width="80%">\n\

Back to the top