So if we have 10 clients monitoring the blacklist the daemon it will result in 10 GetTemplates() calls on the bus? ;-) How about putting the new list of templates in the Changed() signal? That way there'll be no extra noise on the buzz when the list changes.
Anyway, I am still not entirely convinced about this API. I think clients need a way to identify which blacklists come from where. I think maybe a naming scheme would provide a better API. Like fx:
Apps would use their normal namespaced bus names to construct blacklist names. Like 'org.gnome.Epiphany.PrivateBrowsing' for the blacklist template epiphany install when you enter private mode.
So if we have 10 clients monitoring the blacklist the daemon it will result in 10 GetTemplates() calls on the bus? ;-) How about putting the new list of templates in the Changed() signal? That way there'll be no extra noise on the buzz when the list changes.
Anyway, I am still not entirely convinced about this API. I think clients need a way to identify which blacklists come from where. I think maybe a naming scheme would provide a better API. Like fx:
Let 'E' define the event dbus signature.
Methods:
- GetTemplates() -> ({sE})
- AddTemplate(s, E)
- RemoveTemplate(s)
Signals:
- Changed({sE})
Apps would use their normal namespaced bus names to construct blacklist names. Like 'org.gnome. Epiphany. PrivateBrowsing ' for the blacklist template epiphany install when you enter private mode.