After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 381323 - Refactor AEState objects to support observer pattern
Refactor AEState objects to support observer pattern
Status: RESOLVED FIXED
Product: lsr
Classification: Deprecated
Component: core
0.3.x
Other Linux
: Urgent normal
: 0.4.0
Assigned To: Peter Parente
LSR maintainers
Depends on:
Blocks:
 
 
Reported: 2006-12-01 16:27 UTC by Peter Parente
Modified: 2006-12-08 18:26 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Potential implementation (4.36 KB, text/plain)
2006-12-04 21:08 UTC, Peter Parente
Details

Description Peter Parente 2006-12-01 16:27:24 UTC
The current AEState class design has the following problems:

1) Arbitrary naming scheme for persisted versus non-persisted data.
2) Vague distinction between user configurable settings and data objects stored by a Perk to be shared across Perk instances.
3) Separation of data and metadata proxy without cross reference.
4) Lack of a model/view notification scheme caused by #3 (see bug #376101)

We need to rectify these problems while retaining the following fundamental features:

1) Ability to easily assign settings default values.
2) Ability to easily set/get settings as object attributes.
3) Ability to group settings to suggest relations for view generation.
4) Ability to specify metadata for view generation.
Comment 1 Peter Parente 2006-12-04 17:56:25 UTC
After speaking to Eitan:

5) Ability to receive setting notifications in devices as well as Perks (so Perks don't have to be responsible for communication with devices).
Comment 2 Peter Parente 2006-12-04 21:08:46 UTC
Created attachment 77682 [details]
Potential implementation
Comment 3 Peter Parente 2006-12-08 18:26:55 UTC
Completed. All five requirements listed above were satisfied. Documentation about the change and its effect on devices and Perks is (will be) available at http://live.gnome.org/LSR/ScratchPad/NewSettings.