3 * ====================================================================
4 * Copyright (c) 2006, 2007 CollabNet. All rights reserved.
6 * This software is licensed as described in the file COPYING, which
7 * you should have received as part of this distribution. The terms
8 * are also available at http://subversion.tigris.org/license-1.html.
9 * If newer versions of this license are posted there, you may use a
10 * newer version instead, at your option.
12 * This software consists of voluntary contributions made by many
13 * individuals. For exact contribution history, see the revision
14 * history and logs, available at http://subversion.tigris.org/.
15 * ====================================================================
19 * @brief Utilities to help applications provide backwards-compatibility
25 #include <apr_pools.h>
27 #include <apr_tables.h>
29 #include "svn_types.h"
33 #endif /* __cplusplus */
35 /** Return, in @a *callback2 and @a *callback2_baton a function/baton that
36 * will call @a callback/@a callback_baton, allocating the @a *callback2_baton
39 * @note This is used by compatibility wrappers, which exist in more than
40 * Subversion core library.
44 void svn_compat_wrap_commit_callback(svn_commit_callback2_t
*callback2
,
45 void **callback2_baton
,
46 svn_commit_callback_t callback
,
50 /** Clear svn:author, svn:date, and svn:log from @a revprops if not NULL.
51 * Use this if you must handle these three properties separately for
52 * compatibility reasons.
57 svn_compat_log_revprops_clear(apr_hash_t
*revprops
);
59 /** Return a list to pass to post-1.5 log-retrieval functions in order to
60 * retrieve the pre-1.5 set of revprops: svn:author, svn:date, and svn:log.
65 svn_compat_log_revprops_in(apr_pool_t
*pool
);
67 /** Return, in @a **author, @a **date, and @a **message, the values of the
68 * svn:author, svn:date, and svn:log revprops from @a revprops. If @a
69 * revprops is NULL, all return values are NULL. Any return value may be
70 * NULL if the corresponding property is not set in @a revprops.
75 svn_compat_log_revprops_out(const char **author
, const char **date
,
76 const char **message
, apr_hash_t
*revprops
);
78 /** Return, in @a *receiver2 and @a *receiver2_baton a function/baton that
79 * will call @a receiver/@a receiver_baton, allocating the @a *receiver2_baton
82 * @note This is used by compatibility wrappers, which exist in more than
83 * Subversion core library.
87 void svn_compat_wrap_log_receiver(svn_log_entry_receiver_t
*receiver2
,
88 void **receiver2_baton
,
89 svn_log_message_receiver_t receiver
,
95 #endif /* __cplusplus */
97 #endif /* SVN_COMPAT_H */