svn_repos_parse_fns2_t Struct Reference
[Dumping and loading filesystem data]

A vtable that is driven by svn_repos_parse_dumpstream2(). More...

#include <svn_repos.h>


Data Fields

svn_error_t *(* new_revision_record )(void **revision_baton, apr_hash_t *headers, void *parse_baton, apr_pool_t *pool)
 The parser has discovered a new revision record within the parsing session represented by parse_baton.
svn_error_t *(* uuid_record )(const char *uuid, void *parse_baton, apr_pool_t *pool)
 The parser has discovered a new uuid record within the parsing session represented by parse_baton.
svn_error_t *(* new_node_record )(void **node_baton, apr_hash_t *headers, void *revision_baton, apr_pool_t *pool)
 The parser has discovered a new node record within the current revision represented by revision_baton.
svn_error_t *(* set_revision_property )(void *revision_baton, const char *name, const svn_string_t *value)
 For a given revision_baton, set a property name to value.
svn_error_t *(* set_node_property )(void *node_baton, const char *name, const svn_string_t *value)
 For a given node_baton, set a property name to value.
svn_error_t *(* delete_node_property )(void *node_baton, const char *name)
 For a given node_baton, delete property name.
svn_error_t *(* remove_node_props )(void *node_baton)
 For a given node_baton, remove all properties.
svn_error_t *(* set_fulltext )(svn_stream_t **stream, void *node_baton)
 For a given node_baton, receive a writable stream capable of receiving the node's fulltext.
svn_error_t *(* apply_textdelta )(svn_txdelta_window_handler_t *handler, void **handler_baton, void *node_baton)
 For a given node_baton, set handler and handler_baton to a window handler and baton capable of receiving a delta against the node's previous contents.
svn_error_t *(* close_node )(void *node_baton)
 The parser has reached the end of the current node represented by node_baton, it can be freed.
svn_error_t *(* close_revision )(void *revision_baton)
 The parser has reached the end of the current revision represented by revision_baton.


Detailed Description

A vtable that is driven by svn_repos_parse_dumpstream2().

Since:
New in 1.1.

Definition at line 2254 of file svn_repos.h.


Field Documentation

svn_error_t*(* svn_repos_parse_fns2_t::new_revision_record)(void **revision_baton, apr_hash_t *headers, void *parse_baton, apr_pool_t *pool)

The parser has discovered a new revision record within the parsing session represented by parse_baton.

All the headers are placed in headers (allocated in pool), which maps const char * header-name ==> const char * header-value. The revision_baton received back (also allocated in pool) represents the revision.

svn_error_t*(* svn_repos_parse_fns2_t::uuid_record)(const char *uuid, void *parse_baton, apr_pool_t *pool)

The parser has discovered a new uuid record within the parsing session represented by parse_baton.

The uuid's value is uuid, and it is allocated in pool.

svn_error_t*(* svn_repos_parse_fns2_t::new_node_record)(void **node_baton, apr_hash_t *headers, void *revision_baton, apr_pool_t *pool)

The parser has discovered a new node record within the current revision represented by revision_baton.

All the headers are placed in headers (as with new_revision_record), allocated in pool. The node_baton received back is allocated in pool and represents the node.

svn_error_t*(* svn_repos_parse_fns2_t::set_revision_property)(void *revision_baton, const char *name, const svn_string_t *value)

For a given revision_baton, set a property name to value.

svn_error_t*(* svn_repos_parse_fns2_t::set_node_property)(void *node_baton, const char *name, const svn_string_t *value)

For a given node_baton, set a property name to value.

svn_error_t*(* svn_repos_parse_fns2_t::delete_node_property)(void *node_baton, const char *name)

For a given node_baton, delete property name.

For a given node_baton, remove all properties.

For a given node_baton, receive a writable stream capable of receiving the node's fulltext.

After writing the fulltext, call the stream's close() function.

If a NULL is returned instead of a stream, the vtable is indicating that no text is desired, and the parser will not attempt to send it.

svn_error_t*(* svn_repos_parse_fns2_t::apply_textdelta)(svn_txdelta_window_handler_t *handler, void **handler_baton, void *node_baton)

For a given node_baton, set handler and handler_baton to a window handler and baton capable of receiving a delta against the node's previous contents.

A NULL window will be sent to the handler after all the windows are sent.

If a NULL is returned instead of a handler, the vtable is indicating that no delta is desired, and the parser will not attempt to send it.

The parser has reached the end of the current revision represented by revision_baton.

In other words, there are no more changed nodes within the revision. The baton can be freed.


The documentation for this struct was generated from the following file:

Generated on Thu Nov 25 10:17:46 2010 for Subversion by  doxygen 1.5.6