You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2010/03/17 16:14:56 UTC

svn commit: r924328 - in /subversion/trunk/subversion/bindings/javahl: native/ src/org/apache/subversion/javahl/ src/org/tigris/subversion/javahl/

Author: hwright
Date: Wed Mar 17 15:14:56 2010
New Revision: 924328

URL: http://svn.apache.org/viewvc?rev=924328&view=rev
Log:
JavaHL: Remove the deprecated notification API from the apache package.

[ in subversion/bindings/javahl/ ]
* native/SVNClient.h,
  native/SVNClient.cpp
  (notification): Remove.

* native/org_apache_subversion_javahl_SVNClient.cpp
  (Java_org_apache_subversion_javahl_SVNClient_notification): Remove.

* src/org/apache/subversion/javahl/SVNClient.java
  (notification): Remove.

* src/org/apache/subversion/javahl/Notify.java:
  Remove.

* src/org/tigris/subversion/javahl/SVNClient.java
  (notification): Implement as a wrapper around the notification2 API.

* src/org/tigris/subversion/javahl/Notify.java:
  Revert r907931 so as to get the contents of the interface back into
  the tigris package proper.

Removed:
    subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/Notify.java
Modified:
    subversion/trunk/subversion/bindings/javahl/native/SVNClient.cpp
    subversion/trunk/subversion/bindings/javahl/native/SVNClient.h
    subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
    subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
    subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Notify.java
    subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java

Modified: subversion/trunk/subversion/bindings/javahl/native/SVNClient.cpp
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/SVNClient.cpp?rev=924328&r1=924327&r2=924328&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/SVNClient.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/SVNClient.cpp Wed Mar 17 15:14:56 2010
@@ -296,12 +296,6 @@ jlong SVNClient::checkout(const char *mo
     return rev;
 }
 
-void SVNClient::notification(Notify *notify)
-{
-    delete m_notify;
-    m_notify = notify;
-}
-
 void SVNClient::notification2(NotifyCallback *notify2)
 {
     delete m_notify2;

Modified: subversion/trunk/subversion/bindings/javahl/native/SVNClient.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/SVNClient.h?rev=924328&r1=924327&r2=924328&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/SVNClient.h (original)
+++ subversion/trunk/subversion/bindings/javahl/native/SVNClient.h Wed Mar 17 15:14:56 2010
@@ -144,7 +144,6 @@ class SVNClient :public SVNBase
   void revert(const char *path, svn_depth_t depth, StringArray &changelists);
   void remove(Targets &targets, const char *message, bool force,
               bool keep_local, RevpropTable &revprops);
-  void notification(Notify *notify);
   void notification2(NotifyCallback *notify2);
   void setConflictResolver(ConflictResolverCallback *conflictResolver);
   void setProgressListener(ProgressListener *progressListener);

Modified: subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp?rev=924328&r1=924327&r2=924328&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp (original)
+++ subversion/trunk/subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp Wed Mar 17 15:14:56 2010
@@ -347,24 +347,6 @@ Java_org_apache_subversion_javahl_SVNCli
 }
 
 JNIEXPORT void JNICALL
-Java_org_apache_subversion_javahl_SVNClient_notification
-(JNIEnv *env, jobject jthis, jobject jnotify)
-{
-  JNIEntry(SVNClient, notification);
-  SVNClient *cl = SVNClient::getCppObject(jthis);
-  if (cl == NULL)
-    {
-      JNIUtil::throwError(_("bad C++ this"));
-      return;
-    }
-  Notify *notify = Notify::makeCNotify(jnotify);
-  if (JNIUtil::isExceptionThrown())
-    return;
-
-  cl->notification(notify);
-}
-
-JNIEXPORT void JNICALL
 Java_org_apache_subversion_javahl_SVNClient_notification2
 (JNIEnv *env, jobject jthis, jobject jnotify2)
 {

Modified: subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java?rev=924328&r1=924327&r2=924328&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java (original)
+++ subversion/trunk/subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java Wed Mar 17 15:14:56 2010
@@ -172,12 +172,6 @@ public class SVNClient implements ISVNCl
             throws ClientException;
 
     /**
-     * @since 1.0
-     * @deprecated
-     */
-    public native void notification(Notify notify);
-
-    /**
      * @since 1.2
      */
     public native void notification2(NotifyCallback notify);

Modified: subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Notify.java
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Notify.java?rev=924328&r1=924327&r2=924328&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Notify.java (original)
+++ subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/Notify.java Wed Mar 17 15:14:56 2010
@@ -34,6 +34,54 @@ package org.tigris.subversion.javahl;
  * @deprecated Use Notify2 instead
  */
 public interface Notify
-    extends org.apache.subversion.javahl.Notify
 {
+    /**
+     * Handler for Subversion notifications.
+     *
+     * Override this function to allow Subversion to
+     * send notifications
+     * @param path on which action happen
+     * @param action subversion action, see svn_wc_notify_action_t
+     * @param kind node kind of path after action occurred
+     * @param mimeType mime type of path after action occurred
+     * @param contentState state of content after action occurred
+     * @param propState state of properties after action occurred
+     * @param revision revision number  after action occurred
+     */
+    public void onNotify(String path, int action, int kind, String mimeType,
+                         int contentState, int propState, long revision);
+
+    /**
+     * The type of action occuring.  The values are defined in the
+     * interface NotifyAction for building reasons.
+     */
+    public static final class Action implements NotifyAction
+    {
+        /**
+         * Returns the textual representation for the action kind
+         * @param action kind of action
+         * @return english text
+         */
+        public static final String getActionName(int action)
+        {
+            return NotifyAction.actionNames[action];
+        }
+
+    }
+    /**
+     * The type of notification that is occuring.  The values are
+     * defined in the interface NotifyStatus for building reasons.
+     */
+    public static final class Status implements NotifyStatus
+   {
+        /**
+         * Returns the textual representation for the notification type
+         * @param status    type of the notification
+         * @return  english text
+         */
+        public static final String getStatusName(int status)
+        {
+            return NotifyStatus.statusNames[status];
+        }
+    }
 }

Modified: subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java?rev=924328&r1=924327&r2=924328&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java (original)
+++ subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java Wed Mar 17 15:14:56 2010
@@ -583,9 +583,18 @@ public class SVNClient implements SVNCli
      * @deprecated Use {@link #notification2(Notify2)} instead.
      * @since 1.0
      */
-    public void notification(Notify notify)
+    public void notification(final Notify notify)
     {
-        aSVNClient.notification(notify);
+        notification2(
+          new Notify2 () {
+            public void onNotify(NotifyInformation info)
+            {
+                notify.onNotify(info.getPath(), info.getAction(),
+                                info.getKind(), info.getMimeType(),
+                                info.getContentState(), info.getPropState(),
+                                info.getRevision());
+            }
+          });
     }
 
     /**