You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by gb...@apache.org on 2013/12/08 18:56:53 UTC

svn commit: r1549081 [3/18] - in /subversion/branches/invoke-diff-cmd-feature: ./ build/ build/ac-macros/ build/generator/ build/generator/templates/ contrib/server-side/ contrib/server-side/svncutter/ subversion/bindings/javahl/native/ subversion/bind...

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/native/org_apache_subversion_javahl_util_SubstLib.cpp
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/native/org_apache_subversion_javahl_util_SubstLib.cpp?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/native/org_apache_subversion_javahl_util_SubstLib.cpp (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/native/org_apache_subversion_javahl_util_SubstLib.cpp Sun Dec  8 17:56:46 2013
@@ -24,17 +24,20 @@
  * @brief Implementation of the native methods in the Java class SubstLib
  */
 
+#include <memory>
+
 #include "../include/org_apache_subversion_javahl_util_SubstLib.h"
 
 #include "jniwrapper/jni_stack.hpp"
 #include "jniwrapper/jni_array.hpp"
 #include "jniwrapper/jni_string.hpp"
 #include "jniwrapper/jni_string_map.hpp"
+#include "jniwrapper/jni_io_stream.hpp"
 
 #include "JNIUtil.h"
-#include "InputStream.h"
+#include "NativeStream.hpp"
+#include "Utility.hpp"
 
-#include <apr_strings.h>
 #include <apr_hash.h>
 
 #include "svn_subst.h"
@@ -43,6 +46,68 @@
 
 
 namespace {
+apr_hash_t*
+build_keywords_common(Java::Env env, const SVN::Pool& pool,
+                      jbyteArray jkeywords_value, jlong jrevision,
+                      jstring jurl, jstring jrepos_root_url,
+                      jobject jdate, jstring jauthor)
+{
+  const Java::ByteArray keywords_value(env, jkeywords_value);
+  const Java::String url(env, jurl);
+  const Java::String repos_root_url(env, jrepos_root_url);
+  const Java::String author(env, jauthor);
+
+  const Java::ByteArray::Contents keywords_contents(keywords_value);
+  svn_string_t* keywords_string = keywords_contents.get_string(pool);
+  const char* revision = (jrevision < 0 ? NULL
+                          : apr_psprintf(pool.getPool(),
+                                         "%"APR_UINT64_T_FMT,
+                                         apr_uint64_t(jrevision)));
+  const Java::String::Contents url_contents(url);
+  const Java::String::Contents root_url_contents(repos_root_url);
+  const Java::String::Contents author_contents(author);
+
+  apr_hash_t* kw = NULL;
+  SVN_JAVAHL_CHECK(env,
+                   svn_subst_build_keywords3(
+                       &kw,
+                       keywords_string->data,
+                       revision,
+                       url_contents.c_str(),
+                       root_url_contents.c_str(),
+                       (jdate ? JNIUtil::getDate(jdate) : 0),
+                       author_contents.c_str(),
+                       pool.getPool()));
+  return kw;
+}
+
+svn_stream_t*
+translate_stream_common(Java::Env env, const SVN::Pool& pool,
+                        svn_stream_t* stream,
+                        jbyteArray jeol_marker, jboolean jrepair_eol,
+                        jobject jkeywords, jboolean juse_keywords,
+                        jboolean jexpand_keywords,
+                        jbyteArray jkeywords_value, jlong jrevision,
+                        jstring jurl, jstring jrepos_root_url,
+                        jobject jdate, jstring jauthor)
+{
+  apr_hash_t* const keywords =
+    (juse_keywords
+     ? JavaHL::Util::make_keyword_hash(env, jkeywords, pool)
+     : build_keywords_common(
+         env, pool, jkeywords_value, jrevision,
+         jurl, jrepos_root_url, jdate, jauthor));
+
+  const Java::ByteArray eol_marker(env, jeol_marker);
+  svn_string_t* const eol_str =
+    Java::ByteArray::Contents(eol_marker).get_string(pool);
+  return svn_subst_stream_translated(stream,
+                                     eol_str->data,
+                                     svn_boolean_t(jrepair_eol),
+                                     keywords,
+                                     svn_boolean_t(jexpand_keywords),
+                                     pool.getPool());
+}
 } // anoymous namespace
 
 
@@ -57,35 +122,13 @@ Java_org_apache_subversion_javahl_util_S
     {
       const Java::Env env(jenv);
 
-      const Java::ByteArray keywords_value(env, jkeywords_value);
-      const Java::String url(env, jurl);
-      const Java::String repos_root_url(env, jrepos_root_url);
-      const Java::String author(env, jauthor);
-
       // Using a "global" request pool since we don't keep a context with
       // its own pool around for these functions.
       SVN::Pool pool;
 
-      const Java::ByteArray::Contents keywords_contents(keywords_value);
-      svn_string_t* keywords_string = keywords_contents.get_string(pool);
-      const char* revision = (jrevision < 0 ? NULL
-                              : apr_psprintf(pool.getPool(),
-                                             "%"APR_UINT64_T_FMT,
-                                             apr_uint64_t(jrevision)));
-      const Java::String::Contents url_contents(url);
-      const Java::String::Contents root_url_contents(repos_root_url);
-      const Java::String::Contents author_contents(author);
-
-      apr_hash_t* kw = NULL;
-      SVN_JAVAHL_CHECK(svn_subst_build_keywords3(
-                           &kw,
-                           keywords_string->data,
-                           revision,
-                           url_contents.c_str(),
-                           root_url_contents.c_str(),
-                           (jdate ? JNIUtil::getDate(jdate) : 0),
-                           author_contents.c_str(),
-                           pool.getPool()));
+      apr_hash_t* const kw = build_keywords_common(
+          env, pool, jkeywords_value, jrevision,
+          jurl, jrepos_root_url, jdate, jauthor);
 
       Java::MutableMap<Java::ByteArray, jbyteArray>
         keywords(env, jint(apr_hash_count(kw)));
@@ -105,3 +148,71 @@ Java_org_apache_subversion_javahl_util_S
   SVN_JAVAHL_JNI_CATCH;
   return NULL;
 }
+
+
+JNIEXPORT jobject JNICALL
+Java_org_apache_subversion_javahl_util_SubstLib_translateInputStream(
+    JNIEnv* jenv, jobject jthis,
+    jobject jsource, jbyteArray jeol_marker, jboolean jrepair_eol,
+    jobject jkeywords, jboolean juse_keywords, jboolean jexpand_keywords,
+    jbyteArray jkeywords_value, jlong jrevision,
+    jstring jurl, jstring jrepos_root_url,
+    jobject jdate, jstring jauthor)
+{
+  SVN_JAVAHL_JNI_TRY(SubstLib, translateInputStream)
+    {
+      const Java::Env env(jenv);
+
+      // We'll allocate the stream in the bound object's pool.
+      std::auto_ptr<JavaHL::NativeInputStream>
+        translated(new JavaHL::NativeInputStream());
+      svn_stream_t* source = Java::InputStream::get_global_stream(
+          env, jsource, translated->get_pool());
+
+      translated->set_stream(translate_stream_common(
+                                 env, translated->get_pool(), source,
+                                 jeol_marker, jrepair_eol,
+                                 jkeywords, juse_keywords, jexpand_keywords,
+                                 jkeywords_value, jrevision,
+                                 jurl, jrepos_root_url, jdate, jauthor));
+      const jobject jtranslated = translated->create_java_wrapper();
+      translated.release();
+      return jtranslated;
+    }
+  SVN_JAVAHL_JNI_CATCH;
+  return NULL;
+}
+
+
+JNIEXPORT jobject JNICALL
+Java_org_apache_subversion_javahl_util_SubstLib_translateOutputStream(
+    JNIEnv* jenv, jobject jthis,
+    jobject jdestination, jbyteArray jeol_marker, jboolean jrepair_eol,
+    jobject jkeywords, jboolean juse_keywords, jboolean jexpand_keywords,
+    jbyteArray jkeywords_value, jlong jrevision,
+    jstring jurl, jstring jrepos_root_url,
+    jobject jdate, jstring jauthor)
+{
+  SVN_JAVAHL_JNI_TRY(SubstLib, translateInputStream)
+    {
+      const Java::Env env(jenv);
+
+      // We'll allocate the stream in the bound object's pool.
+      std::auto_ptr<JavaHL::NativeOutputStream>
+        translated(new JavaHL::NativeOutputStream());
+      svn_stream_t* destination = Java::OutputStream::get_global_stream(
+          env, jdestination, translated->get_pool());
+
+      translated->set_stream(translate_stream_common(
+                                 env, translated->get_pool(), destination,
+                                 jeol_marker, jrepair_eol,
+                                 jkeywords, juse_keywords, jexpand_keywords,
+                                 jkeywords_value, jrevision,
+                                 jurl, jrepos_root_url, jdate, jauthor));
+      const jobject jtranslated = translated->create_java_wrapper();
+      translated.release();
+      return jtranslated;
+    }
+  SVN_JAVAHL_JNI_CATCH;
+  return NULL;
+}

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientException.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientException.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientException.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientException.java Sun Dec  8 17:56:46 2013
@@ -30,13 +30,9 @@ import java.util.List;
  */
 public class ClientException extends NativeException
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 2L;
 
     /**
@@ -79,10 +75,10 @@ public class ClientException extends Nat
      * @param messageStack The whole stack of error messages
      * @since 1.9
      */
-    ClientException(String message, String source, int aprError,
-                    List<ErrorMessage> messageStack)
+    ClientException(String message, Throwable cause, String source,
+                    int aprError, List<ErrorMessage> messageStack)
     {
-        super(message, source, aprError);
+        super(message, source, cause, aprError);
         this.messageStack = messageStack;
     }
 
@@ -96,7 +92,7 @@ public class ClientException extends Nat
      */
     ClientException(String message, String source, int aprError)
     {
-        this(message, source, aprError, null);
+        this(message, null, source, aprError, null);
     }
 
     public List<ErrorMessage> getAllMessages()

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ClientNotifyInformation.java Sun Dec  8 17:56:46 2013
@@ -36,13 +36,9 @@ import java.util.EventObject;
  */
 public class ClientNotifyInformation extends EventObject
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 2L;
 
     /**
@@ -206,6 +202,7 @@ public class ClientNotifyInformation ext
      * @deprecated Constructor compatible with teh 1.8 API; uses
      * <code>null</code> URL and errMsgStack values.
      */
+    @Deprecated
     public ClientNotifyInformation(String path, Action action, NodeKind kind,
                              String mimeType, Lock lock, String errMsg,
                              Status contentState, Status propState,

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitInfo.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitInfo.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitInfo.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitInfo.java Sun Dec  8 17:56:46 2013
@@ -32,13 +32,9 @@ import org.apache.subversion.javahl.type
  */
 public class CommitInfo implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /** the revision committed */

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/CommitItem.java Sun Dec  8 17:56:46 2013
@@ -30,13 +30,9 @@ import org.apache.subversion.javahl.type
  */
 public class CommitItem implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/DiffSummary.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/DiffSummary.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/DiffSummary.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/DiffSummary.java Sun Dec  8 17:56:46 2013
@@ -33,13 +33,9 @@ import org.apache.subversion.javahl.type
  */
 public class DiffSummary extends EventObject
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     private DiffKind diffKind;

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java Sun Dec  8 17:56:46 2013
@@ -51,6 +51,11 @@ public interface ISVNClient
     public Version getVersion();
 
     /**
+     * @return Runtime version information about the loaded libsvn_client.
+     */
+    public RuntimeVersion getRuntimeVersion();
+
+    /**
      * @return Extended version information about the underlying
      * native libraries and operating system.
      */
@@ -314,6 +319,7 @@ public interface ISVNClient
      * @param handler   the commit message callback, may be <code>null</code>
      *                  if <code>destPath</code> is not a URL
      * @throws ClientException If the copy operation fails.
+     * @throws NullPointerException if the <code>sources</code> list is empty.
      */
     void copy(List<CopySource> sources, String destPath,
               boolean copyAsChild, boolean makeParents,
@@ -353,6 +359,7 @@ public interface ISVNClient
      * @deprecated Provided for backward compatibility with 1.7. Passes
      *             metadataOnly false and allowMixRev true.
      */
+    @Deprecated
     void move(Set<String> srcPaths, String destPath, boolean force,
               boolean moveAsChild, boolean makeParents,
               Map<String, String> revpropTable,
@@ -596,7 +603,7 @@ public interface ISVNClient
      * Merge set of revisions into a new local path.
      * <p>
      * <b>Note:</b> Behaves like the 1.8 version where ignoreAncestry
-     * maps to both ignoreMergeinfo and diffIgnoreAncestry
+     * maps to both ignoreMergeinfo and diffIgnoreAncestry.
      *
      * @param path          path or url
      * @param pegRevision   revision to interpret path
@@ -633,6 +640,7 @@ public interface ISVNClient
      * @throws ClientException
      * @deprecated Will be removed in a future release
      */
+    @Deprecated
     void mergeReintegrate(String path, Revision pegRevision,
                           String localPath, boolean dryRun)
              throws ClientException;
@@ -655,7 +663,7 @@ public interface ISVNClient
      * @param pegRevision            peg rev for pathOrUrl
      * @param mergeSourceUrl         the source of the merge
      * @param srcPegRevision         peg rev for mergeSourceUrl
-     * @param srcStartRevieion       lower bound of the source revision range
+     * @param srcStartRevision       lower bound of the source revision range
      * @param srcEndRevision         upper bound of the source revision range
      * @param discoverChangedPaths   return paths of changed items
      * @param depth                  the depth to recurse to
@@ -702,7 +710,7 @@ public interface ISVNClient
      * @param target2       second path or url
      * @param revision2     second revision
      * @param relativeToDir index path is relative to this path
-     * @param outFileName   file name where difference are written
+     * @param outStream     the stream to which difference are written
      * @param depth         how deep to traverse into subdirectories
      * @param ignoreAncestry ignore if files are not related
      * @param noDiffDeleted no output on deleted files
@@ -723,6 +731,26 @@ public interface ISVNClient
               DiffOptions options)
             throws ClientException;
 
+    /**
+     * Display the differences between two paths
+     * @param target1       first path or url
+     * @param revision1     first revision
+     * @param target2       second path or url
+     * @param revision2     second revision
+     * @param relativeToDir index path is relative to this path
+     * @param outFileName   file name where difference are written
+     * @param depth         how deep to traverse into subdirectories
+     * @param ignoreAncestry ignore if files are not related
+     * @param noDiffDeleted no output on deleted files
+     * @param force         diff even on binary files
+     * @param copiesAsAdds  if set, copied files will be shown in their
+     *                      entirety, not as diffs from their sources
+     * @param ignoreProps   don't show property diffs
+     * @param propsOnly     show property changes only
+     * @param options       additional options for controlling the output
+     * @throws ClientException
+     * @since 1.8
+     */
     void diff(String target1, Revision revision1, String target2,
               Revision revision2, String relativeToDir, String outFileName,
               Depth depth, Collection<String> changelists,
@@ -738,7 +766,7 @@ public interface ISVNClient
      * @param target2       second path or url
      * @param revision2     second revision
      * @param relativeToDir index path is relative to this path
-     * @param outFileName   file name where difference are written
+     * @param outStream     the stream to which difference are written
      * @param depth         how deep to traverse into subdirectories
      * @param ignoreAncestry ignore if files are not related
      * @param noDiffDeleted no output on deleted files
@@ -756,6 +784,24 @@ public interface ISVNClient
               boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly)
             throws ClientException;
 
+    /**
+     * Display the differences between two paths
+     * @param target1       first path or url
+     * @param revision1     first revision
+     * @param target2       second path or url
+     * @param revision2     second revision
+     * @param relativeToDir index path is relative to this path
+     * @param outFileName   file name where difference are written
+     * @param depth         how deep to traverse into subdirectories
+     * @param ignoreAncestry ignore if files are not related
+     * @param noDiffDeleted no output on deleted files
+     * @param force         diff even on binary files
+     * @param copiesAsAdds  if set, copied files will be shown in their
+     *                      entirety, not as diffs from their sources
+     * @param ignoreProps   don't show property diffs
+     * @param propsOnly     show property changes only
+     * @throws ClientException
+     */
     void diff(String target1, Revision revision1, String target2,
               Revision revision2, String relativeToDir, String outFileName,
               Depth depth, Collection<String> changelists,
@@ -770,7 +816,7 @@ public interface ISVNClient
      * @param startRevision first Revision to compare
      * @param endRevision   second Revision to compare
      * @param relativeToDir index path is relative to this path
-     * @param outFileName   file name where difference are written
+     * @param outStream     the stream to which difference are written
      * @param depth         how deep to traverse into subdirectories
      * @param changelists  if non-null, filter paths using changelists
      * @param ignoreAncestry ignore if files are not related
@@ -792,6 +838,27 @@ public interface ISVNClient
               DiffOptions options)
             throws ClientException;
 
+    /**
+     * Display the differences between two paths.
+     * @param target        path or url
+     * @param pegRevision   revision tointerpret target
+     * @param startRevision first Revision to compare
+     * @param endRevision   second Revision to compare
+     * @param relativeToDir index path is relative to this path
+     * @param outFileName   file name where difference are written
+     * @param depth         how deep to traverse into subdirectories
+     * @param changelists  if non-null, filter paths using changelists
+     * @param ignoreAncestry ignore if files are not related
+     * @param noDiffDeleted no output on deleted files
+     * @param force         diff even on binary files
+     * @param copiesAsAdds  if set, copied files will be shown in their
+     *                      entirety, not as diffs from their sources
+     * @param ignoreProps   don't show property diffs
+     * @param propsOnly     show property changes only
+     * @param options       additional options for controlling the output
+     * @throws ClientException
+     * @since 1.8
+     */
     void diff(String target, Revision pegRevision, Revision startRevision,
               Revision endRevision, String relativeToDir, String outFileName,
               Depth depth, Collection<String> changelists,
@@ -807,7 +874,7 @@ public interface ISVNClient
      * @param startRevision first Revision to compare
      * @param endRevision   second Revision to compare
      * @param relativeToDir index path is relative to this path
-     * @param outFileName   file name where difference are written
+     * @param outStream     the stream to which difference are written
      * @param depth         how deep to traverse into subdirectories
      * @param changelists  if non-null, filter paths using changelists
      * @param ignoreAncestry ignore if files are not related
@@ -827,6 +894,25 @@ public interface ISVNClient
               boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly)
             throws ClientException;
 
+    /**
+     * Display the differences between two paths.
+     * @param target        path or url
+     * @param pegRevision   revision tointerpret target
+     * @param startRevision first Revision to compare
+     * @param endRevision   second Revision to compare
+     * @param relativeToDir index path is relative to this path
+     * @param outFileName   file name where difference are written
+     * @param depth         how deep to traverse into subdirectories
+     * @param changelists  if non-null, filter paths using changelists
+     * @param ignoreAncestry ignore if files are not related
+     * @param noDiffDeleted no output on deleted files
+     * @param force         diff even on binary files
+     * @param copiesAsAdds  if set, copied files will be shown in their
+     *                      entirety, not as diffs from their sources
+     * @param ignoreProps   don't show property diffs
+     * @param propsOnly     show property changes only
+     * @throws ClientException
+     */
     void diff(String target, Revision pegRevision, Revision startRevision,
               Revision endRevision, String relativeToDir, String outFileName,
               Depth depth, Collection<String> changelists,
@@ -866,7 +952,7 @@ public interface ISVNClient
      *
      * @param target Path or URL.
      * @param pegRevision Revision at which to interpret
-     * <code>target</code>.  If {@link Revision.Kind#unspecified} or
+     * <code>target</code>.  If {@link Revision#UNSPECIFIED} or
      * <code>null</code>, behave identically to {@link
      * #diffSummarize(String, Revision, String, Revision, Depth,
      * Collection, boolean, DiffSummaryCallback)}, using
@@ -931,14 +1017,11 @@ public interface ISVNClient
      *
      * @param paths   paths of the items
      * @param name    name of the property
-     * @param value   new value of the property. Set value to <code>
-     * null</code> to delete a property
+     * @param value   new value of the property. Set value to
+     * <code>null</code> to delete a property
      * @param depth   the depth to recurse into subdirectories
      * @param changelists changelists to filter by
      * @param force   do not check if the value is valid
-     * @param revpropTable A string-to-string mapping of revision properties
-     *                     to values which will be set if this operation
-     *                     results in a commit.
      * @throws ClientException
      */
     void propertySetLocal(Set<String> paths, String name, byte[] value,
@@ -946,6 +1029,21 @@ public interface ISVNClient
                           boolean force)
             throws ClientException;
 
+    /**
+     * Sets one property of an item with a String value
+     *
+     * @param paths   paths of the items
+     * @param name    name of the property
+     * @param value   new value of the property. Set value to <code>
+     * null</code> to delete a property
+     * @param depth   the depth to recurse into subdirectories
+     * @param changelists changelists to filter by
+     * @param force   do not check if the value is valid
+     * @param revpropTable A string-to-string mapping of revision properties
+     *                     to values which will be set if this operation
+     *                     results in a commit.
+     * @throws ClientException
+     */
     void propertySetRemote(String path, long baseRev, String name,
                            byte[] value, CommitMessageCallback handler,
                            boolean force, Map<String, String> revpropTable,
@@ -1192,7 +1290,7 @@ public interface ISVNClient
      */
     void info2(String pathOrUrl,
                Revision revision, Revision pegRevision, Depth depth,
-               boolean fertchExcluded, boolean fetchActualOnly,
+               boolean fetchExcluded, boolean fetchActualOnly,
                Collection<String> changelists, InfoCallback callback)
         throws ClientException;
 

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNConfig.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNConfig.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNConfig.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNConfig.java Sun Dec  8 17:56:46 2013
@@ -132,7 +132,7 @@ public interface ISVNConfig
     /**
      * Interface for reading and modifying configuration
      * categories. Returned by {@link #config()} and
-     * {@link servers()}.
+     * {@link #servers()}.
      */
     public interface Category
     {
@@ -160,7 +160,7 @@ public interface ISVNConfig
 
         /**
          * Returns the long integer value of a configuration option.
-         * @see #get(String,String,Boolean)
+         * @see #get(String,String,boolean)
          */
         long get(String section,
                  String option,
@@ -169,8 +169,8 @@ public interface ISVNConfig
 
         /**
          * Returns the {@link Tristate} value of a configuration option.
-         * @param unknown The value used for {@link Tristate.Unknown}.
-         * @see #get(String,String,Boolean)
+         * @param unknown The value used for {@link Tristate#Unknown}.
+         * @see #get(String,String,boolean)
          */
         Tristate get(String section,
                      String option,
@@ -181,7 +181,7 @@ public interface ISVNConfig
         /**
          * Check that the configuration option's value is true, false
          * or "ask". The boolean representations are the same as those
-         * understood by {@link #get(String,String,Boolean)}. If the
+         * understood by {@link #get(String,String,boolean)}. If the
          * option is not found, the default value will be parsed
          * instead.
          * @return {@link ISVNConfig#TRUE}, {@link ISVNConfig#FALSE}
@@ -207,7 +207,7 @@ public interface ISVNConfig
 
         /**
          * Set the value of a configuration option to represent a boolean.
-         * @see @set(String,String,String)
+         * @see #set(String,String,String)
          */
         void set(String section,
                  String option,
@@ -215,7 +215,7 @@ public interface ISVNConfig
 
         /**
          * Set the value of a configuration option to represent a long integer.
-         * @see @set(String,String,String)
+         * @see #set(String,String,String)
          */
         void set(String section,
                  String option,

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNEditor.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNEditor.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNEditor.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNEditor.java Sun Dec  8 17:56:46 2013
@@ -31,8 +31,8 @@ import java.util.Map;
 
 /**
  * Editor interface (implements the EV2 abstraction).
- * @see <a href="http://svn.apache.org/repos/asf/subversion/trunk/subversion/include/private/svn_editor.h"
- *      >svn_editor.h</a> for all restrictions on driving an editor.
+ * @see <a href="http://svn.apache.org/repos/asf/subversion/trunk/subversion/include/private/svn_editor.h">svn_editor.h</a>
+ *      for all restrictions on driving an editor.
  * @since 1.9
  */
 public interface ISVNEditor
@@ -288,4 +288,86 @@ public interface ISVNEditor
      * @throws ClientException
      */
     void abort() throws ClientException;
+
+
+    /**
+     * Callback interface for providing the base contents of a file
+     * that is being modified.
+     * @see ISVNRemote.getCommitEditor(Map,CommitCallback,Set,boolean,ISVNEditor.ProvideBaseCallback,ISVNEditor.ProvidePropsCallback,ISVNEditor.GetNodeKindCallback)
+     */
+    public interface ProvideBaseCallback
+    {
+        public static class ReturnValue
+        {
+            /**
+             * @param contents The base ({@link Revision#BASE}) contents
+             *         of the file.
+             * @param revision The base revision number.
+             */
+            public ReturnValue(InputStream contents, long revision)
+            {
+                this.contents = contents;
+                this.revision = revision;
+            }
+
+            final InputStream contents;
+            final long revision;
+        }
+
+        /**
+         * Returns the base contents and revision number of the file.
+         * @param reposRelpath The repository path of the file,
+         *        relative to the session base URL.
+         */
+        ReturnValue getContents(String reposRelpath);
+    }
+
+    /**
+     * Callback interface for providing the base properties of a file
+     * or directory that is being modified.
+     * @see ISVNRemote.getCommitEditor(Map,CommitCallback,Set,boolean,ISVNEditor.ProvideBaseCallback,ISVNEditor.ProvidePropsCallback,ISVNEditor.GetNodeKindCallback)
+     */
+    public interface ProvidePropsCallback
+    {
+        public static class ReturnValue
+        {
+            /**
+             * @param properties The base ({@link Revision#BASE}) properties
+             *         of the file or directory.
+             * @param revision The base revision number.
+             */
+            public ReturnValue(Map<String, byte[]> properties, long revision)
+            {
+                this.properties = properties;
+                this.revision = revision;
+            }
+
+            final Map<String, byte[]> properties;
+            final long revision;
+        }
+
+        /**
+         * Returns the base properties and revision number of the file
+         * or directory.
+         * @param reposRelpath The repository path of the file or directory,
+         *        relative to the session base URL.
+         */
+        ReturnValue getProperties(String reposRelpath);
+    }
+
+    /**
+     * Callback interface for providing the kind of the node that was
+     * the source of a copy.
+     * @see ISVNRemote.getCommitEditor(Map,CommitCallback,Set,boolean,ISVNEditor.ProvideBaseCallback,ISVNEditor.ProvidePropsCallback,ISVNEditor.GetNodeKindCallback)
+     */
+    public interface GetNodeKindCallback
+    {
+        /**
+         * Returns the kind of the node that was the source of a copy.
+         * @param reposRelpath The repository path of the node,
+         *        relative to the session base URL.
+         * @param revision The copy-from revision.
+         */
+        NodeKind getKind(String reposRelpath, long revision);
+    }
 }

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNRemote.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNRemote.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNRemote.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNRemote.java Sun Dec  8 17:56:46 2013
@@ -34,7 +34,8 @@ import java.io.OutputStream;
 
 /**
  * Encapsulates an RA session object and related operations.
- * @see subversion/include/svn_ra.h#svn_ra_open
+ * @see <a href="http://svn.apache.org/repos/asf/subversion/trunk/subversion/include/svn_ra.h">svn_ra.h</a>,
+ *      the documentation of the <code>svn_ra_open</code> function.
  * @since 1.9
  */
 public interface ISVNRemote
@@ -53,9 +54,11 @@ public interface ISVNRemote
 
     /** Change the URL of the session to point to a new path in the
      * same repository.
+     *<p>
+     * <b>Note:</b> The operation fails if the URL has a different
+     * repository root than the current session URL.
+     *<p>
      * @throws ClientException
-     * @note The operation fails if the URL has a different repository
-     *       root than the current session URL.
      */
     void reparent(String url) throws ClientException;
 
@@ -115,20 +118,22 @@ public interface ISVNRemote
 
     /**
      * Change the value of an unversioned property.
+     *<p>
+     * <b>Note:</b> If the server has Capability.atomic_revprops and
+     * <code>oldValue</code> is not <code>null</code>, and the present
+     * value of the propery is not <code>oldValue</code> (e.g., if
+     * another client changed the property), then the operation will
+     * fail.
+     *<p>
+     * <b>Note:</b> If the server does not adveritse
+     * Capability.atomic_revprops, then <code>oldValue</code>
+     * <em>must</em> be <code>null</code>.
+     *<p>
      * @param revision The revision to which the propery is attached
      * @param propertyName The name of the propery
      * @param oldValue The previous value of the property (see note below)
      * @param newValue The new value of the property. If <code>newValue</code>
      *        is <code>null</code>, the property will be deleted.
-     *
-     * @node If the server has Capability.atomic_revprops and
-     *       <code>oldValue</code> is not <code>null</code>, and the
-     *       present value of the propery is not <code>oldValue</code>
-     *       (e.g., if another client changed the property), then
-     *       the operation will fail.
-     * @note If the server does not adveritse Capability.atomic_revprops,
-     *       then <code>oldValue</code> <em>must</em> be <code>null</code>.
-     *
      * @throws IllegalArgumentException if <code>oldValue</code> is not
      *         <code>null</code> and the server does not advertise the
      *         atomic_revprops capability.
@@ -190,14 +195,35 @@ public interface ISVNRemote
      * locks on committed objects.  Else, automatically release such
      * locks.
      * <p>
+     * The callbacks <code>getBase</code>, <code>getProps</code> and
+     * <code>getCopyfromKind</code> are invoked by the editor to fetch
+     * the contents, preoprties and copyfrom kind of an entry during
+     * the commit drive. They may be <code>null</code>; in that case,
+     * the commit may be less efficient because the client will not be
+     * able to delta-compress the data sent to the server, and more
+     * server connections may have to be opened.
+     * <p>
      * The caller may not perform any remote operations using this session
      * before finishing the edit.
      * @throws ClientException
      */
     ISVNEditor getCommitEditor(Map<String, byte[]> revisionProperties,
                                CommitCallback commitCallback,
-                               Set<Lock> lockTokens,
-                               boolean keepLocks)
+                               Set<Lock> lockTokens, boolean keepLocks,
+                               ISVNEditor.ProvideBaseCallback getBase,
+                               ISVNEditor.ProvidePropsCallback getProps,
+                               ISVNEditor.GetNodeKindCallback getCopyfromKind)
+            throws ClientException;
+
+    /**
+     * Like {@link #getCommitEditor(Map,CommitCallback<Set,boolean,
+     * ISVNEditor.ProvideBaseCallback,ISVNEditor.ProvidePropsCallback,
+     * ISVNEditor.GetNodeKindCallback)}, but with all callbacks set to
+     * <code>null</code>.
+     */
+    ISVNEditor getCommitEditor(Map<String, byte[]> revisionProperties,
+                               CommitCallback commitCallback,
+                               Set<Lock> lockTokens, boolean keepLocks)
             throws ClientException;
 
     /**
@@ -292,7 +318,7 @@ public interface ISVNRemote
      *
      * @param revision The revision to look for <code>paths</code>
      *                 in. Defaults to the youngest revision when
-     *                 {@link Revision.SVN_INVALID_REVNUM}.
+     *                 {@link Revision#SVN_INVALID_REVNUM}.
      * @param inherit Indicates whether explicit, explicit or
      *                inherited, or only inherited mergeinfo for
      *                <code>paths</code> is retrieved.

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIError.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIError.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIError.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/JNIError.java Sun Dec  8 17:56:46 2013
@@ -28,13 +28,9 @@ package org.apache.subversion.javahl;
  */
 public class JNIError extends Error
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeException.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeException.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeException.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeException.java Sun Dec  8 17:56:46 2013
@@ -29,13 +29,9 @@ package org.apache.subversion.javahl;
  */
 class NativeException extends SubversionException
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**
@@ -58,9 +54,10 @@ class NativeException extends Subversion
      * @param aprError Any associated APR error code for a wrapped
      * <code>svn_error_t</code>.
      */
-    NativeException(String message, String source, int aprError)
+    NativeException(String message, String source, Throwable cause,
+                    int aprError)
     {
-        super(message);
+        super(message, cause);
         this.source = source;
         this.aprError = aprError;
     }

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/NativeResources.java Sun Dec  8 17:56:46 2013
@@ -24,6 +24,7 @@
 package org.apache.subversion.javahl;
 
 import org.apache.subversion.javahl.types.Version;
+import org.apache.subversion.javahl.types.RuntimeVersion;
 
 /**
  * Handles activities related to management of native resouces
@@ -35,21 +36,32 @@ import org.apache.subversion.javahl.type
 public class NativeResources
 {
     /**
-     * @return Version information about the underlying native libraries.
+     * Version information about the underlying native libraries.
      */
     private static Version version;
 
     /**
-     * Returns version information about the underlying native libraries.
-     *
-     * @return version
-     *
+     * Runtime version information about the loaded libsvn_client.
+     */
+    private static RuntimeVersion runtimeVersion;
+
+    /**
+     * @return Version information about the underlying native libraries.
      */
-    public static Version getVersion() {
+    public static Version getVersion()
+    {
         return version;
     }
 
     /**
+     * @return Runtime version information about the loaded libsvn_client.
+     */
+    public static RuntimeVersion getRuntimeVersion()
+    {
+        return runtimeVersion;
+    }
+
+    /**
      * Load the required native library whose path is specified by the
      * system property <code>subversion.native.library</code> (which
      * can be passed to the JVM on start-up using an argument like
@@ -138,6 +150,16 @@ public class NativeResources
             throw new LinkageError("Native library version must be at least " +
                                    "1.9.0, but is only " + version);
         }
+
+        runtimeVersion = new RuntimeVersion();
+        if (runtimeVersion.getMajor() < version.getMajor()
+            || (runtimeVersion.getMajor() == version.getMajor()
+                && runtimeVersion.getMinor() < version.getMinor()))
+        {
+            throw new LinkageError(
+                "Compile-time Native library version is " + version +
+                " but the run-time version is " + runtimeVersion);
+        }
     }
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ProgressEvent.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ProgressEvent.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ProgressEvent.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ProgressEvent.java Sun Dec  8 17:56:46 2013
@@ -31,13 +31,9 @@ import org.apache.subversion.javahl.call
  */
 public class ProgressEvent implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ReposNotifyInformation.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ReposNotifyInformation.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ReposNotifyInformation.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/ReposNotifyInformation.java Sun Dec  8 17:56:46 2013
@@ -32,13 +32,9 @@ import org.apache.subversion.javahl.call
  */
 public class ReposNotifyInformation extends EventObject
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java Sun Dec  8 17:56:46 2013
@@ -103,6 +103,11 @@ public class SVNClient implements ISVNCl
         return NativeResources.getVersion();
     }
 
+    public RuntimeVersion getRuntimeVersion()
+    {
+        return NativeResources.getRuntimeVersion();
+    }
+
     public native VersionExtended getVersionExtended(boolean verbose);
 
     public native String getAdminDirectoryName();
@@ -112,6 +117,7 @@ public class SVNClient implements ISVNCl
     /**
       * @deprecated
       */
+    @Deprecated
     public native String getLastPath();
 
     public native void status(String path, Depth depth, boolean onServer,
@@ -215,6 +221,7 @@ public class SVNClient implements ISVNCl
             throws ClientException;
 
     /** @deprecated */
+    @Deprecated
     public void move(Set<String> srcPaths, String destPath,
                      boolean force, boolean moveAsChild,
                      boolean makeParents,
@@ -323,6 +330,7 @@ public class SVNClient implements ISVNCl
 
 
     /** @deprecated */
+    @Deprecated
     public native void mergeReintegrate(String path, Revision pegRevision,
                                         String localPath, boolean dryRun)
             throws ClientException;

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNUtil.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNUtil.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNUtil.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNUtil.java Sun Dec  8 17:56:46 2013
@@ -402,7 +402,7 @@ public class SVNUtil
      *  <dd>relative to the server's hostname</dd>
      * </dl>
      *<p>
-     * The <code>../<code> and ^/ relative URLs may use <code>..<code>
+     * The <code>../<code> and ^/ relative URLs may use <code>..</code>
      * to remove path elements up to the server root.
      *<p>
      * The external URL should not be canonicalized before calling
@@ -431,7 +431,7 @@ public class SVNUtil
      * @see translateStream
      * @see untranslateStream
      */
-    public static final byte[] EOL_LF = substLib.EOL_LF;
+    public static final byte[] EOL_LF = SubstLib.EOL_LF;
 
     /**
      * Use the carraige-return code point ('<code>\x0d</code>')
@@ -439,7 +439,7 @@ public class SVNUtil
      * @see translateStream
      * @see untranslateStream
      */
-    public static final byte[] EOL_CR = substLib.EOL_CR;
+    public static final byte[] EOL_CR = SubstLib.EOL_CR;
 
     /**
      * Use carriage-return/linefeed sequence ('<code>\x0d\x0a</code>')
@@ -447,7 +447,7 @@ public class SVNUtil
      * @see translateStream
      * @see untranslateStream
      */
-    public static final byte[] EOL_CRLF = substLib.EOL_CRLF;
+    public static final byte[] EOL_CRLF = SubstLib.EOL_CRLF;
 
 
     /**
@@ -517,9 +517,10 @@ public class SVNUtil
      * Return a stream which performs end-of-line translation and
      * keyword expansion when read from.
      *<p>
-     * Make sure you close the reurned stream stream to ensure all
-     * data are flushed and cleaned up (this will also close the
-     * provided stream).
+     * <b>Important:</b> Make sure you close the reurned stream to
+     * ensure all data are flushed and cleaned up (this will also
+     * close the provided stream and dispose the related netive
+     * object).
      *<p>
      * If <code>eolMarker</code> is not <code>null</code>, replace
      * whatever any end-of-line sequences in the input with
@@ -531,7 +532,8 @@ public class SVNUtil
      *       generate an error when the inconsistency is detected;</li>
      *   <li>if <code>repaorEol</code> is <code>true</code>, convert any
      *       line ending to <code>eolMarker</code>.<br/>
-     *       Recognized line endings are: "\n", "\r", and "\r\n".</li>
+     *       Recognized line endings are: "<code>\n</code>",
+     *       "<code>\r</code>", and "<code>\r\n</code>".</li>
      * </ul>
      *<p>
      * Expand or contract keywords using the contents of

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SubversionException.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SubversionException.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SubversionException.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/SubversionException.java Sun Dec  8 17:56:46 2013
@@ -47,4 +47,16 @@ public class SubversionException extends
     {
         super(message);
     }
+
+    /**
+     * This constructor is only used by sub-classes and the native
+     * implementation.
+     *
+     * @param message A description of the problem.
+     * @param cause The root cause of the exception.
+     */
+    protected SubversionException(String message, Throwable cause)
+    {
+        super(message, cause);
+    }
 }

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/CommitEditor.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/CommitEditor.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/CommitEditor.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/CommitEditor.java Sun Dec  8 17:56:46 2013
@@ -131,12 +131,15 @@ public class CommitEditor extends JNIObj
         CommitEditor createInstance(RemoteSession session,
                                     Map<String, byte[]> revisionProperties,
                                     CommitCallback commitCallback,
-                                    Set<Lock> lockTokens,
-                                    boolean keepLocks)
+                                    Set<Lock> lockTokens, boolean keepLocks,
+                                    ISVNEditor.ProvideBaseCallback baseCB,
+                                    ISVNEditor.ProvidePropsCallback propsCB,
+                                    ISVNEditor.GetNodeKindCallback kindCB)
             throws ClientException
     {
-        long cppAddr = nativeCreateInstance(session, revisionProperties,
-                                            commitCallback, lockTokens, keepLocks);
+        long cppAddr = nativeCreateInstance(
+            session, revisionProperties, commitCallback,
+            lockTokens, keepLocks, baseCB, propsCB, kindCB);
         return new CommitEditor(cppAddr, session);
     }
 
@@ -163,7 +166,9 @@ public class CommitEditor extends JNIObj
         long nativeCreateInstance(RemoteSession session,
                                   Map<String, byte[]> revisionProperties,
                                   CommitCallback commitCallback,
-                                  Set<Lock> lockTokens,
-                                  boolean keepLocks)
+                                  Set<Lock> lockTokens, boolean keepLocks,
+                                  ISVNEditor.ProvideBaseCallback baseCB,
+                                  ISVNEditor.ProvidePropsCallback propsCB,
+                                  ISVNEditor.GetNodeKindCallback kindCB)
             throws ClientException;
 }

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/RemoteSession.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/RemoteSession.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/RemoteSession.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/remote/RemoteSession.java Sun Dec  8 17:56:46 2013
@@ -132,20 +132,32 @@ public class RemoteSession extends JNIOb
 
     public ISVNEditor getCommitEditor(Map<String, byte[]> revisionProperties,
                                       CommitCallback commitCallback,
-                                      Set<Lock> lockTokens,
-                                      boolean keepLocks)
+                                      Set<Lock> lockTokens, boolean keepLocks,
+                                      ISVNEditor.ProvideBaseCallback getBase,
+                                      ISVNEditor.ProvidePropsCallback getProps,
+                                      ISVNEditor.GetNodeKindCallback getCopyfromKind)
             throws ClientException
     {
         check_inactive(editorReference, reporterReference);
         ISVNEditor ed =
             CommitEditor.createInstance(this, revisionProperties,
-                                        commitCallback, lockTokens, keepLocks);
+                                        commitCallback, lockTokens, keepLocks,
+                                        getBase, getProps, getCopyfromKind);
         if (editorReference != null)
             editorReference.clear();
         editorReference = new WeakReference<ISVNEditor>(ed);
         return ed;
     }
 
+    public ISVNEditor getCommitEditor(Map<String, byte[]> revisionProperties,
+                                      CommitCallback commitCallback,
+                                      Set<Lock> lockTokens, boolean keepLocks)
+            throws ClientException
+    {
+        return getCommitEditor(revisionProperties, commitCallback,
+                               lockTokens, keepLocks, null, null, null);
+    }
+
     public long getFile(long revision, String path,
                         OutputStream contents,
                         Map<String, byte[]> properties)

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ChangePath.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ChangePath.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ChangePath.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ChangePath.java Sun Dec  8 17:56:46 2013
@@ -25,13 +25,9 @@ package org.apache.subversion.javahl.typ
 
 public class ChangePath implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 2L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Checksum.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Checksum.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Checksum.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Checksum.java Sun Dec  8 17:56:46 2013
@@ -25,13 +25,9 @@ package org.apache.subversion.javahl.typ
 
 public class Checksum implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/CopySource.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/CopySource.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/CopySource.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/CopySource.java Sun Dec  8 17:56:46 2013
@@ -29,13 +29,9 @@ package org.apache.subversion.javahl.typ
  */
 public class CopySource implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/DirEntry.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/DirEntry.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/DirEntry.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/DirEntry.java Sun Dec  8 17:56:46 2013
@@ -32,13 +32,9 @@ import org.apache.subversion.javahl.ISVN
  */
 public class DirEntry implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ExternalItem.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ExternalItem.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ExternalItem.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/ExternalItem.java Sun Dec  8 17:56:46 2013
@@ -46,10 +46,10 @@ public class ExternalItem implements jav
      *
      * @param targetDir See {@link #getTargetDir}
      * @param url See {@link #getUrl}
--     * @param revision See {@link #getRevision};
--     *     <code>null</code> will be interpreted as <code>pegRevision</code>
--     * @param pegRevision See {@link #getPegRevision};
--     *     <code>null</code> will be interpreted as {@link Revision#HEAD}
+     * @param revision See {@link #getRevision};
+     *     <code>null</code> will be interpreted as <code>pegRevision</code>
+     * @param pegRevision See {@link #getPegRevision};
+     *     <code>null</code> will be interpreted as {@link Revision#HEAD}
      */
     public ExternalItem(String targetDir, String url,
                         Revision revision, Revision pegRevision)
@@ -130,6 +130,11 @@ public class ExternalItem implements jav
     /* Exception class for failed revision kind validation. */
     private static class BadRevisionKindException extends SubversionException
     {
+        // Update the serialVersionUID when there is a incompatible change made to
+        // this class.  See the java documentation for when a change is incompatible.
+        // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
+        private static final long serialVersionUID = 1L;
+
         public BadRevisionKindException(String param)
         {
             super("the '" + param + "' constructor argument" +

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Info.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Info.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Info.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Info.java Sun Dec  8 17:56:46 2013
@@ -35,13 +35,9 @@ import org.apache.subversion.javahl.ISVN
  */
 public class Info implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Lock.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Lock.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Lock.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Lock.java Sun Dec  8 17:56:46 2013
@@ -31,13 +31,9 @@ import java.util.Date;
  */
 public class Lock implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Mergeinfo.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Mergeinfo.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Mergeinfo.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Mergeinfo.java Sun Dec  8 17:56:46 2013
@@ -37,13 +37,9 @@ import org.apache.subversion.javahl.Subv
  */
 public class Mergeinfo implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Revision.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Revision.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Revision.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Revision.java Sun Dec  8 17:56:46 2013
@@ -32,13 +32,9 @@ import java.util.Locale;
  */
 public class Revision implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 1L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/RevisionRange.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/RevisionRange.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/RevisionRange.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/RevisionRange.java Sun Dec  8 17:56:46 2013
@@ -29,13 +29,9 @@ package org.apache.subversion.javahl.typ
  */
 public class RevisionRange implements Comparable<RevisionRange>, java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 2L;
 
     private Revision from;

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Status.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Status.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Status.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/types/Status.java Sun Dec  8 17:56:46 2013
@@ -35,13 +35,9 @@ import org.apache.subversion.javahl.Conf
  */
 public class Status implements java.io.Serializable
 {
-    // Update the serialVersionUID when there is a incompatible change
-    // made to this class.  See any of the following, depending upon
-    // the Java release.
-    // http://java.sun.com/j2se/1.3/docs/guide/serialization/spec/version.doc7.html
-    // http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf
-    // http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/version.html#6678
-    // http://java.sun.com/javase/6/docs/platform/serialization/spec/version.html#6678
+    // Update the serialVersionUID when there is a incompatible change made to
+    // this class.  See the java documentation for when a change is incompatible.
+    // http://java.sun.com/javase/7/docs/platform/serialization/spec/version.html#6678
     private static final long serialVersionUID = 2L;
 
     /**

Modified: subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/util/SubstLib.java
URL: http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/util/SubstLib.java?rev=1549081&r1=1549080&r2=1549081&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/util/SubstLib.java (original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/bindings/javahl/src/org/apache/subversion/javahl/util/SubstLib.java Sun Dec  8 17:56:46 2013
@@ -78,42 +78,36 @@ public class SubstLib
     /**
      * @see SVNUtil.translateStream
      */
-    public /*native*/ InputStream translateInputStream(
-                                      InputStream source,
-                                      byte[] eolMarker,
-                                      boolean repairEol,
-                                      Map<String, byte[]> keywords,
-                                      boolean useKeywordsMap,
-                                      boolean expandKeywords,
-                                      byte[] keywordsValue,
-                                      long revision,
-                                      String url,
-                                      String reposRootUrl,
-                                      Date date,
-                                      String author)
-        throws SubversionException, ClientException//;
-    {
-        throw new RuntimeException("Not implemented: SubstLib.translateInputStream");
-    }
+    public native InputStream translateInputStream(
+                                  InputStream source,
+                                  byte[] eolMarker,
+                                  boolean repairEol,
+                                  Map<String, byte[]> keywords,
+                                  boolean useKeywordsMap,
+                                  boolean expandKeywords,
+                                  byte[] keywordsValue,
+                                  long revision,
+                                  String url,
+                                  String reposRootUrl,
+                                  Date date,
+                                  String author)
+        throws SubversionException, ClientException;
 
     /**
      * @see SVNUtil.translateStream
      */
-    public /*native*/ OutputStream translateOutputStream(
-                                      OutputStream destination,
-                                      byte[] eolMarker,
-                                      boolean repairEol,
-                                      Map<String, byte[]> keywords,
-                                      boolean useKeywordsMap,
-                                      boolean expandKeywords,
-                                      byte[] keywordsValue,
-                                      long revision,
-                                      String url,
-                                      String reposRootUrl,
-                                      Date date,
-                                      String author)
-        throws SubversionException, ClientException//;
-    {
-        throw new RuntimeException("Not implemented: SubstLib.translateOutputStream");
-    }
+    public native OutputStream translateOutputStream(
+                                   OutputStream destination,
+                                   byte[] eolMarker,
+                                   boolean repairEol,
+                                   Map<String, byte[]> keywords,
+                                   boolean useKeywordsMap,
+                                   boolean expandKeywords,
+                                   byte[] keywordsValue,
+                                   long revision,
+                                   String url,
+                                   String reposRootUrl,
+                                   Date date,
+                                   String author)
+        throws SubversionException, ClientException;
 }