Files
freeipa/install/ui
Petr Vobornik 18a6ab356a Inter-facet expiration
Problem:

When some facet perform action which modifies data, some other facet may become expired.

Example: User modifies group's description. Now group search facet contains old data and has to be refreshed.

Solution:

New event was added to facet: on_update. It should be executed when facet performs action which modifies data ie: details facet update or add entry to dnsrecord.

Then entity policies were introduced. Entity policies are a objects which are stored in entity.policies. They have similar function as facet_policies - performing communications and other functionality between facets. This way facets don't have to contain such logic and thus they aren't dependant on each other.

This patch adds IPA.facet_update_policy, IPA.adder_facet_update_policy, IPA.search_facet_update_policy, IPA.details_facet_update_policy.

IPA.facet_update_policy: On facets_created it bind itself to [current entity].[source facet].[event]. Default event is on_update. When the event is executed it sets expiration flag to [dest entity].[dest facet].

IPA.search_facet_update_policy: IPA.facet_update_policy where source facet = search, dest facet = details, dest entity = current entity. Its a default policy for updatein changes from search facet to details facet. Right now it isn't needed but it will be needed when action lists come to play.

IPA.details_facet_update_policy: same as IPA.search_facet_update_policy just reversed. Very important.

IPA.adder_facet_update_policy: similar functionality, just source of the event is dialog. Default event is added (new event in entity_adder_dialog).

Entity policies should be specified in entity's spec object. If none are specified a default ones are used. Default policies are: IPA.search_facet_update_policy and IPA.details_facet_update_policy.

https://fedorahosted.org/freeipa/ticket/2075
2012-03-29 13:39:53 +02:00
..
2011-12-14 15:44:36 +00:00
2012-03-23 16:59:12 +01:00
2012-03-02 11:45:21 -06:00
2012-03-29 13:39:53 +02:00
2012-03-29 13:39:37 +02:00
2012-03-29 13:39:53 +02:00
2012-03-29 13:39:53 +02:00
2012-03-29 13:39:53 +02:00
2011-11-14 16:47:10 -05:00
2012-03-15 16:08:16 +01:00
2012-03-29 13:39:53 +02:00
2011-12-06 22:08:07 +00:00
2012-03-29 13:39:53 +02:00
2012-03-29 13:39:53 +02:00
2011-02-03 15:04:23 -05:00
2012-03-29 13:39:53 +02:00
2012-03-19 18:37:39 +01:00
2012-03-20 17:32:23 +01:00
2011-12-06 22:07:52 +00:00
2012-03-29 13:39:37 +02:00
2011-10-27 14:05:12 +00:00
2011-01-20 14:12:47 +00:00
2011-01-20 14:12:47 +00:00
2012-03-15 16:08:16 +01:00
2011-01-20 14:12:47 +00:00
2012-03-02 11:04:33 +01:00
2012-03-02 11:04:33 +01:00
2012-02-28 23:58:51 -05:00
2011-12-06 22:07:52 +00:00
2011-12-06 22:07:52 +00:00
2012-03-02 11:45:21 -06:00
2012-03-29 13:39:37 +02:00
2012-03-29 13:39:53 +02:00
2012-02-29 13:01:16 +01:00
2012-03-29 13:39:53 +02:00
2012-03-19 18:37:39 +01:00
2012-02-28 23:58:51 -05:00