You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2011/02/01 20:00:35 UTC
svn commit: r1066135 - in /subversion/branches/ignore-mergeinfo-log:
notes/http-and-webdav/webdav-protocol subversion/libsvn_ra_neon/log.c
subversion/libsvn_ra_serf/log.c
Author: hwright
Date: Tue Feb 1 19:00:34 2011
New Revision: 1066135
URL: http://svn.apache.org/viewvc?rev=1066135&view=rev
Log:
On the ignore-mergeinfo-log branch:
Send the various ignored properties to the server for RA-{serf,neon}. A patch
to mod_dav_svn which actually reads these values will be forthcoming.
* subversion/libsvn_ra_neon/log.c
(svn_ra_neon__get_log): Put the ignored props in the http request.
* subversion/libsvn_ra_serf/log.c
(log_context_t): Add ignored_prop_mods member.
(create_log_body): Put the ignored props into the request.
(svn_ra_serf__get_log): Set the ignored props in the log context.
* notes/http-and-webdav/webdav-protocol
(log-report): Add the ignored-prop element to the HTTP protocol.
Modified:
subversion/branches/ignore-mergeinfo-log/notes/http-and-webdav/webdav-protocol
subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_neon/log.c
subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_serf/log.c
Modified: subversion/branches/ignore-mergeinfo-log/notes/http-and-webdav/webdav-protocol
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo-log/notes/http-and-webdav/webdav-protocol?rev=1066135&r1=1066134&r2=1066135&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo-log/notes/http-and-webdav/webdav-protocol (original)
+++ subversion/branches/ignore-mergeinfo-log/notes/http-and-webdav/webdav-protocol Tue Feb 1 19:00:34 2011
@@ -356,6 +356,7 @@ Request:
<S:include-merged-revisions/> (optional)
<S:revprop>REVPROP</S:revprop>... | <S:all-revprops/> | <S:no-revprops/>
('revprop', 'all-revprops', and 'no-revprops' are all optional)
+ <S:ignored-prop>PROP</S:ignored-prop>... (optional)
<S:path></S:path>... (optional)
</S:log-report>
Modified: subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_neon/log.c
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_neon/log.c?rev=1066135&r1=1066134&r2=1066135&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_neon/log.c (original)
+++ subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_neon/log.c Tue Feb 1 19:00:34 2011
@@ -450,6 +450,18 @@ svn_error_t * svn_ra_neon__get_log(svn_r
want_custom_revprops = TRUE;
}
+ if (ignored_prop_mods)
+ {
+ for (i = 0; i < ignored_prop_mods; i++)
+ {
+ char *name = APR_ARRAY_IDX(ignored_prop_mods, i, char *);
+
+ svn_stringbuf_appendcstr(request_body, "<S:ignored-prop>");
+ svn_stringbuf_appendcstr(request_body, name);
+ svn_stringbuf_appendcstr(request_body, "</S:ignored-prop>");
+ }
+ }
+
if (want_custom_revprops)
{
svn_boolean_t has_log_revprops;
Modified: subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_serf/log.c
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_serf/log.c?rev=1066135&r1=1066134&r2=1066135&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_serf/log.c (original)
+++ subversion/branches/ignore-mergeinfo-log/subversion/libsvn_ra_serf/log.c Tue Feb 1 19:00:34 2011
@@ -94,6 +94,7 @@ typedef struct log_context_t {
svn_boolean_t strict_node_history;
svn_boolean_t include_merged_revisions;
const apr_array_header_t *revprops;
+ const apr_array_header_t *ignored_prop_mods;
int nest_level; /* used to track mergeinfo nesting levels */
int count; /* only incremented when nest_level == 0 */
@@ -536,6 +537,19 @@ create_log_body(serf_bucket_t **body_bkt
alloc);
}
+ if (log_ctx->ignored_prop_mods)
+ {
+ int i;
+ for (i = 0; i < log_ctx->ignored_prop_mods->nelts; i++)
+ {
+ char *name = APR_ARRAY_IDX(log_ctx->revprops, i, char *);
+
+ svn_ra_serf__add_tag_buckets(buckets,
+ "S:ignored-prop", name,
+ alloc);
+ }
+ }
+
if (log_ctx->paths)
{
int i;
@@ -590,6 +604,7 @@ svn_ra_serf__get_log(svn_ra_session_t *r
log_ctx->strict_node_history = strict_node_history;
log_ctx->include_merged_revisions = include_merged_revisions;
log_ctx->revprops = revprops;
+ log_ctx->ignored_prop_mods = ignored_prop_mods;
log_ctx->nest_level = 0;
log_ctx->done = FALSE;