diff options
Diffstat (limited to 'manifest_loader.py')
| -rw-r--r-- | manifest_loader.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/manifest_loader.py b/manifest_loader.py index 85ad3ea1..1ce1c1f3 100644 --- a/manifest_loader.py +++ b/manifest_loader.py | |||
| @@ -15,13 +15,17 @@ | |||
| 15 | 15 | ||
| 16 | from manifest_xml import XmlManifest | 16 | from manifest_xml import XmlManifest |
| 17 | 17 | ||
| 18 | def ParseManifest(repodir): | 18 | def ParseManifest(repodir, type=None): |
| 19 | if type: | ||
| 20 | return type(repodir) | ||
| 19 | return XmlManifest(repodir) | 21 | return XmlManifest(repodir) |
| 20 | 22 | ||
| 21 | _manifest = None | 23 | _manifest = None |
| 22 | 24 | ||
| 23 | def GetManifest(repodir, reparse=False): | 25 | def GetManifest(repodir, reparse=False, type=None): |
| 24 | global _manifest | 26 | global _manifest |
| 25 | if _manifest is None or reparse: | 27 | if _manifest is None \ |
| 26 | _manifest = ParseManifest(repodir) | 28 | or reparse \ |
| 29 | or (type and _manifest.__class__ != type): | ||
| 30 | _manifest = ParseManifest(repodir, type=type) | ||
| 27 | return _manifest | 31 | return _manifest |
