Changeset View
Changeset View
Standalone View
Standalone View
swh/indexer/metadata_dictionary.py
Show First 20 Lines • Show All 389 Lines • ▼ Show 20 Lines | def parse_repositories(self, d): | ||||
... <name>Codehaus Snapshots</name> | ... <name>Codehaus Snapshots</name> | ||||
... <url>http://snapshots.maven.codehaus.org/maven2</url> | ... <url>http://snapshots.maven.codehaus.org/maven2</url> | ||||
... <layout>default</layout> | ... <layout>default</layout> | ||||
... </repository> | ... </repository> | ||||
... </repositories> | ... </repositories> | ||||
... ''') | ... ''') | ||||
>>> MavenMapping().parse_repositories(d) | >>> MavenMapping().parse_repositories(d) | ||||
""" | """ | ||||
if 'repositories' not in d: | repositories = d.get('repositories') | ||||
if not repositories: | |||||
results = [self.parse_repository(d, self._default_repository)] | results = [self.parse_repository(d, self._default_repository)] | ||||
else: | else: | ||||
repositories = d.get('repositories', {}).get('repository', []) | repositories = repositories.get('repository') or [] | ||||
if not isinstance(repositories, list): | if not isinstance(repositories, list): | ||||
repositories = [repositories] | repositories = [repositories] | ||||
results = [self.parse_repository(d, repo) | results = [self.parse_repository(d, repo) | ||||
for repo in repositories] | for repo in repositories] | ||||
return [res for res in results if res] or None | return [res for res in results if res] or None | ||||
def parse_repository(self, d, repo): | def parse_repository(self, d, repo): | ||||
if repo.get('layout', 'default') != 'default': | if repo.get('layout', 'default') != 'default': | ||||
▲ Show 20 Lines • Show All 226 Lines • Show Last 20 Lines |