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 2010/03/17 02:57:17 UTC

svn commit: r924092 - in /subversion/trunk/subversion/bindings/javahl: native/EnumMapper.cpp native/EnumMapper.h native/LogMessageCallback.cpp src/org/apache/subversion/javahl/ChangePath.java src/org/apache/subversion/javahl/Tristate.java

Author: hwright
Date: Wed Mar 17 01:57:17 2010
New Revision: 924092

URL: http://svn.apache.org/viewvc?rev=924092&view=rev
Log:
JavaHL: Make the Tristate class an enum.

[ in subversion/bindings/javahl/ ]
* native/EnumMapper.h,
  native/EnumMapper.cpp
  (mapTristate): Return the appropriate Tristate object.

* native/LogMessageCallback.cpp
  (singleMessage): Update callback method signature.
 
* src/org/apache/subversion/javahl/Tristate.java:
  Make an enum, rather than a class.

* src/org/apache/subversion/javahl/ChangePath.java:
  Update references to Tristate throughout to use the enum type rather than int.

Modified:
    subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp
    subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h
    subversion/trunk/subversion/bindings/javahl/native/LogMessageCallback.cpp
    subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ChangePath.java
    subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/Tristate.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=924092&r1=924091&r2=924092&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/EnumMapper.cpp Wed Mar 17 01:57:17 2010
@@ -540,17 +540,17 @@ jint EnumMapper::mapOperation(svn_wc_ope
     }
 }
 
-jint EnumMapper::mapTristate(svn_tristate_t tristate)
+jobject EnumMapper::mapTristate(svn_tristate_t tristate)
 {
   switch (tristate)
     {
     case svn_tristate_unknown:
     default:
-      return org_apache_subversion_javahl_Tristate_Unknown;
+      return mapEnum(JAVA_PACKAGE"/Tristate", "Unknown");
     case svn_tristate_true:
-      return org_apache_subversion_javahl_Tristate_True;
+      return mapEnum(JAVA_PACKAGE"/Tristate", "True");
     case svn_tristate_false:
-      return org_apache_subversion_javahl_Tristate_False;
+      return mapEnum(JAVA_PACKAGE"/Tristate", "False");
     }
 }
 

Modified: subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h?rev=924092&r1=924091&r2=924092&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h (original)
+++ subversion/trunk/subversion/bindings/javahl/native/EnumMapper.h Wed Mar 17 01:57:17 2010
@@ -57,7 +57,7 @@ class EnumMapper
   static jint mapConflictReason(svn_wc_conflict_reason_t reason);
   static jobject mapDepth(svn_depth_t depth);
   static jint mapOperation(svn_wc_operation_t);
-  static jint mapTristate(svn_tristate_t);
+  static jobject mapTristate(svn_tristate_t);
  private:
   static jobject mapEnum(const char *clazzName, const char *name);
   static jstring getName(const char *clazzName, jobject jenum);

Modified: subversion/trunk/subversion/bindings/javahl/native/LogMessageCallback.cpp
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/LogMessageCallback.cpp?rev=924092&r1=924091&r2=924092&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/LogMessageCallback.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/LogMessageCallback.cpp Wed Mar 17 01:57:17 2010
@@ -99,7 +99,9 @@ LogMessageCallback::singleMessage(svn_lo
     {
       midCP = env->GetMethodID(clazzCP,
                                "<init>",
-                               "(Ljava/lang/String;JLjava/lang/String;CIII)V");
+                               "(Ljava/lang/String;JLjava/lang/String;CI"
+                               "L"JAVA_PACKAGE"/Tristate;"
+                               "L"JAVA_PACKAGE"/Tristate;)V");
       if (JNIUtil::isJavaExceptionThrown())
         return SVN_NO_ERROR;
     }

Modified: subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ChangePath.java
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ChangePath.java?rev=924092&r1=924091&r2=924092&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ChangePath.java (original)
+++ subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ChangePath.java Wed Mar 17 01:57:17 2010
@@ -43,7 +43,7 @@ public class ChangePath implements java.
      * @param nodeKind          the kind of the changed path
      */
     public ChangePath(String path, long copySrcRevision, String copySrcPath,
-               char action, int nodeKind, int textMods, int propMods)
+               char action, int nodeKind, Tristate textMods, Tristate propMods)
     {
         this.path = path;
         this.copySrcRevision = copySrcRevision;
@@ -70,10 +70,10 @@ public class ChangePath implements java.
     private int nodeKind;
 
     /** Whether the text was modified. */
-    private int textMods;
+    private Tristate textMods;
 
     /** Whether the properties were modified. */
-    private int propMods;
+    private Tristate propMods;
 
     /**
      * Retrieve the path to the commited item
@@ -124,7 +124,7 @@ public class ChangePath implements java.
      * Retrieve whether the text was modified.
      * @return   the text mod state
      */
-    public int getTextMods()
+    public Tristate getTextMods()
     {
         return textMods;
     }
@@ -133,7 +133,7 @@ public class ChangePath implements java.
      * Retrieve whether the properties were modified.
      * @return   the prop mod state
      */
-    public int getPropMods()
+    public Tristate getPropMods()
     {
         return propMods;
     }

Modified: subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/Tristate.java
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/Tristate.java?rev=924092&r1=924091&r2=924092&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/Tristate.java (original)
+++ subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/Tristate.java Wed Mar 17 01:57:17 2010
@@ -23,14 +23,14 @@
 
 package org.apache.subversion.javahl;
 
-public final class Tristate
+public enum Tristate
 {
     /** The state of the thing is not known. */
-    public static final int Unknown = 0;
+    Unknown,
 
     /** The state of the thing is false. */
-    public static final int False = 1;
+    False,
 
     /** The state of the thing is true. */
-    public static final int True = 2;
+    True;
 }