Alien-SVN
view release on metacpan or search on metacpan
src/subversion/subversion/mod_dav_svn/dav_svn.h view on Meta::CPAN
/* POST request handler. (Used by HTTP protocol v2 clients only.) */
int dav_svn__method_post(request_rec *r);
/*** repos.c ***/
/* generate an ETag for RESOURCE and return it, allocated in POOL. */
const char *
dav_svn__getetag(const dav_resource *resource, apr_pool_t *pool);
/*
Construct a working resource for a given resource.
The internal information (repository, URL parts, etc) for the new
resource comes from BASE, the activity to use is specified by
ACTIVITY_ID, and the name of the transaction is specified by
TXN_NAME. These will be assembled into a new dav_resource and
returned.
If TWEAK_IN_PLACE is non-zero, then directly tweak BASE into a
working resource and return NULL.
*/
dav_resource *
dav_svn__create_working_resource(dav_resource *base,
const char *activity_id,
const char *txn_name,
int tweak_in_place);
/*
Convert a working RESOURCE back into a regular one, in-place.
In particular: change the resource type to regular, removing the
'working' flag, change the fs root from a txn-root to a rev-root,
and set the URL back into either a public URL or bc URL.
*/
dav_error *
dav_svn__working_to_regular_resource(dav_resource *resource);
/*
Given a version-resource URI, construct a new version-resource in
POOL and return it in *VERSION_RES.
*/
dav_error *
dav_svn__create_version_resource(dav_resource **version_res,
const char *uri,
apr_pool_t *pool);
extern const dav_hooks_repository dav_svn__hooks_repository;
/*** deadprops.c ***/
extern const dav_hooks_propdb dav_svn__hooks_propdb;
/*** lock.c ***/
extern const dav_hooks_locks dav_svn__hooks_locks;
/*** version.c ***/
/* For an autoversioning commit, a helper function which attaches an
auto-generated 'svn:log' property to a txn, as well as a property
that indicates the revision was made via autoversioning. */
svn_error_t *
dav_svn__attach_auto_revprops(svn_fs_txn_t *txn,
const char *fs_path,
apr_pool_t *pool);
/* Hook function of types 'checkout' and 'checkin', as defined in
mod_dav.h's versioning provider hooks table (see dav_hooks_vsn). */
dav_error *
dav_svn__checkout(dav_resource *resource,
int auto_checkout,
int is_unreserved,
int is_fork_ok,
int create_activity,
apr_array_header_t *activities,
dav_resource **working_resource);
dav_error *
dav_svn__checkin(dav_resource *resource,
int keep_checked_out,
dav_resource **version_resource);
/* Helper for reading lock-tokens out of request bodies, by looking
for cached body in R->pool's userdata.
Return a hash that maps (const char *) absolute fs paths to (const
char *) locktokens. Allocate the hash and all keys/vals in POOL.
PATH_PREFIX is the prefix we need to prepend to each relative
'lock-path' in the xml in order to create an absolute fs-path. */
dav_error *
dav_svn__build_lock_hash(apr_hash_t **locks,
request_rec *r,
const char *path_prefix,
apr_pool_t *pool);
/* Helper: push all of the lock-tokens (hash values) in LOCKS into
RESOURCE's already-open svn_fs_t. */
dav_error *
dav_svn__push_locks(dav_resource *resource,
apr_hash_t *locks,
apr_pool_t *pool);
extern const dav_hooks_vsn dav_svn__hooks_vsn;
/*** liveprops.c ***/
extern const dav_liveprop_group dav_svn__liveprop_group;
/*
LIVE PROPERTY HOOKS
These are standard hooks defined by mod_dav. We implement them to expose
various live properties on the resources under our control.
gather_propsets: appends URIs into the array; the property set URIs are
used to specify which sets of custom properties we
define/expose.
find_liveprop: given a namespace and name, return the hooks for the
( run in 0.657 second using v1.01-cache-2.11-cpan-e1769b4cff6 )