]>
| Commit | Line | Data |
|---|---|---|
| 3e67e5c9 | 1 | #!/usr/bin/env python3 |
| db9ecf05 | 2 | # SPDX-License-Identifier: LGPL-2.1-or-later |
| 1a13e31d | 3 | |
| 21ac6ff1 | 4 | from lxml import etree as tree |
| 1a13e31d | 5 | |
| 54a9070c | 6 | |
| 21ac6ff1 | 7 | class CustomResolver(tree.Resolver): |
| 54a9070c | 8 | def resolve(self, url, _id, context): |
| 21ac6ff1 ZJS |
9 | if 'custom-entities.ent' in url: |
| 10 | return self.resolve_filename('man/custom-entities.ent', context) | |
| c18dde32 ZJS |
11 | if 'ethtool-link-mode' in url: |
| 12 | return self.resolve_filename('src/shared/ethtool-link-mode.xml', context) | |
| ea9826eb | 13 | if 'bpf-delegate' in url: |
| 2b912d20 | 14 | return self.resolve_filename('src/core/bpf-delegate.xml', context) |
| 1a13e31d | 15 | |
| 54a9070c FS |
16 | return None |
| 17 | ||
| 32dcef3a | 18 | _parser = tree.XMLParser() |
| 54a9070c | 19 | # pylint: disable=no-member |
| 32dcef3a | 20 | _parser.resolvers.add(CustomResolver()) |
| 35df7443 | 21 | |
| 32dcef3a ZJS |
22 | def xml_parse(page): |
| 23 | doc = tree.parse(page, _parser) | |
| 24 | doc.xinclude() | |
| 25 | return doc | |
| 35df7443 | 26 | |
| 32dcef3a ZJS |
27 | def xml_print(xml): |
| 28 | return tree.tostring(xml, pretty_print=True, encoding='utf-8') |