134
134
apr_pool_t *pool);
137
/** A function type for retrieving the youngest revision from a repos. */
137
/** A function type for retrieving the youngest revision from a repos.
138
* @deprecated Provided for backward compatibility with the 1.8 API.
140
/* ### It seems this type was never used by the API, since 1.0.0. */
138
141
typedef svn_error_t *(*svn_ra_get_latest_revnum_func_t)(
139
142
void *session_baton,
140
143
svn_revnum_t *latest_revnum);
267
270
apr_hash_t *rev_props,
268
271
apr_pool_t *pool);
275
* Callback function that checks if an ra_svn tunnel called
276
* @a tunnel_name is handled by the callbakcs or the default
279
* @a tunnel_baton is the baton as originally passed to ra_open.
283
typedef svn_boolean_t (*svn_ra_check_tunnel_func_t)(
284
void *tunnel_baton, const char *tunnel_name);
287
* Callback function for closing a tunnel in ra_svn.
289
* This function will be called when the pool that owns the tunnel
290
* connection is cleared or destroyed.
292
* @a close_baton is the baton as returned from the
293
* svn_ra_open_tunnel_func_t.
295
* @a tunnel_baton was returned by the open-tunnel callback.
299
typedef void (*svn_ra_close_tunnel_func_t)(
300
void *close_baton, void *tunnel_baton);
303
* Callback function for opening a tunnel in ra_svn.
305
* Given the @a tunnel_name, tunnel @a user and server @a hostname and
306
* @a port, open a tunnel to the server and return its file handles,
307
* which are owned by @a pool, in @a request and @a response.
309
* @a request and @a response represent the standard input and output,
310
* respectively, of the process on the other end of the tunnel.
312
* If @a *close_func is set it will be called with @a close_baton when
313
* the tunnel is closed.
315
* The optional @a cancel_func callback can be invoked as usual to allow
316
* the user to preempt potentially lengthy operations.
318
* @a tunnel_baton is the baton as set in the callbacks.
322
typedef svn_error_t *(*svn_ra_open_tunnel_func_t)(
323
svn_stream_t **request, svn_stream_t **response,
324
svn_ra_close_tunnel_func_t *close_func, void **close_baton,
326
const char *tunnel_name, const char *user,
327
const char *hostname, int port,
328
svn_cancel_func_t cancel_func, void *cancel_baton,
272
333
* The update Reporter.
536
597
svn_ra_get_wc_contents_func_t get_wc_contents;
599
/** Check-tunnel callback
601
* If not @c NULL, and open_tunnel_func is also not @c NULL, this
602
* callback will be invoked to check if open_tunnel_func should be
603
* used to create a specific tunnel, or if the default tunnel
604
* implementation (either built-in or configured in the client
605
* configuration file) should be used instead.
608
svn_ra_check_tunnel_func_t check_tunnel_func;
610
/** Open-tunnel callback
612
* If not @c NULL, this callback will be invoked to create a tunnel
613
* for a ra_svn connection that needs one, overriding any tunnel
614
* definitions in the client config file. This callback is used only
615
* for ra_svn and ignored by the other RA modules.
618
svn_ra_open_tunnel_func_t open_tunnel_func;
620
/** A baton used with open_tunnel_func and close_tunnel_func.
538
624
} svn_ra_callbacks2_t;
540
626
/** Similar to svn_ra_callbacks2_t, except that the progress
899
985
* Use @a pool for memory allocation.
901
987
* @since New in 1.5.
989
* @note Like most commit editors, the returned editor requires that the
990
* @c copyfrom_path parameter passed to its @c add_file and @c add_directory
991
* methods is a URL, not a relative path.
904
994
svn_ra_get_commit_editor3(svn_ra_session_t *session,
1004
1094
* callers want to know, and some don't.)
1006
1096
* If @a props is non @c NULL, set @a *props to contain the properties of
1007
* the directory. This means @em all properties: not just ones controlled by
1008
* the user and stored in the repository fs, but non-tweakable ones
1009
* generated by the SCM system itself (e.g. 'wcprops', 'entryprops',
1010
* etc.) The keys are <tt>const char *</tt>, values are
1011
* <tt>@c svn_string_t *</tt>.
1097
* the directory, including properties that are non-tweakable and
1098
* generated by the SCM system itself (such as #svn_prop_wc_kind and
1099
* #svn_prop_entry_kind properties). The keys are <tt>const char *</tt>,
1100
* values are <tt>@c svn_string_t *</tt>.
1013
1102
* @since New in 1.4.
1463
1552
* was added or deleted). Each path is an <tt>const char *</tt>, relative
1464
1553
* to the @a session's common parent.
1466
* If @a limit is non-zero only invoke @a receiver on the first @a limit
1555
* If @a limit is greater than zero only invoke @a receiver on the first
1469
1558
* If @a discover_changed_paths, then each call to @a receiver passes a
1470
1559
* <tt>const apr_hash_t *</tt> for the receiver's @a changed_paths argument;
1708
1796
* to support reversion of the revision range for @a include_merged_revision
1709
1797
* @c FALSE reporting by switching @a end with @a start.
1799
* @note Prior to Subversion 1.9, this function may request delta handlers
1800
* from @a handler even for empty text deltas. Starting with 1.9, the
1801
* delta handler / baton return arguments passed to @a handler will be
1802
* #NULL unless there is an actual difference in the file contents between
1803
* the current and the previous call.
1711
1805
* @since New in 1.5.
1813
1907
* If @a path is locked, set @a *lock to an svn_lock_t which
1814
* represents the lock, allocated in @a pool. If @a path is not
1815
* locked, set @a *lock to NULL.
1908
* represents the lock, allocated in @a pool.
1910
* If @a path is not locked or does not exist in HEAD, set @a *lock to NULL.
1912
* @note Before 1.9, this function could return SVN_ERR_FS_NOT_FOUND
1913
* when @a path didn't exist in HEAD on specific ra layers.
1817
1915
* @since New in 1.2.