You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2015/10/22 11:29:19 UTC

svn commit: r1709968 - in /subversion/branches/move-tracking-2/subversion: include/private/svn_branch.h libsvn_delta/branch.c libsvn_delta/branch_nested.c libsvn_delta/branch_private.h

Author: julianfoad
Date: Thu Oct 22 09:29:18 2015
New Revision: 1709968

URL: http://svn.apache.org/viewvc?rev=1709968&view=rev
Log:
On the 'move-tracking-2' branch: Add a 'complete' method to the txn class.

This continues the refactoring to use branch txn/state objects instead of
a single 'editor'.

* subversion/include/private/svn_branch.h
  (svn_branch_txn_complete): New.

* subversion/libsvn_delta/branch.c
  (branch_txn_complete,
   svn_branch_txn_complete): New.
  (branch_txn_create): Add it.

* subversion/libsvn_delta/branch_nested.c
  (nested_branch_txn_complete): New.
  (svn_nested_branch_txn_create): Add it.

* subversion/libsvn_delta/branch_private.h
  (branch_txn_v_complete_t): New.
  (svn_branch_txn_vtable_t): Add it.

Modified:
    subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h
    subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c
    subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c
    subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h

Modified: subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h?rev=1709968&r1=1709967&r2=1709968&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h (original)
+++ subversion/branches/move-tracking-2/subversion/include/private/svn_branch.h Thu Oct 22 09:29:18 2015
@@ -222,6 +222,10 @@ svn_error_t *
 svn_branch_txn_sequence_point(svn_branch_txn_t *txn,
                               apr_pool_t *scratch_pool);
 
+svn_error_t *
+svn_branch_txn_complete(svn_branch_txn_t *txn,
+                        apr_pool_t *scratch_pool);
+
 /* Change txn-local EIDs (negative integers) in TXN to revision EIDs, by
  * assigning a new revision-EID (positive integer) for each one.
  *

Modified: subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c?rev=1709968&r1=1709967&r2=1709968&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_delta/branch.c Thu Oct 22 09:29:18 2015
@@ -298,6 +298,14 @@ branch_txn_sequence_point(svn_branch_txn
   return SVN_NO_ERROR;
 }
 
+/* An #svn_branch_txn_t method. */
+static svn_error_t *
+branch_txn_complete(svn_branch_txn_t *txn,
+                    apr_pool_t *scratch_pool)
+{
+  return SVN_NO_ERROR;
+}
+
 /*
  * ========================================================================
  * Branch Txn Object
@@ -406,6 +414,15 @@ svn_branch_txn_sequence_point(svn_branch
   return SVN_NO_ERROR;
 }
 
+svn_error_t *
+svn_branch_txn_complete(svn_branch_txn_t *txn,
+                        apr_pool_t *scratch_pool)
+{
+  SVN_ERR(txn->vtable->complete(txn,
+                                scratch_pool));
+  return SVN_NO_ERROR;
+}
+
 svn_branch_txn_t *
 svn_branch_txn_create(const svn_branch_txn_vtable_t *vtable,
                       svn_cancel_func_t cancel_func,
@@ -448,6 +465,7 @@ branch_txn_create(svn_branch_repos_t *re
     branch_txn_open_branch,
     branch_txn_branch,
     branch_txn_sequence_point,
+    branch_txn_complete,
   };
   svn_branch_txn_t *txn
     = svn_branch_txn_create(&vtable, NULL, NULL, result_pool);

Modified: subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c?rev=1709968&r1=1709967&r2=1709968&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_nested.c Thu Oct 22 09:29:18 2015
@@ -531,6 +531,17 @@ nested_branch_txn_sequence_point(svn_bra
   return SVN_NO_ERROR;
 }
 
+/* An #svn_branch_txn_t method. */
+static svn_error_t *
+nested_branch_txn_complete(svn_branch_txn_t *txn,
+                           apr_pool_t *scratch_pool)
+{
+  /* Just forwarding: nothing more is needed. */
+  SVN_ERR(svn_branch_txn_complete(txn->priv->wrapped_txn,
+                                  scratch_pool));
+  return SVN_NO_ERROR;
+}
+
 svn_branch_txn_t *
 svn_nested_branch_txn_create(svn_branch_txn_t *wrapped_txn,
                              apr_pool_t *result_pool)
@@ -545,6 +556,7 @@ svn_nested_branch_txn_create(svn_branch_
     nested_branch_txn_open_branch,
     nested_branch_txn_branch,
     nested_branch_txn_sequence_point,
+    nested_branch_txn_complete,
   };
   svn_branch_txn_t *txn
     = svn_branch_txn_create(&vtable, NULL, NULL, result_pool);

Modified: subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h?rev=1709968&r1=1709967&r2=1709968&view=diff
==============================================================================
--- subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h (original)
+++ subversion/branches/move-tracking-2/subversion/libsvn_delta/branch_private.h Thu Oct 22 09:29:18 2015
@@ -102,6 +102,10 @@ typedef svn_error_t *(*branch_txn_v_sequ
   svn_branch_txn_t *txn,
   apr_pool_t *scratch_pool);
 
+typedef svn_error_t *(*branch_txn_v_complete_t)(
+  svn_branch_txn_t *txn,
+  apr_pool_t *scratch_pool);
+
 struct svn_branch_txn_vtable_t
 {
   svn_vtable_priv_t vpriv;
@@ -115,6 +119,7 @@ struct svn_branch_txn_vtable_t
   branch_txn_v_open_branch_t open_branch;
   branch_txn_v_branch_t branch;
   branch_txn_v_sequence_point_t sequence_point;
+  branch_txn_v_complete_t complete;
 
 };