Difference between revisions of "ProfileManager"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
==Requirements== | ==Requirements== | ||
+ | ProfileManager have following list of responsibilities: | ||
+ | # Profile enumeration | ||
+ | # Profile creation/destruction/renaming | ||
+ | # Profile selection | ||
+ | ## On profile change, a signal/event should be emit to all entities that store their settings in profile | ||
+ | # Provide access to current profile | ||
+ | |||
+ | |||
+ | Profile responsibilities: | ||
+ | # Maintain a list of enabled/disabled plugins | ||
+ | # Provide get/set methods for this list | ||
+ | # Provide access to config storage object (SIM::Config) | ||
+ | |||
+ | |||
+ | Config responsibilities: | ||
+ | # Saving/loading profile data to/from disk | ||
+ | # Storing/restoring PropertyHub data | ||
+ | In other words, Config should be an intermediate object between PropertyHub and config files on disk | ||
+ | |||
+ | PropertyHub responsibilities: | ||
+ | # Generic data storage with string keys | ||
+ | # Serialization/deserialization | ||
+ | |||
==Tests== | ==Tests== |
Latest revision as of 20:20, 25 November 2009
Requirements
ProfileManager have following list of responsibilities:
- Profile enumeration
- Profile creation/destruction/renaming
- Profile selection
- On profile change, a signal/event should be emit to all entities that store their settings in profile
- Provide access to current profile
Profile responsibilities:
- Maintain a list of enabled/disabled plugins
- Provide get/set methods for this list
- Provide access to config storage object (SIM::Config)
Config responsibilities:
- Saving/loading profile data to/from disk
- Storing/restoring PropertyHub data
In other words, Config should be an intermediate object between PropertyHub and config files on disk
PropertyHub responsibilities:
- Generic data storage with string keys
- Serialization/deserialization