The data_decode service should have XML parsing capabilities |
||
Issue descriptionWe should add some simple XML parsing capabilities to the data-decoder services so that no new service needs to be created for parsing XML safely. It would transform XML into a base:Value.
,
Nov 28 2017
,
Nov 29 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ed29765cac0c726deb98563941d915616b4c3d0b commit ed29765cac0c726deb98563941d915616b4c3d0b Author: Jay Civelli <jcivelli@google.com> Date: Wed Nov 29 04:17:46 2017 Adding a mode to SafeXmlParser for process sharing. Adding an optional |batch_id| parameter to SamleXmlParser::ParseXml() that so that parsings can end up sharing processes. This is useful for clients that parse XML files in batches and want to limit process churn. Bug: 784667 Change-Id: Iedafd927b4c3e06e10e6bb04f2232a732423b125 Reviewed-on: https://chromium-review.googlesource.com/777889 Reviewed-by: Scott Violet <sky@chromium.org> Reviewed-by: Ken Rockot <rockot@chromium.org> Commit-Queue: Jay Civelli <jcivelli@chromium.org> Cr-Commit-Position: refs/heads/master@{#519997} [modify] https://crrev.com/ed29765cac0c726deb98563941d915616b4c3d0b/chrome/browser/safe_xml_parser_browsertest.cc [modify] https://crrev.com/ed29765cac0c726deb98563941d915616b4c3d0b/services/data_decoder/public/cpp/safe_xml_parser.cc [modify] https://crrev.com/ed29765cac0c726deb98563941d915616b4c3d0b/services/data_decoder/public/cpp/safe_xml_parser.h
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61 commit c0e3a8e5486d92bab1dbe36563eea6515ffe9d61 Author: Jay Civelli <jcivelli@google.com> Date: Thu Nov 30 00:08:20 2017 Adding attribute and namespace support to the XML parser. Several improvements to the safe XML parser: - adding attribute support. - adding namespace support. A new namespace section exposing the namespace declared in a node is generated in the parsed Value. Also elements and attributes now use the fully qualified names (including namespace). - several methods added to the client library, for attribute and namespace access and for the needs of upcoming clients. - created a TestDataDecoderService class that can be used in tests to access a service_manager::Connector that can bind the data_decoder's interfaces. This has the advantage of not requiring a dependency to the private implementation of data_decoder that is required when using TestConnectorFactory directly. Bug: 784667 Change-Id: I9b87341eca5eed4a72f4d55cc29837a0e1468538 Reviewed-on: https://chromium-review.googlesource.com/773460 Reviewed-by: Ken Rockot <rockot@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Scott Graham <scottmg@chromium.org> Reviewed-by: Jay Civelli <jcivelli@chromium.org> Commit-Queue: Jay Civelli <jcivelli@chromium.org> Cr-Commit-Position: refs/heads/master@{#520316} [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/public/cpp/BUILD.gn [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/public/cpp/safe_xml_parser.cc [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/public/cpp/safe_xml_parser.h [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/public/cpp/safe_xml_parser_unittest.cc [add] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/public/cpp/test_data_decoder_service.cc [add] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/public/cpp/test_data_decoder_service.h [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/public/interfaces/xml_parser.mojom [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/xml_parser.cc [add] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/xml_parser_fuzzer_corpus/input8 [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/services/data_decoder/xml_parser_unittest.cc [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/third_party/libxml/chromium/libxml_utils.cc [modify] https://crrev.com/c0e3a8e5486d92bab1dbe36563eea6515ffe9d61/third_party/libxml/chromium/libxml_utils.h |
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, Nov 28 2017