Service configuration rework
The configuration of the client currently is not optimal.
Currently we map group / entitlement names to json objects describing the services which are provided for this group / entitlment. This causes the following problems: If a service is provided for both entitlements and groups we would have to check if all occurances of a service in the maps are identical (which is a headache).
I therefore propose the following changes to the client config:
- Add a field ServiceMap with type
map[string]service, which maps service identifiers to the related service struct
- Change the fields GroupToServices and EntitlementToServices from their current
type map[string]serviceto the type
map[string]string(meaning that they map from group/entitlement name to a list of service identifiers).
This change would make a lot of ambiguities in the config impossible.