This patch makes the per-provider 'data' directory available as a property of Providrer1 objects. The default value is relative to the base directory but it can be overridden to point at any directory.
Signed-off-by: Zygmunt Krynicki <[email protected]> --- plainbox/plainbox/impl/secure/providers/test_v1.py | 6 ++++++ plainbox/plainbox/impl/secure/providers/v1.py | 13 ++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/plainbox/plainbox/impl/secure/providers/test_v1.py b/plainbox/plainbox/impl/secure/providers/test_v1.py index d0f14bc..ce45665 100644 --- a/plainbox/plainbox/impl/secure/providers/test_v1.py +++ b/plainbox/plainbox/impl/secure/providers/test_v1.py @@ -540,6 +540,12 @@ class Provider1Tests(TestCase): """ self.assertEqual(self.provider.bin_dir, "base-dir/bin") + def test_data_dir(self): + """ + Verify that Provider1.data_dir attribute is set correctly + """ + self.assertEqual(self.provider.data_dir, "base-dir/data") + def test_whitelists_dir(self): """ Verify that Provider1.whitelists_dir attribute is set correctly diff --git a/plainbox/plainbox/impl/secure/providers/v1.py b/plainbox/plainbox/impl/secure/providers/v1.py index 68ae238..db19bc3 100644 --- a/plainbox/plainbox/impl/secure/providers/v1.py +++ b/plainbox/plainbox/impl/secure/providers/v1.py @@ -135,7 +135,7 @@ class Provider1(IProvider1, IProviderBackend1): """ def __init__(self, base_dir, name, version, description, secure, - gettext_domain=None, locale_dir=None): + gettext_domain=None, locale_dir=None, data_dir=None): """ Initialize the provider with the associated base directory. @@ -146,6 +146,7 @@ class Provider1(IProvider1, IProviderBackend1): """ self._base_dir = base_dir self._locale_dir = locale_dir + self._data_dir = data_dir self._name = name self._version = version self._description = description @@ -218,6 +219,16 @@ class Provider1(IProvider1, IProviderBackend1): return os.path.join(self._base_dir, "whitelists") @property + def data_dir(self): + """ + absolute path of the data directory + """ + if self._data_dir is not None: + return self._data_dir + else: + return os.path.join(self._base_dir, "data") + + @property def locale_dir(self): """ absolute path of the directory with locale data -- 1.9.0 -- Mailing list: https://launchpad.net/~checkbox-dev Post to : [email protected] Unsubscribe : https://launchpad.net/~checkbox-dev More help : https://help.launchpad.net/ListHelp

