Skip to content
Commit e1c4f4f1 authored by Greg Stein's avatar Greg Stein
Browse files

More revamping of live properties. Focused around the fact that a provider's

hooks are only called if that provider defines the prop (e.g. NOTME return
values are no longer needed). Also refactored some code to simplify liveprop
management for providers (assuming they don't have "funny" stuff).

*) enumerate all known DAV properties (DAV_PROPID_* in mod_dav.h)
   - use these in fs/repos.c rather than DAV_PROPID_FS_*
   - will use in SVN and a second-round whack on the "core" props in props.c
*) refactor dav_fs_liveprop_name to dav_liveprop_spec and add a writeable
   flag
*) add dav_liveprop_group to hold a number of "top-level" items to pass to
   the new liveprop utility functions
*) add dav_do_find_liveprop() as a util for the find_liveprop hook function
   - toss repos.c::dav_fs_find_prop
   - use the new function for repos.c::dav_fs_find_liveprop
*) rebuild dav_register_liveprop_namespace() as a full "group" registration
   which will handle all the namespaces in a liveprop provider. The new func
   is called dav_register_liveprop_group().
*) add dav_get_liveprop_info() to look up liveprop info given a provider's
   propid. used in dav_fs_insert_prop() and dav_fs_is_writeable()
*) fold dav_fs_insert_all() directly into dav_fs_insert_all_liveprops()
   since the former wasn't called by anything else
*) rename var in dav_fs_insert_prop() to "global_ns" to clarify its purpose.
   torch a couple out-of-date comments in there.
*) toss dav_prop_rw type and simplify is_writeable hook. fix up calling of
   hook in props.c::dav_rw_liveprop(). dav_rw_liveprop() should also call
   the provider *first*, if one has stated it is handling the property.
*) toss DAV_PROP_INSERT_NOTME since we can't call a provider's insert_prop
   with somebody else's liveprop
*) remove DAV_IS_CORE_PROP() in props.c. a core prop is not defined by its
   propid, but by provider==NULL. add comments to clarify when that happens.
*) fix sub-request creation to include new next-filter arg


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87073 13f79535-47bb-0310-9956-ffa450edef68
parent 2cb4ab20
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment