On Wed, May 9, 2012 at 8:18 AM, <stsp_at_apache.org> wrote:
> Author: stsp
> Date: Wed May 9 12:18:37 2012
> New Revision: 1336128
>
> URL: http://svn.apache.org/viewvc?rev=1336128&view=rev
> Log:
> Blind attempt at fixing the JavaHL build after r1336110 broke it.
>
> [ in subversion/bindings/javahl/ ]
>
> * native/SVNClient.h,
> native/SVNClient.cpp
> (diff, diff, diff): Add propsOnly parameter.
>
> * native/org_apache_subversion_javahl_SVNClient.cpp
> (Java_org_apache_subversion_javahl_SVNClient_diff__Ljava_lang_String_2Lorg_apache_subversion_javahl_types_Revision_2Ljava_lang_String_2Lorg_apache_subversion_javahl_types_Revision_2Ljava_lang_String_2Ljava_io_OutputStream_2Lorg_apache_subversion_javahl_types_Depth_2Ljava_util_Collection_2ZZZZZ): Wow! This has to be
> the longest function name in all of Subversion!
>
> * src/org/apache/subversion/javahl/SVNClient.java
> (diff, diff): Add propsOnly parameter. Pass 'false' in compat wrappers.
>
> * src/org/apache/subversion/javahl/ISVNClient.java
> (diff, diff): Add propsOnly parameter.
[snip]
> Modified: subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java
> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java?rev=1336128&r1=1336127&r2=1336128&view=diff
> ==============================================================================
> --- subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java (original)
> +++ subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java Wed May 9 12:18:37 2012
> @@ -522,13 +522,14 @@ public interface ISVNClient
> * @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, OutputStream outStream,
> Depth depth, Collection<String> changelists,
> boolean ignoreAncestry, boolean noDiffDeleted, boolean force,
> - boolean copiesAsAdds, boolean ignoreProps)
> + boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly)
> throws ClientException;
>
> void diff(String target1, Revision revision1, String target2,
> @@ -554,6 +555,7 @@ public interface ISVNClient
> * @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,
> @@ -561,7 +563,7 @@ public interface ISVNClient
> OutputStream outStream,
> Depth depth, Collection<String> changelists,
> boolean ignoreAncestry, boolean noDiffDeleted, boolean force,
> - boolean copiesAsAdds, boolean ignoreProps)
> + boolean copiesAsAdds, boolean ignoreProps, boolean propsOnly)
> throws ClientException;
I do not know if these methods are new in 1.8, but if not, then this
is the public API. So for compatibility you have to add a new method
with the new additional options. You do not need to add a "2" or
anything to the method name since Java does not require that, just add
another method to the interface.
In the SVNClient implementation, you can remove the "native" from the
old method and just have it call the new native method with suitable
defaults.
--
Thanks
Mark Phippard
http://markphip.blogspot.com/
Received on 2012-05-09 16:00:12 CEST