diff options
author | Simon Schampijer <simon@schampijer.de> | 2010-10-20 10:46:14 (GMT) |
---|---|---|
committer | Simon Schampijer <simon@schampijer.de> | 2010-10-20 10:46:14 (GMT) |
commit | cd603de21269975bb4c5b14527039c06704014cd (patch) | |
tree | aa96844a101cec0db784e4aa22930d83c3ac9a7d | |
parent | 2514b45b0470c7c175dc1b37ecd31090825d75a9 (diff) | |
parent | 2bbe3b252a4043cb3a0ddda8ef4ba7099a695a81 (diff) |
Merge branch 'sucrose-0.84' of gitorious@git.sugarlabs.org:sugar/mainline into sucrose-0.84
-rw-r--r-- | src/jarabe/model/bundleregistry.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/jarabe/model/bundleregistry.py b/src/jarabe/model/bundleregistry.py index 1b6570e..af410a8 100644 --- a/src/jarabe/model/bundleregistry.py +++ b/src/jarabe/model/bundleregistry.py @@ -156,12 +156,22 @@ class BundleRegistry(gobject.GObject): self._write_favorites_file() def get_bundle(self, bundle_id): - """Returns an bundle given his service name""" + """Returns a bundle given service name or substring, + returns None if there is either no match, or more than one + match by substring.""" + result = [] + key = bundle_id.lower() + for bundle in self._bundles: - if bundle.get_bundle_id() == bundle_id: + name = bundle.get_bundle_id() + if name == bundle_id: return bundle + if key in name.lower(): + result.append(bundle) + if len(result) == 1: + return result[0] return None - + def __iter__(self): return self._bundles.__iter__() |