Author: hwright
Date: Sat Mar 20 20:15:33 2010
New Revision: 925670

URL: http://svn.apache.org/viewvc?rev=925670&view=rev
Log:
JavaHL: Enum-ize the MergeinfoLogKind class and values.

[ in subversion/bindings/javahl/tests/ ]
* org/apache/subversion/javahl/BasicTests.java
  (getMergeinfoRevisions): Use the new type.

* native/EnumMapper.h,
  native/EnumMapper.cpp
  (toMergeinfoLogKind): New.

* native/org_apache_subversion_javahl_SVNClient.cpp
  (Java_org_apache_subversion_javahl_SVNClient_getMergeinfoLog):
    Update to use the incoming MergeinfoLogKind object.

* src/org/apache/subversion/javahl/SVNClient.java
  (getMergeinfoLog): Use the new type.

* src/org/apache/subversion/javahl/ISVNClient.java
  (getMergeinfoLog): Same.

* src/org/apache/subversion/javahl/MergeinfoLogKind.java
  (MergeinfoLogKind): Implement as an enum.

* src/org/tigris/subversion/javahl/SVNClient.java
  (getMergeinfoLog): Update the wrapper.

Modified:
    subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp
    subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h
    
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
    
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
    
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/MergeinfoLogKind.java
    
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
    
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java
    
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java

Modified: subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp Sat Mar 
20 20:15:33 2010
@@ -155,6 +155,11 @@ jobject EnumMapper::mapConflictReason(sv
   return mapEnum(JAVA_PACKAGE"/ConflictDescriptor$Reason", (int) reason);
 }
 
+int EnumMapper::toMergeinfoLogKind(jobject jLogKind)
+{
+  return getOrdinal(JAVA_PACKAGE"/MergeinfoLogKind", jLogKind);
+}
+
 svn_depth_t EnumMapper::toDepth(jobject jdepth)
 {
   // The offset for depths is -2

Modified: subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h (original)
+++ subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h Sat Mar 20 
20:15:33 2010
@@ -45,6 +45,7 @@ class EnumMapper
   static svn_depth_t toDepth(jobject jdepth);
   static svn_opt_revision_kind toRevisionKind(jobject jkind);
   static svn_wc_conflict_choice_t toConflictChoice(jobject jchoice);
+  static int toMergeinfoLogKind(jobject jLogKind);
 
   /* Converting from C enum's */
   static jint mapCommitMessageStateFlags(apr_byte_t flags);

Modified: 
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- 
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
 (original)
+++ 
subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
 Sat Mar 20 20:15:33 2010
@@ -1141,7 +1141,7 @@ Java_org_apache_subversion_javahl_SVNCli
 }
 
 JNIEXPORT void JNICALL 
Java_org_apache_subversion_javahl_SVNClient_getMergeinfoLog
-(JNIEnv *env, jobject jthis, jint jkind, jstring jpathOrUrl,
+(JNIEnv *env, jobject jthis, jobject jkind, jstring jpathOrUrl,
  jobject jpegRevision, jstring jmergeSourceUrl, jobject jsrcPegRevision,
  jboolean jdiscoverChangedPaths, jobject jdepth, jobject jrevProps,
  jobject jlogMessageCallback)
@@ -1176,7 +1176,8 @@ JNIEXPORT void JNICALL Java_org_apache_s
 
   LogMessageCallback callback(jlogMessageCallback);
 
-  cl->getMergeinfoLog((int)jkind, pathOrUrl, pegRevision, mergeSourceUrl,
+  cl->getMergeinfoLog(EnumMapper::toMergeinfoLogKind(jkind),
+                      pathOrUrl, pegRevision, mergeSourceUrl,
                       srcPegRevision, jdiscoverChangedPaths ? true : false,
                       EnumMapper::toDepth(jdepth), revProps, &callback);
 }

Modified: 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
 (original)
+++ 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
 Sat Mar 20 20:15:33 2010
@@ -531,7 +531,7 @@ public interface ISVNClient
      * @param callback               the object to receive the log messages
      * @since 1.7
      */
-    void getMergeinfoLog(int kind, String pathOrUrl,
+    void getMergeinfoLog(MergeinfoLogKind kind, String pathOrUrl,
                          Revision pegRevision, String mergeSourceUrl,
                          Revision srcPegRevision, boolean discoverChangedPaths,
                          Depth depth, Set<String> revProps,

Modified: 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/MergeinfoLogKind.java
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/MergeinfoLogKind.java?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/MergeinfoLogKind.java
 (original)
+++ 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/MergeinfoLogKind.java
 Sat Mar 20 20:15:33 2010
@@ -27,11 +27,11 @@ package org.apache.subversion.javahl;
  * Constants to specify which collection of revisions to report in
  * getMergeinfoLog.
  */
-public interface MergeinfoLogKind
+public enum MergeinfoLogKind
 {
     /** Revisions eligible for merging from merge-source to merge-target. */
-    public static final int eligible = 0;
+    eligible,
 
     /** Revisions already merged from merge-source to merge-target. */
-    public static final int merged = 1;
+    merged;
 }

Modified: 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
 (original)
+++ 
subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
 Sat Mar 20 20:15:33 2010
@@ -339,7 +339,7 @@ public class SVNClient implements ISVNCl
     /**
      * @since 1.7
      */
-    public native void getMergeinfoLog(int kind, String pathOrUrl,
+    public native void getMergeinfoLog(MergeinfoLogKind kind, String pathOrUrl,
                                        Revision pegRevision,
                                        String mergeSourceUrl,
                                        Revision srcPegRevision,

Modified: 
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- 
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java
 (original)
+++ 
subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java
 Sat Mar 20 20:15:33 2010
@@ -1392,15 +1392,15 @@ public class SVNClient implements SVNCli
 
         try
         {
-            aSVNClient.getMergeinfoLog(kind, pathOrUrl,
-                        pegRevision == null ? null : pegRevision.toApache(),
-                        mergeSourceUrl,
-                        srcPegRevision == null ? null :
-                                                    srcPegRevision.toApache(),
-                        discoverChangedPaths, Depth.toADepth(depth),
-                        revprops == null ? null
-                          : new HashSet<String>(Arrays.asList(revprops)),
-                        new aLogMessageCallback());
+            aSVNClient.getMergeinfoLog(
+                org.apache.subversion.javahl.MergeinfoLogKind.values()[kind],
+                pathOrUrl, pegRevision == null ? null : pegRevision.toApache(),
+                mergeSourceUrl,
+                srcPegRevision == null ? null : srcPegRevision.toApache(),
+                discoverChangedPaths, Depth.toADepth(depth),
+                revprops == null ? null
+                   : new HashSet<String>(Arrays.asList(revprops)),
+                new aLogMessageCallback());
         }
         catch (org.apache.subversion.javahl.ClientException ex)
         {

Modified: 
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java?rev=925670&r1=925669&r2=925670&view=diff
==============================================================================
--- 
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
 (original)
+++ 
subversion/trunk/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
 Sat Mar 20 20:15:33 2010
@@ -2357,7 +2357,8 @@ public class BasicTests extends SVNTests
      * are no revisions to return.
      * @since 1.5
      */
-    private long[] getMergeinfoRevisions(int kind, String pathOrUrl,
+    private long[] getMergeinfoRevisions(MergeinfoLogKind kind,
+                                         String pathOrUrl,
                                          Revision pegRevision,
                                          String mergeSourceUrl,
                                          Revision srcPegRevision)


Reply via email to