tree ee7fa6a3dbf49d69be95be3d2f67fa1d642cda52
parent 53952e5c208696c989cb219c470a4778b46211d7
author Daniel Rall <dlr@apache.org> 1165537269 +0000
committer Daniel Rall <dlr@apache.org> 1165537269 +0000

On the javahl-diff-summarize branch: Fix bindings for the
svn_client_diff_summarize() API, removing the bug mentioned in r22599.
Improve test case and API.

[ in subversion/bindings/java/javahl/ ]

* native/DiffSummaryReceiver.cpp
  (onSummary): Remove FIXME comment (now fixed).

* native/org_tigris_subversion_javahl_SVNClient.cpp
  (Java_org_tigris_subversion_javahl_SVNClient_diffSummarize): Pass
   jdiffSummaryReceiver parameter to C++ DiffSummaryReceiver
   constructor, rather than jthis, fixing the but mentioned in r22599.

* src/org/tigris/subversion/javahl/DiffSummary.java
  (propsChanged): Rename from isPropsChanged().
  (toString): Return the path.
  (DiffKind.equals): Implement to compare kind.
  (DiffKind.hashCode): Implement to match equals().
  (DiffKind.toString): Return text corresponding to diff kind.

* src/org/tigris/subversion/javahl/tests/BasicTests.java
  Change import of java.util.ArrayList to java.util.HashMap.
  (testDiffSummarize): Expect an accurate number of diff summary
   notifications, and rigorously inspect one of them for validity.
  (DiffSummaries): Extend HashMap instead of ArrayList.
  (DiffSummaries.onSummary): Add DiffSummary paramter to storage keyed
   by path name.


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/javahl-diff-summarize@862674 13f79535-47bb-0310-9956-ffa450edef68
