java/code/src/com/redhat/rhn/taskomatic/task/repomd/FilelistsXmlWriter.java | 2 -
java/code/src/com/redhat/rhn/taskomatic/task/repomd/OtherXmlWriter.java | 2 -
java/code/src/com/redhat/rhn/taskomatic/task/repomd/PrimaryXmlWriter.java | 2 -
java/code/src/com/redhat/rhn/taskomatic/task/repomd/RepomdWriter.java | 16 +++++++---
java/code/src/com/redhat/rhn/taskomatic/task/repomd/UpdateInfoWriter.java | 2 -
5 files changed, 16 insertions(+), 8 deletions(-)
New commits:
commit 27348921f2fa804d578038a38e56e39ad5c9ea8a
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Mon Jan 10 15:59:31 2011 +0100
663403 - correctly escape updateinfo.xml
diff --git a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/FilelistsXmlWriter.java b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/FilelistsXmlWriter.java
index 1794350..9a2369f 100644
--- a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/FilelistsXmlWriter.java
+++ b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/FilelistsXmlWriter.java
@@ -43,7 +43,7 @@ public class FilelistsXmlWriter extends RepomdWriter {
* @param writer The writer object for filelist xml
*/
public FilelistsXmlWriter(Writer writer) {
- super(writer);
+ super(writer, false);
}
/**
diff --git a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/OtherXmlWriter.java b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/OtherXmlWriter.java
index 4845027..96cfb97 100644
--- a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/OtherXmlWriter.java
+++ b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/OtherXmlWriter.java
@@ -44,7 +44,7 @@ public class OtherXmlWriter extends RepomdWriter {
* @param writer The writer object for other.xml
*/
public OtherXmlWriter(Writer writer) {
- super(writer);
+ super(writer, false);
}
/**
diff --git a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/PrimaryXmlWriter.java b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/PrimaryXmlWriter.java
index ce49faf..6b45d80 100644
--- a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/PrimaryXmlWriter.java
+++ b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/PrimaryXmlWriter.java
@@ -49,7 +49,7 @@ public class PrimaryXmlWriter extends RepomdWriter {
* @param writer The writer object for primary xml
*/
public PrimaryXmlWriter(Writer writer) {
- super(writer);
+ super(writer, false);
}
/**
diff --git a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/RepomdWriter.java b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/RepomdWriter.java
index c4a87a1..5d128cd 100644
--- a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/RepomdWriter.java
+++ b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/RepomdWriter.java
@@ -52,15 +52,23 @@ public abstract class RepomdWriter {
/**
* Constructor takes in a writer
* @param writer content writer
+ * @param shouldEscape says whether write output shall be escaped
*/
- public RepomdWriter(Writer writer) {
+ public RepomdWriter(Writer writer, boolean shouldEscape) {
OutputFormat of = new OutputFormat();
of.setPreserveSpace(true);
+ XMLSerializer serializer = null;
- //We use an unescaping serializer because we'll be appending xml
- XMLSerializer serializer = new UnescapingXmlSerializer(writer, of);
-
+ if (shouldEscape) {
+ // XMLSerializer used to escape chars like < >
+ serializer = new XMLSerializer(writer, of);
+ }
+ else {
+ // UnescapingXmlSerializer doesn't escape anything,
+ // input shall already be escaped
+ serializer = new UnescapingXmlSerializer(writer, of);
+ }
try {
handler = new SimpleContentHandler(serializer.asContentHandler());
diff --git a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/UpdateInfoWriter.java b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/UpdateInfoWriter.java
index 91b6816..cd9dd28 100644
--- a/java/code/src/com/redhat/rhn/taskomatic/task/repomd/UpdateInfoWriter.java
+++ b/java/code/src/com/redhat/rhn/taskomatic/task/repomd/UpdateInfoWriter.java
@@ -40,7 +40,7 @@ public class UpdateInfoWriter extends RepomdWriter {
* @param writer xml writer object
*/
public UpdateInfoWriter(Writer writer) {
- super(writer);
+ super(writer, true);
}
/**