diff options
author | cvs2git | 2006-06-13 04:16:30 +0000 |
---|---|---|
committer | cvs2git | 2006-06-13 04:16:30 +0000 |
commit | 30d866faea7c5b7a3427b7d0ecc812a8bf0ce24b (patch) | |
tree | f00e36ca9f7daa47ad5816ab1b2a71cd14019740 /org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/XmlCleaner.java | |
parent | 67a70de8da422c8c6dee91d6ed80a2f7eb0f246f (diff) | |
download | org.eclipse.mylyn.tasks-30d866faea7c5b7a3427b7d0ecc812a8bf0ce24b.tar.gz org.eclipse.mylyn.tasks-30d866faea7c5b7a3427b7d0ecc812a8bf0ce24b.tar.xz org.eclipse.mylyn.tasks-30d866faea7c5b7a3427b7d0ecc812a8bf0ce24b.zip |
This commit was manufactured by cvs2svn to create tag 'Root_e_3_1'.Root_e_3_1
Sprout from e_3_1 2006-03-17 18:50:26 UTC cvs2git 'This commit was manufactured by cvs2svn to create branch 'e_3_1'.'
Cherrypick from e_3_1 2006-06-13 04:16:29 UTC cvs2git 'This commit was manufactured by cvs2svn to create branch 'e_3_1'.':
org.eclipse.mylyn.bugzilla.core/.classpath
org.eclipse.mylyn.bugzilla.core/.settings/org.eclipse.ltk.core.refactoring.prefs
org.eclipse.mylyn.bugzilla.core/META-INF/MANIFEST.MF
org.eclipse.mylyn.bugzilla.core/about.html
org.eclipse.mylyn.bugzilla.core/build.properties
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/AbstractReportFactory.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaAttachmentHandler.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaAttributeFactory.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaPlugin.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaReportElement.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaReportSubmitForm.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaRepositoryUtil.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaTaskData.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/IBugzillaConstants.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/KeywordParser.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/NewBugzillaReport.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/RepositoryConfiguration.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/RepositoryConfigurationFactory.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/RepositoryReportFactory.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/SaxBugReportContentHandler.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/SaxConfigurationContentHandler.java
org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/XmlCleaner.java
org.eclipse.mylyn.bugzilla.tests/META-INF/MANIFEST.MF
org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/BugzillaTaskHyperlinkDetectorTest.java
org.eclipse.mylyn.bugzilla.tests/testdata/contexts/.cvsignore
org.eclipse.mylyn.bugzilla.tests/testdata/contexts/empty.txt
org.eclipse.mylyn.bugzilla.tests/testdata/pages/test-report-222attachment.html
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/BugzillaHyperLink.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/WebBrowserDialog.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/AbstractBugzillaQueryPage.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaCustomQueryWizardPage.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaQueryTypeWizardPage.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/NewBugzillaQueryWizard.java
org.eclipse.mylyn.help.ui/.externalToolBuilders/org.eclipse.jdt.core.javabuilder.launch
org.eclipse.mylyn.help.ui/.project
org.eclipse.mylyn.help.ui/.settings/org.eclipse.ltk.core.refactoring.prefs
org.eclipse.mylyn.help.ui/META-INF/MANIFEST.MF
org.eclipse.mylyn.help.ui/about.html
org.eclipse.mylyn.help.ui/doc/contributing.html
org.eclipse.mylyn.help.ui/doc/dev/changes.html
org.eclipse.mylyn.help.ui/doc/dev/dependencies.vsd
org.eclipse.mylyn.help.ui/doc/dev/index.html
org.eclipse.mylyn.help.ui/doc/dev/model.vsd
org.eclipse.mylyn.help.ui/doc/dev/plan.html
org.eclipse.mylyn.help.ui/doc/faq.html
org.eclipse.mylyn.help.ui/doc/images/0.4.10/bugzilla-editor.gif
org.eclipse.mylyn.help.ui/doc/images/0.4.10/bugzilla-versions.gif
org.eclipse.mylyn.help.ui/doc/images/0.4.10/task-activity.gif
org.eclipse.mylyn.help.ui/doc/images/0.4.10/tasklist-status.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/apply-project-explorer.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/apply-task-markers.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/colors-and-fonts.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/navigate-alt-click.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/open-task-from-history.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/query-synchronization.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/resource-history-open-task.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/task-editor-hyperlinks.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/tasklist-archive.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.0/tasklist-backup.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.1/apply-tasklist.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.1/context-attach-popup.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.1/context-retrieve.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.1/editors-close.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.1/jira-query-custom.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.2/bugzilla-encodings-editor.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.2/bugzilla-encodings-settings.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.2/bugzilla-search.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.2/changesets-model-based.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.2/jira-editor.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.2/task-repository-sync.gif
org.eclipse.mylyn.help.ui/doc/images/0.5.2/tasklist-apply-mylar.gif
org.eclipse.mylyn.help.ui/doc/images/dev/gray.gif
org.eclipse.mylyn.help.ui/doc/images/dev/tbar_l.gif
org.eclipse.mylyn.help.ui/doc/images/dev/tbar_r.gif
org.eclipse.mylyn.help.ui/doc/images/faq/content-assist.gif
org.eclipse.mylyn.help.ui/doc/integrating.html
org.eclipse.mylyn.help.ui/doc/new-0.3.html
org.eclipse.mylyn.help.ui/doc/new-0.4.html
org.eclipse.mylyn.help.ui/doc/new.html
org.eclipse.mylyn.help.ui/doc/overview.html
Cherrypick from e_3_1 2006-02-22 01:53:31 UTC cvs2git 'This commit was manufactured by cvs2svn to create branch 'e_3_1'.':
org.eclipse.mylyn.bugzilla-feature/build.properties
org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasklist/tests/TaskListManagerTest.java
org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasklist/tests/TaskListNotificationManagerTest.java
org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasklist/tests/TaskTestUtil.java
org.eclipse.mylyn.tasks.ui/.settings/org.eclipse.pde.prefs
org.eclipse.mylyn.tasks.ui/META-INF/MANIFEST.MF
org.eclipse.mylyn.tasks.ui/plugin.xml
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ScheduledTaskListRefreshJob.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/SynchronizeReportsAction.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/TaskListNotificationManager.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/TaskListNotificationPopup.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/TaskListPatternFilter.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/actions/AddRepositoryAction.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/actions/OpenTaskListElementAction.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskListFilteredTree.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskListView.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskRepositoryLabelProvider.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/AbstractAddExistingTaskWizard.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/AbstractRepositoryClientWizard.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/AddExistingTaskWizard.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/AddRepositoryWizard.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/EditRepositoryWizard.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/NewQueryWizard.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/SelectRepositoryClientPage.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/SelectRepositoryPage.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/TaskDataImportWizard.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/util/TaskListExtensionReader.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/util/TaskListSaveManager.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/util/TaskListWriter.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/AbstractRepositoryClient.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/MylarTaskListPlugin.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/TaskRepositoryManager.java
Cherrypick from e_3_1 2006-04-28 23:42:30 UTC cvs2git 'This commit was manufactured by cvs2svn to create branch 'e_3_1'.':
org.eclipse.mylyn.bugzilla.tests/.classpath
org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/AllBugzillaTests.java
org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/Bugzilla220ParserTest.java
org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/BugzillaConfigurationTest.java
org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/BugzillaProductParserTest.java
org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/BugzillaSearchEngineTest.java
org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/ReportAttachmentTest.java
org.eclipse.mylyn.bugzilla.ui/.classpath
org.eclipse.mylyn.bugzilla.ui/META-INF/MANIFEST.MF
org.eclipse.mylyn.bugzilla.ui/plugin.xml
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/BugzillaTaskHyperlinkDetector.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/BugzillaUITools.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/FavoritesView.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/editor/AbstractBugEditor.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/editor/ExistingBugEditor.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/editor/RepositoryTextViewer.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/search/BugzillaSearchPage.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaRepositoryConnector.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaRepositorySettingsPage.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaTask.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaTaskDecorator.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaTaskEditor.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/BugzillaTaskExternalizer.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/EditBugzillaQueryWizard.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/tasklist/OpenBugzillaReportJob.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/wizard/AbstractBugWizard.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/wizard/AbstractBugzillaWizardPage.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/wizard/BugzillaProductPage.java
org.eclipse.mylyn.bugzilla.ui/src/org/eclipse/mylyn/internal/bugzilla/ui/wizard/NewBugzillaReportWizard.java
Cherrypick from e_3_1 2005-11-15 18:47:18 UTC cvs2git 'This commit was manufactured by cvs2svn to create branch 'e_3_1'.':
org.eclipse.mylyn-feature/feature.xml
org.eclipse.mylyn.bugzilla-feature/feature.xml
Delete:
org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasklist/tests/TableSorterTest.java
org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasklist/tests/TaskActivityViewTest.java
org.eclipse.mylyn.tasks.tests/src/org/eclipse/mylyn/tasklist/tests/TaskKeyComparatorTest.java
org.eclipse.mylyn.tasks.ui/build.xml
org.eclipse.mylyn.tasks.ui/icons/elcl16/expandall.gif
org.eclipse.mylyn.tasks.ui/icons/elcl16/filter-archive.gif
org.eclipse.mylyn.tasks.ui/icons/etool16/task-notes.gif
org.eclipse.mylyn.tasks.ui/icons/etool16/task-repository-notes.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/overlay-synchronizing.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/priority-1.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/priority-2.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/priority-3.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/priority-4.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/priority-5.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/status-conflict.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/status-normal.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/status-server-context.gif
org.eclipse.mylyn.tasks.ui/icons/eview16/task-activity.gif
org.eclipse.mylyn.tasks.ui/icons/wizban/banner-repository.gif
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/planner/ui/TaskPlannerLabelProvider.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/PlanningPerspectiveFactory.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/TaskArchiveFilter.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/TaskCompletionFilter.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/TaskListColorsAndFonts.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/TaskListImageDescriptor.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/actions/ExpandAllAction.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/actions/FilterArchiveContainerAction.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/actions/NewRepositoryTaskAction.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskActivityContentProvider.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskActivityLabelProvider.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskActivityView.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskActivityViewSorter.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskKeyComparator.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/views/TaskListTableSorter.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasklist/ui/wizards/NewRepositoryTaskPage.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/AbstractRepositoryConnector.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/AbstractTaskContainer.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/DateRangeActivityDelegate.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/DateRangeContainer.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/ITaskListChangeListener.java
org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/provisional/tasklist/TaskArchive.java
Diffstat (limited to 'org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/XmlCleaner.java')
-rw-r--r-- | org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/XmlCleaner.java | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/XmlCleaner.java b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/XmlCleaner.java new file mode 100644 index 000000000..764b37e54 --- /dev/null +++ b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/XmlCleaner.java @@ -0,0 +1,65 @@ +/******************************************************************************* + * Copyright (c) 2004 - 2006 University Of British Columbia 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 + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * University Of British Columbia - initial API and implementation + *******************************************************************************/ + +package org.eclipse.mylar.internal.bugzilla.core; + +import java.io.IOException; +import java.io.Reader; +import java.text.ParseException; + +import org.eclipse.mylar.internal.tasklist.util.HtmlStreamTokenizer; +import org.eclipse.mylar.internal.tasklist.util.HtmlTag; +import org.eclipse.mylar.internal.tasklist.util.HtmlStreamTokenizer.Token; + +/** + * This is in place to escape & characters within the resource and rdf:about + * attributes. Currently the values are not escaped which causes sax parser + * errors. This bug has been filed and can be found here: + * https://bugzilla.mozilla.org/show_bug.cgi?id=264785 + * + * @author Rob Elves + */ +public class XmlCleaner { + + public static StringBuffer clean(Reader in) { + + HtmlStreamTokenizer tokenizer = new HtmlStreamTokenizer(in, null); + StringBuffer content = new StringBuffer(); + + // Hack since HtmlStreamTokenizer not familiar with xml tag. + content.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); + try { + for (Token token = tokenizer.nextToken(); token.getType() != Token.EOF; token = tokenizer.nextToken()) { + + if (token.getType() == Token.TAG) { + HtmlTag tag = (HtmlTag) token.getValue(); + if (tag.getAttribute("resource") != null) { + String resourceID = tag.getAttribute("resource"); + tag.setAttribute("resource", resourceID.replace("&", "&")); + } + if (tag.getAttribute("rdf:about") != null) { + String resourceID = tag.getAttribute("rdf:about"); + tag.setAttribute("rdf:about", resourceID.replace("&", "&")); + } + } + if (!token.toString().startsWith("<?xml")) { + content.append(token.toString()); + } + } + } catch (IOException e) { + + } catch (ParseException e) { + + } + return content; + } + +} |