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);