mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2024-12-30 10:47:08 -06:00
18a6ab356a
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 |
||
---|---|---|
.. | ||
ext | ||
images | ||
test | ||
aci.js | ||
add.js | ||
association.js | ||
automember.js | ||
automount.js | ||
browser.js | ||
certificate.js | ||
details.js | ||
develop.js | ||
dialog.js | ||
dns.js | ||
entitle.js | ||
entity.js | ||
facet.js | ||
favicon.ico | ||
field.js | ||
group.js | ||
hbac.js | ||
hbactest.js | ||
host.js | ||
hostgroup.js | ||
index.html | ||
ipa.css | ||
ipa.js | ||
jquery-ui.css | ||
jquery-ui.js | ||
jquery.ba-bbq.js | ||
jquery.js | ||
jquery.ordered-map.js | ||
jsl.conf | ||
json2.js | ||
login.html | ||
login.js | ||
logout.html | ||
Makefile.am | ||
navigation.js | ||
net.js | ||
netgroup.js | ||
overpass_bold-web.eot | ||
overpass_bold-web.svg | ||
overpass_bold-web.ttf | ||
overpass_bold-web.woff | ||
overpass_regular-web.eot | ||
overpass_regular-web.svg | ||
overpass_regular-web.ttf | ||
overpass_regular-web.woff | ||
policy.js | ||
rule.js | ||
search.js | ||
selinux.js | ||
serverconfig.js | ||
service.js | ||
sudo.js | ||
user.js | ||
webui.js | ||
widget.js |