Merge the svnserve-logging branch, in its entirety, to trunk, using the
[svn.git] / subversion / include / private / svn_log.h
blob65faba5edb4d49bc14cd745815120121edeb45d8
1 /*
2 * svn_log.h: Functions for assembling entries for server-side logs.
3 * See also tools/server-side/svn_server_log_parse.py .
4 * ====================================================================
5 * Copyright (c) 2008 CollabNet. All rights reserved.
7 * This software is licensed as described in the file COPYING, which
8 * you should have received as part of this distribution. The terms
9 * are also available at http://subversion.tigris.org/license-1.html.
10 * If newer versions of this license are posted there, you may use a
11 * newer version instead, at your option.
13 * This software consists of voluntary contributions made by many
14 * individuals. For exact contribution history, see the revision
15 * history and logs, available at http://subversion.tigris.org/.
16 * ====================================================================
19 #ifndef SVN_LOG_H
20 #define SVN_LOG_H
22 #include "svn_types.h"
23 #include "svn_mergeinfo.h"
24 #include "svn_pools.h"
25 #include "svn_string.h"
27 #ifdef __cplusplus
28 extern "C" {
29 #endif /* __cplusplus */
31 /**
32 * Return a log string for a reparent action.
34 * @since New in 1.6.
36 const char *
37 svn_log__reparent(const char *path, apr_pool_t *pool);
39 /**
40 * Return a log string for a change-rev-prop action.
42 * @since New in 1.6.
44 const char *
45 svn_log__change_rev_prop(svn_revnum_t rev, const char *name, apr_pool_t *pool);
47 /**
48 * Return a log string for a rev-proplist action.
50 * @since New in 1.6.
52 const char *
53 svn_log__rev_proplist(svn_revnum_t rev, apr_pool_t *pool);
55 /**
56 * Return a log string for a rev-prop action.
58 * @since New in 1.6.
60 const char *
61 svn_log__rev_prop(svn_revnum_t rev, const char *name, apr_pool_t *pool);
63 /**
64 * Return a log string for a commit action.
66 * @since New in 1.6.
68 const char *
69 svn_log__commit(svn_revnum_t rev, apr_pool_t *pool);
71 /**
72 * Return a log string for a get-file action.
74 * @since New in 1.6.
76 const char *
77 svn_log__get_file(const char *path, svn_revnum_t rev,
78 svn_boolean_t want_contents, svn_boolean_t want_props,
79 apr_pool_t *pool);
81 /**
82 * Return a log string for a get-dir action.
84 * @since New in 1.6.
86 const char *
87 svn_log__get_dir(const char *path, svn_revnum_t rev,
88 svn_boolean_t want_contents, svn_boolean_t want_props,
89 apr_uint64_t dirent_fields,
90 apr_pool_t *pool);
92 /**
93 * Return a log string for a get-mergeinfo action.
95 * @since New in 1.6.
97 const char *
98 svn_log__get_mergeinfo(const apr_array_header_t *paths,
99 svn_mergeinfo_inheritance_t inherit,
100 svn_boolean_t include_descendants,
101 apr_pool_t *pool);
104 * Return a log string for a checkout action.
106 * @since New in 1.6.
108 const char *
109 svn_log__checkout(const char *path, svn_revnum_t rev, svn_depth_t depth,
110 apr_pool_t *pool);
113 * Return a log string for a update action.
115 * @since New in 1.6.
117 const char *
118 svn_log__update(const char *path, svn_revnum_t rev, svn_depth_t depth,
119 svn_boolean_t send_copyfrom_args,
120 apr_pool_t *pool);
123 * Return a log string for a switch action.
125 * @since New in 1.6.
127 const char *
128 svn_log__switch(const char *path, const char *dst_path, svn_revnum_t revnum,
129 svn_depth_t depth, apr_pool_t *pool);
132 * Return a log string for a status action.
134 * @since New in 1.6.
136 const char *
137 svn_log__status(const char *path, svn_revnum_t rev, svn_depth_t depth,
138 apr_pool_t *pool);
141 * Return a log string for a diff action.
143 * @since New in 1.6.
145 const char *
146 svn_log__diff(const char *path, svn_revnum_t from_revnum,
147 const char *dst_path, svn_revnum_t revnum,
148 svn_depth_t depth, svn_boolean_t ignore_ancestry,
149 apr_pool_t *pool);
152 * Return a log string for a log action.
154 * @since New in 1.6.
156 const char *
157 svn_log__log(const apr_array_header_t *paths,
158 svn_revnum_t start, svn_revnum_t end,
159 int limit, svn_boolean_t discover_changed_paths,
160 svn_boolean_t strict_node_history,
161 svn_boolean_t include_merged_revisions,
162 const apr_array_header_t *revprops, apr_pool_t *pool);
165 * Return a log string for a get-locations action.
167 * @since New in 1.6.
169 const char *
170 svn_log__get_locations(const char *path, svn_revnum_t peg_revision,
171 const apr_array_header_t *location_revisions,
172 apr_pool_t *pool);
175 * Return a log string for a get-location-segments action.
177 * @since New in 1.6.
179 const char *
180 svn_log__get_location_segments(const char *path, svn_revnum_t peg_revision,
181 svn_revnum_t start, svn_revnum_t end,
182 apr_pool_t *pool);
185 * Return a log string for a get-file-revs action.
187 * @since New in 1.6.
189 const char *
190 svn_log__get_file_revs(const char *path, svn_revnum_t start, svn_revnum_t end,
191 svn_boolean_t include_merged_revisions,
192 apr_pool_t *pool);
195 * Return a log string for a lock action.
197 * @since New in 1.6.
199 const char *
200 svn_log__lock(const apr_array_header_t *paths, svn_boolean_t steal,
201 apr_pool_t *pool);
204 * Return a log string for an unlock action.
206 * @since New in 1.6.
208 const char *
209 svn_log__unlock(const apr_array_header_t *paths, svn_boolean_t break_lock,
210 apr_pool_t *pool);
213 * Return a log string for a lock action on only one path; this is
214 * just a convenience wrapper around svn_log__lock().
216 * @since New in 1.6.
218 const char *
219 svn_log__lock_one_path(const char *path, svn_boolean_t steal,
220 apr_pool_t *pool);
223 * Return a log string for a unlock action on only one path; this is
224 * just a convenience wrapper around svn_log__unlock().
226 * @since New in 1.6.
228 const char *
229 svn_log__unlock_one_path(const char *path, svn_boolean_t break_lock,
230 apr_pool_t *pool);
233 * Return a log string for a replay action.
235 * @since New in 1.6.
237 const char *
238 svn_log__replay(const char *path, svn_revnum_t rev, apr_pool_t *pool);
240 #ifdef __cplusplus
242 #endif /* __cplusplus */
244 #endif /* SVN_LOG_H */