diff --git a/services/core/java/com/android/server/integrity/serializer/RuleBinarySerializer.java b/services/core/java/com/android/server/integrity/serializer/RuleBinarySerializer.java index 7ecd6240e49ad..d4f41eb5c9e04 100644 --- a/services/core/java/com/android/server/integrity/serializer/RuleBinarySerializer.java +++ b/services/core/java/com/android/server/integrity/serializer/RuleBinarySerializer.java @@ -32,7 +32,7 @@ public class RuleBinarySerializer implements RuleSerializer { } @Override - public String serialize(List rules, Optional formatVersion) { + public byte[] serialize(List rules, Optional formatVersion) { // TODO: Implement text serializer. return null; } diff --git a/services/core/java/com/android/server/integrity/serializer/RuleSerializer.java b/services/core/java/com/android/server/integrity/serializer/RuleSerializer.java index 1125f788f635d..4fcff65fc011f 100644 --- a/services/core/java/com/android/server/integrity/serializer/RuleSerializer.java +++ b/services/core/java/com/android/server/integrity/serializer/RuleSerializer.java @@ -29,7 +29,7 @@ public interface RuleSerializer { void serialize(List rules, Optional formatVersion, OutputStream outputStream) throws RuleSerializeException; - /** Serialize rules to a string. */ - String serialize(List rule, Optional formatVersion) + /** Serialize rules to a ByteArray. */ + byte[] serialize(List rule, Optional formatVersion) throws RuleSerializeException; } diff --git a/services/core/java/com/android/server/integrity/serializer/RuleXmlSerializer.java b/services/core/java/com/android/server/integrity/serializer/RuleXmlSerializer.java index 254baba65df80..3ec9cf2941362 100644 --- a/services/core/java/com/android/server/integrity/serializer/RuleXmlSerializer.java +++ b/services/core/java/com/android/server/integrity/serializer/RuleXmlSerializer.java @@ -62,14 +62,14 @@ public class RuleXmlSerializer implements RuleSerializer { } @Override - public String serialize(List rules, Optional formatVersion) + public byte[] serialize(List rules, Optional formatVersion) throws RuleSerializeException { try { XmlSerializer xmlSerializer = Xml.newSerializer(); StringWriter writer = new StringWriter(); xmlSerializer.setOutput(writer); serializeRules(rules, xmlSerializer); - return writer.toString(); + return writer.toString().getBytes(StandardCharsets.UTF_8); } catch (Exception e) { throw new RuleSerializeException(e.getMessage(), e); } diff --git a/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleXmlSerializerTest.java b/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleXmlSerializerTest.java index 180de2f09f09e..5903b5a11d222 100644 --- a/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleXmlSerializerTest.java +++ b/services/tests/servicestests/src/com/android/server/integrity/serializer/RuleXmlSerializerTest.java @@ -34,6 +34,7 @@ import org.junit.runners.JUnit4; import java.io.ByteArrayOutputStream; import java.io.OutputStream; +import java.nio.charset.StandardCharsets; import java.util.Arrays; import java.util.Collections; import java.util.LinkedHashMap; @@ -49,11 +50,11 @@ public class RuleXmlSerializerTest { RuleSerializer xmlSerializer = new RuleXmlSerializer(); String expectedRules = ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -82,11 +83,11 @@ public class RuleXmlSerializerTest { + "" + ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Arrays.asList(rule1, rule2), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -128,8 +129,8 @@ public class RuleXmlSerializerTest { /* formatVersion= */ Optional.empty(), outputStream); - String actualRules = outputStream.toString(); - assertEquals(expectedRules, actualRules); + byte[] actualRules = outputStream.toString().getBytes(StandardCharsets.UTF_8); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -165,11 +166,11 @@ public class RuleXmlSerializerTest { + "" + ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -215,11 +216,11 @@ public class RuleXmlSerializerTest { + "" + ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -265,11 +266,11 @@ public class RuleXmlSerializerTest { + "" + ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -297,11 +298,11 @@ public class RuleXmlSerializerTest { + "" + ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -327,11 +328,11 @@ public class RuleXmlSerializerTest { + "" + ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test @@ -355,11 +356,11 @@ public class RuleXmlSerializerTest { + "" + ""; - String actualRules = + byte[] actualRules = xmlSerializer.serialize( Collections.singletonList(rule), /* formatVersion= */ Optional.empty()); - assertEquals(expectedRules, actualRules); + assertEquals(expectedRules, new String(actualRules, StandardCharsets.UTF_8)); } @Test