From 92ecbd3e276dd19605c6fdfa94c853cb0380fc0b Mon Sep 17 00:00:00 2001 From: "jia.shao.peng" Date: Tue, 3 May 2011 06:13:21 +0000 Subject: [PATCH] TOOLS: Update Metadata generation code to output metadata on multiple lines. Patch contributed by philip.liard git-svn-id: http://libphonenumber.googlecode.com/svn/trunk@189 ee073f10-1060-11df-b6a4-87a95322a99c --- .../i18n/phonenumbers/tools/BuildMetadataCppFromXml.java | 16 +++++++++++++--- .../phonenumbers/tools/BuildMetadataCppFromXmlTest.java | 2 +- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/tools/java/cpp-build/src/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXml.java b/tools/java/cpp-build/src/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXml.java index 6c5bb21..873a404 100644 --- a/tools/java/cpp-build/src/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXml.java +++ b/tools/java/cpp-build/src/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXml.java @@ -152,9 +152,9 @@ public class BuildMetadataCppFromXml extends Command { pw.write(CopyrightNotice.TEXT); pw.println(String.format("#include \"%s.h\"", baseFilename)); pw.println(); - pw.print(String.format("static const unsigned char %s_data[] = { ", baseFilename)); + pw.print(String.format("static const unsigned char %s_data[] = {", baseFilename)); emitStaticArrayCode(pw); - pw.println(" };"); + pw.println("};"); pw.println(); pw.println(String.format("int %s_size() {", baseFilename)); @@ -174,9 +174,19 @@ public class BuildMetadataCppFromXml extends Command { */ void emitStaticArrayCode(PrintWriter pw) throws IOException { byte[] buf = binaryStream.toByteArray(); + pw.print("\n "); for (int i = 0; i < buf.length; i++) { - pw.printf("0x%02X, ", buf[i]); + String format = "0x%02X"; + + if (i == buf.length - 1) { + format += "\n"; + } else if ((i + 1) % 13 == 0) { // 13 bytes per line to have lines of 79 characters. + format += ",\n "; + } else { + format += ", "; + } + pw.printf(format, buf[i]); } pw.flush(); binaryStream.flush(); diff --git a/tools/java/cpp-build/test/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXmlTest.java b/tools/java/cpp-build/test/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXmlTest.java index 658b390..e096ee0 100644 --- a/tools/java/cpp-build/test/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXmlTest.java +++ b/tools/java/cpp-build/test/com/google/i18n/phonenumbers/tools/BuildMetadataCppFromXmlTest.java @@ -49,7 +49,7 @@ public class BuildMetadataCppFromXmlTest { buildMetadataCppFromXml.setBinaryStream(stream); buildMetadataCppFromXml.emitStaticArrayCode(printWriter); - assertEquals("0xCA, 0xFE, 0xBA, 0xBE, ", result.toString()); + assertEquals("\n 0xCA, 0xFE, 0xBA, 0xBE\n", result.toString()); } catch (IOException e) { fail(e.getMessage()); } -- 2.7.4