summaryrefslogtreecommitdiff
path: root/subversion/include/svn_ra_svn.h
diff options
context:
space:
mode:
Diffstat (limited to 'subversion/include/svn_ra_svn.h')
-rw-r--r--subversion/include/svn_ra_svn.h36
1 files changed, 34 insertions, 2 deletions
diff --git a/subversion/include/svn_ra_svn.h b/subversion/include/svn_ra_svn.h
index 9c556b8b87e7..c968e400805f 100644
--- a/subversion/include/svn_ra_svn.h
+++ b/subversion/include/svn_ra_svn.h
@@ -165,9 +165,9 @@ typedef struct svn_ra_svn_item_t
typedef svn_error_t *(*svn_ra_svn_edit_callback)(void *baton);
/** Initialize a connection structure for the given socket or
- * input/output files.
+ * input/output streams.
*
- * Either @a sock or @a in_file/@a out_file must be set, not both.
+ * Either @a sock or @a in_stream/@a out_stream must be set, not both.
* @a compression_level specifies the desired network data compression
* level (zlib) from 0 (no compression) to 9 (best but slowest).
*
@@ -184,10 +184,29 @@ typedef svn_error_t *(*svn_ra_svn_edit_callback)(void *baton);
* It defines the number of bytes that must have been sent since the last
* check before the next check will be made.
*
+ * @note If @a out_stream is an wrapped apr_file_t* the backing file will be
+ * used for some operations.
+ *
* Allocate the result in @a pool.
*
+ * @since New in 1.9
+ */
+svn_ra_svn_conn_t *svn_ra_svn_create_conn4(apr_socket_t *sock,
+ svn_stream_t *in_stream,
+ svn_stream_t *out_stream,
+ int compression_level,
+ apr_size_t zero_copy_limit,
+ apr_size_t error_check_interval,
+ apr_pool_t *result_pool);
+
+
+/** Similar to svn_ra_svn_create_conn4() but only supports apr_file_t handles
+ * instead of the more generic streams.
+ *
* @since New in 1.8
+ * @deprecated Provided for backward compatibility with the 1.8 API.
*/
+SVN_DEPRECATED
svn_ra_svn_conn_t *svn_ra_svn_create_conn3(apr_socket_t *sock,
apr_file_t *in_file,
apr_file_t *out_file,
@@ -268,6 +287,12 @@ svn_ra_svn_conn_remote_host(svn_ra_svn_conn_t *conn);
*
* Upon successful completion of the edit, the editor will invoke @a callback
* with @a callback_baton as an argument.
+ *
+ * @note The @c copyfrom_path parameter passed to the @c add_file and
+ * @c add_directory methods of the returned editor may be either a URL or a
+ * relative path, and is transferred verbatim to the receiving end of the
+ * connection. See svn_ra_svn_drive_editor2() for information on the
+ * receiving end of the connection.
*/
void
svn_ra_svn_get_editor(const svn_delta_editor_t **editor,
@@ -283,6 +308,13 @@ svn_ra_svn_get_editor(const svn_delta_editor_t **editor,
* if @a for_replay is TRUE.
*
* @since New in 1.4.
+ *
+ * @note The @c copyfrom_path parameter passed to the @c add_file and
+ * @c add_directory methods of the receiving editor will be canonicalized
+ * either as a URL or as a relative path (starting with a slash) according
+ * to which kind was sent by the driving end of the connection. See
+ * svn_ra_svn_get_editor() for information on the driving end of the
+ * connection.
*/
svn_error_t *
svn_ra_svn_drive_editor2(svn_ra_svn_conn_t *conn,