Alien-SVN
view release on metacpan or search on metacpan
src/subversion/subversion/include/svn_fs.h view on Meta::CPAN
* destroying @a pool.
*
* @note The lifetime of @a fs_config must not be shorter than @a
* pool's. It's a good idea to allocate @a fs_config from @a pool or
* one of its ancestors.
*
* Only one thread may operate on any given filesystem object at once.
* Two threads may access the same filesystem simultaneously only if
* they open separate filesystem objects.
*
* @note You probably don't want to use this directly. Take a look at
* svn_repos_open2() instead.
*
* @since New in 1.1.
*/
svn_error_t *
svn_fs_open(svn_fs_t **fs_p,
const char *path,
apr_hash_t *fs_config,
apr_pool_t *pool);
/**
* Upgrade the Subversion filesystem located in the directory @a path
* to the latest version supported by this library. Return
* #SVN_ERR_FS_UNSUPPORTED_UPGRADE and make no changes to the
* filesystem if the requested upgrade is not supported. Use @a pool
* for necessary allocations.
*
* @note You probably don't want to use this directly. Take a look at
* svn_repos_upgrade() instead.
*
* @since New in 1.5.
*/
svn_error_t *
svn_fs_upgrade(const char *path,
apr_pool_t *pool);
/**
* Callback function type for progress notification.
*
* @a revision is the number of the revision currently begin processed,
* #SVN_INVALID_REVNUM if the current stage is not linked to any specific
* revision. @a baton is the callback baton.
*
* @since New in 1.8.
*/
typedef void (*svn_fs_progress_notify_func_t)(svn_revnum_t revision,
void *baton,
apr_pool_t *pool);
/**
* Return, in @a *fs_type, a string identifying the back-end type of
* the Subversion filesystem located in @a path. Allocate @a *fs_type
* in @a pool.
*
* The string should be equal to one of the @c SVN_FS_TYPE_* defined
* constants, unless the filesystem is a new back-end type added in
* a later version of Subversion.
*
* In general, the type should make no difference in the filesystem's
* semantics, but there are a few situations (such as backups) where
* it might matter.
*
* @since New in 1.3.
*/
svn_error_t *
svn_fs_type(const char **fs_type,
const char *path,
apr_pool_t *pool);
/**
* Return the path to @a fs's repository, allocated in @a pool.
* @note This is just what was passed to svn_fs_create() or
* svn_fs_open() -- might be absolute, might not.
*
* @since New in 1.1.
*/
const char *
svn_fs_path(svn_fs_t *fs,
apr_pool_t *pool);
/**
* Return a shallow copy of the configuration parameters used to open
* @a fs, allocated in @a pool. It may be @c NULL. The contents of the
* hash contents remains valid only for @a fs's lifetime.
*
* @note This is just what was passed to svn_fs_create() or svn_fs_open().
* You may not modify it.
*
* @since New in 1.8.
*/
apr_hash_t *
svn_fs_config(svn_fs_t *fs,
apr_pool_t *pool);
/**
* Delete the filesystem at @a path.
*
* @note: Deleting a filesystem that has an open svn_fs_t is not
* supported. Clear/destroy all pools used to create/open @a path.
* See issue 4264.
*
* @since New in 1.1.
*/
svn_error_t *
svn_fs_delete_fs(const char *path,
apr_pool_t *pool);
/**
* Copy a possibly live Subversion filesystem from @a src_path to
* @a dest_path. If @a clean is @c TRUE, perform cleanup on the
* source filesystem as part of the copy operation; currently, this
* means deleting copied, unused logfiles for a Berkeley DB source
* filesystem.
*
* If @a incremental is TRUE, make an effort to avoid re-copying
* information already present in the destination where possible. If
* incremental hotcopy is not implemented, raise
* #SVN_ERR_UNSUPPORTED_FEATURE.
*
* Use @a scratch_pool for temporary allocations.
( run in 1.103 second using v1.01-cache-2.11-cpan-97f6503c9c8 )