Author: svn-role
Date: Thu Apr 18 04:00:56 2013
New Revision: 1469152

URL: http://svn.apache.org/r1469152
Log:
Merge r1468151 from trunk:

 * r1468151
   Map missing some missing bits to JavaHL
   Justification:
     A few constants and struct members were not mapped to JavaHL,
     and a newly-deprecated function was being called.
   Votes:
     +1: brane
     +0: rhuijben (reviewed, not tested)

Modified:
    subversion/branches/1.8.x/   (props changed)
    subversion/branches/1.8.x/STATUS
    subversion/branches/1.8.x/subversion/bindings/javahl/native/CreateJ.cpp
    subversion/branches/1.8.x/subversion/bindings/javahl/native/JNIUtil.cpp
    
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java
    
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java
    
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItemStateFlags.java
    
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
    
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
    
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ConflictVersion.java
    
subversion/branches/1.8.x/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java

Propchange: subversion/branches/1.8.x/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1468151

Modified: subversion/branches/1.8.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- subversion/branches/1.8.x/STATUS (original)
+++ subversion/branches/1.8.x/STATUS Thu Apr 18 04:00:56 2013
@@ -45,15 +45,6 @@ Veto-blocked changes:
 Approved changes:
 =================
 
- * r1468151
-   Map missing some missing bits to JavaHL
-   Justification:
-     A few constants and struct members were not mapped to JavaHL,
-     and a newly-deprecated function was being called.
-   Votes:
-     +1: brane
-     +0: rhuijben (reviewed, not tested)
-
  * r1468439
    Fix assertion on checkout from pre-1.8 server over ra_serf with
    http-bulk-updates=off.

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/native/CreateJ.cpp
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/native/CreateJ.cpp?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/bindings/javahl/native/CreateJ.cpp 
(original)
+++ subversion/branches/1.8.x/subversion/bindings/javahl/native/CreateJ.cpp Thu 
Apr 18 04:00:56 2013
@@ -151,7 +151,8 @@ CreateJ::ConflictVersion(const svn_wc_co
   static jmethodID ctor = 0;
   if (ctor == 0)
     {
-      ctor = env->GetMethodID(clazz, "<init>", "(Ljava/lang/String;J"
+      ctor = env->GetMethodID(clazz, "<init>", "(Ljava/lang/String;"
+                                               "Ljava/lang/String;J"
                                                "Ljava/lang/String;"
                                                
"L"JAVA_PACKAGE"/types/NodeKind;"
                                                ")V");
@@ -162,6 +163,9 @@ CreateJ::ConflictVersion(const svn_wc_co
   jstring jreposURL = JNIUtil::makeJString(version->repos_url);
   if (JNIUtil::isJavaExceptionThrown())
     POP_AND_RETURN_NULL;
+  jstring jreposUUID = JNIUtil::makeJString(version->repos_uuid);
+  if (JNIUtil::isJavaExceptionThrown())
+    POP_AND_RETURN_NULL;
   jstring jpathInRepos = JNIUtil::makeJString(version->path_in_repos);
   if (JNIUtil::isJavaExceptionThrown())
     POP_AND_RETURN_NULL;
@@ -169,7 +173,7 @@ CreateJ::ConflictVersion(const svn_wc_co
   if (JNIUtil::isJavaExceptionThrown())
     POP_AND_RETURN_NULL;
 
-  jobject jversion = env->NewObject(clazz, ctor, jreposURL,
+  jobject jversion = env->NewObject(clazz, ctor, jreposURL, jreposUUID,
                                     (jlong)version->peg_rev, jpathInRepos,
                                     jnodeKind);
   if (JNIUtil::isJavaExceptionThrown())
@@ -835,7 +839,8 @@ CreateJ::CommitItem(svn_client_commit_it
                                         "(Ljava/lang/String;"
                                         "L"JAVA_PACKAGE"/types/NodeKind;"
                                         "ILjava/lang/String;"
-                                        "Ljava/lang/String;J)V");
+                                        "Ljava/lang/String;J"
+                                        "Ljava/lang/String;)V");
       if (JNIUtil::isExceptionThrown())
         POP_AND_RETURN_NULL;
     }
@@ -862,6 +867,12 @@ CreateJ::CommitItem(svn_client_commit_it
   if (item->state_flags & SVN_CLIENT_COMMIT_ITEM_IS_COPY)
     jstateFlags |=
       org_apache_subversion_javahl_CommitItemStateFlags_IsCopy;
+  if (item->state_flags & SVN_CLIENT_COMMIT_ITEM_LOCK_TOKEN)
+    jstateFlags |=
+      org_apache_subversion_javahl_CommitItemStateFlags_LockToken;
+  if (item->state_flags & SVN_CLIENT_COMMIT_ITEM_MOVED_HERE)
+    jstateFlags |=
+      org_apache_subversion_javahl_CommitItemStateFlags_MovedHere;
 
   jstring jurl = JNIUtil::makeJString(item->url);
   if (JNIUtil::isJavaExceptionThrown())
@@ -871,12 +882,16 @@ CreateJ::CommitItem(svn_client_commit_it
   if (JNIUtil::isJavaExceptionThrown())
     POP_AND_RETURN_NULL;
 
+  jstring jmovedFromPath = JNIUtil::makeJString(item->moved_from_abspath);
+  if (JNIUtil::isJavaExceptionThrown())
+    POP_AND_RETURN_NULL;
+
   jlong jcopyRevision = item->revision;
 
   // create the Java object
   jobject jitem = env->NewObject(clazz, midConstructor, jpath,
                                  jnodeKind, jstateFlags, jurl,
-                                 jcopyUrl, jcopyRevision);
+                                 jcopyUrl, jcopyRevision, jmovedFromPath);
   if (JNIUtil::isJavaExceptionThrown())
     POP_AND_RETURN_NULL;
 

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/native/JNIUtil.cpp
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/native/JNIUtil.cpp?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/bindings/javahl/native/JNIUtil.cpp 
(original)
+++ subversion/branches/1.8.x/subversion/bindings/javahl/native/JNIUtil.cpp Thu 
Apr 18 04:00:56 2013
@@ -179,7 +179,7 @@ bool JNIUtil::JNIGlobalInit(JNIEnv *env)
       apr_allocator_max_free_set(allocator, 1);
     }
 
-  svn_utf_initialize(g_pool); /* Optimize character conversions */
+  svn_utf_initialize2(g_pool, FALSE); /* Optimize character conversions */
   svn_fs_initialize(g_pool); /* Avoid some theoretical issues */
   svn_ra_initialize(g_pool);
 

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java
 (original)
+++ 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java
 Thu Apr 18 04:00:56 2013
@@ -559,7 +559,15 @@ public class ClientNotifyInformation ext
         conflict_resolver_done ("conflict resolver done"),
 
         /** Operation left local modifications. */
-        left_local_modifications ("left local modifications");
+        left_local_modifications ("left local modifications"),
+
+        /** A copy from a foreign repository has started
+         * @since New in 1.8. */
+        foreign_copy_begin ("foreign copy begin"),
+
+        /** A move in the working copy has been broken
+         * @since New in 1.8. */
+        move_broken ("move broken");
 
         /**
          * The description of the action.

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java
 (original)
+++ 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java
 Thu Apr 18 04:00:56 2013
@@ -70,6 +70,11 @@ public class CommitItem implements java.
     long revision;
 
     /**
+     * the source of the move
+     */
+    String movedFromPath;
+
+    /**
      * This constructor will be only called from the jni code.
      * @param p     path to the commit item
      * @param nk    kind of node (see NodeKind)
@@ -77,8 +82,9 @@ public class CommitItem implements java.
      * @param u     url of the item
      * @param cu    copy source url
      * @param r     revision number
+     * @param mf    move source abspath
      */
-    public CommitItem(String p, NodeKind nk, int sf, String u, String cu, long 
r)
+    CommitItem(String p, NodeKind nk, int sf, String u, String cu, long r, 
String mf)
     {
         path = p;
         nodeKind = nk;
@@ -86,6 +92,7 @@ public class CommitItem implements java.
         url = u;
         copyUrl = cu;
         revision = r;
+        movedFromPath = mf;
     }
 
     /**
@@ -149,4 +156,13 @@ public class CommitItem implements java.
     {
         return revision;
     }
+
+    /**
+     * @return the absolute path of the source of a move.
+     * @since 1.8
+     */
+    public String getMovedFromPath()
+    {
+        return movedFromPath;
+    }
 }

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItemStateFlags.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItemStateFlags.java?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItemStateFlags.java
 (original)
+++ 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItemStateFlags.java
 Thu Apr 18 04:00:56 2013
@@ -53,4 +53,15 @@ public interface CommitItemStateFlags
      * the item has been copied
      */
     public static final int IsCopy=16;
+
+    /**
+     * the item has a lock token
+     */
+    public static final int LockToken = 32;
+
+    /**
+     * the item was moved to this location
+     * @since 1.8
+     */
+    public static int MovedHere = 64;
 }

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
 (original)
+++ 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
 Thu Apr 18 04:00:56 2013
@@ -592,6 +592,7 @@ public interface ISVNClient
      * @param localPath     target local path
      * @param dryRun        do not change anything
      * @throws ClientException
+     * @deprecated Will be removed in a future release
      */
     void mergeReintegrate(String path, Revision pegRevision,
                           String localPath, boolean dryRun)

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
 (original)
+++ 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
 Thu Apr 18 04:00:56 2013
@@ -309,6 +309,7 @@ public class SVNClient implements ISVNCl
     }
 
 
+    /** @deprecated */
     public native void mergeReintegrate(String path, Revision pegRevision,
                                         String localPath, boolean dryRun)
             throws ClientException;

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ConflictVersion.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ConflictVersion.java?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ConflictVersion.java
 (original)
+++ 
subversion/branches/1.8.x/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ConflictVersion.java
 Thu Apr 18 04:00:56 2013
@@ -31,16 +31,19 @@ package org.apache.subversion.javahl.typ
 public class ConflictVersion
 {
     private String reposURL;
+    private String reposUUID;
     private long pegRevision;
     private String pathInRepos;
 
     private NodeKind nodeKind;
 
     /** This constructor should only be called from JNI code. */
-    public ConflictVersion(String reposURL, long pegRevision, String 
pathInRepos,
+    ConflictVersion(String reposURL, String reposUUID,
+                    long pegRevision, String pathInRepos,
                     NodeKind nodeKind)
     {
         this.reposURL = reposURL;
+        this.reposUUID = reposUUID;
         this.pegRevision = pegRevision;
         this.pathInRepos = pathInRepos;
         this.nodeKind = nodeKind;
@@ -51,6 +54,12 @@ public class ConflictVersion
         return reposURL;
     }
 
+    /** @since 1.8 */
+    public String getReposUUID()
+    {
+        return reposUUID;
+    }
+
     public long getPegRevision()
     {
         return pegRevision;

Modified: 
subversion/branches/1.8.x/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java?rev=1469152&r1=1469151&r2=1469152&view=diff
==============================================================================
--- 
subversion/branches/1.8.x/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
 (original)
+++ 
subversion/branches/1.8.x/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
 Thu Apr 18 04:00:56 2013
@@ -3408,6 +3408,7 @@ public class BasicTests extends SVNTests
         ConflictDescriptor conflict = conflicts.iterator().next();
 
         assertNotNull("Conflict should not be null", conflict);
+        assertNotNull("Repository UUID must be set", 
conflict.getSrcLeftVersion().getReposUUID());
 
         assertEquals(conflict.getSrcLeftVersion().getNodeKind(), 
NodeKind.file);
         assertEquals(conflict.getSrcLeftVersion().getReposURL() + "/" +
@@ -3416,6 +3417,8 @@ public class BasicTests extends SVNTests
 
         if (conflict.getSrcRightVersion() != null)
         {
+            assertEquals(conflict.getSrcLeftVersion().getReposUUID(),
+                         conflict.getSrcRightVersion().getReposUUID());
             assertEquals(conflict.getSrcRightVersion().getNodeKind(), 
NodeKind.none);
             assertEquals(conflict.getSrcRightVersion().getReposURL(), 
tcTest.getUrl().toString());
             assertEquals(conflict.getSrcRightVersion().getPegRevision(), 2L);


Reply via email to