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/08/11 21:45:16 UTC

svn commit: r984556 - in /subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl: PromptUserPassword.java SVNClient.java

Author: hwright
Date: Wed Aug 11 19:45:16 2010
New Revision: 984556

URL: http://svn.apache.org/viewvc?rev=984556&view=rev
Log:
JavaHL: Fix the tigris PromptUserPassword backward compat in the wake of the
move to the apache package namespace.  This isn't yet complete, but does
help a bit.

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java
  (PromptUser1Wrapper): New wrapper class.
  (setPrompt): Use the new wrapper class for a PromptUserPassword object.

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java:
  Revert back to pre-r907931 state, for backward compat.

Modified:
    subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java
    subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java

Modified: subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java?rev=984556&r1=984555&r2=984556&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java (original)
+++ subversion/trunk/subversion/bindings/javahl/src/org/tigris/subversion/javahl/PromptUserPassword.java Wed Aug 11 19:45:16 2010
@@ -29,6 +29,51 @@ package org.tigris.subversion.javahl;
  * PromptUserPassword3 instead.
  */
 public interface PromptUserPassword
-    extends org.apache.subversion.javahl.callback.UserPasswordCallback
 {
+    /**
+     * Ask the user for username and password
+     * The entered username/password is retrieved by the getUsername
+     * getPasswort methods.
+     *
+     * @param realm     for which server realm this information is requested.
+     * @param username  the default username
+     * @return Whether the prompt for authentication credentials was
+     * successful (e.g. in a GUI application whether the dialog box
+     * was canceled).
+     */
+    public boolean prompt(String realm, String username);
+
+    /**
+     * ask the user a yes/no question
+     * @param realm         for which server realm this information is
+     *                      requested.
+     * @param question      question to be asked
+     * @param yesIsDefault  if yes should be the default
+     * @return              the answer
+     */
+    public boolean askYesNo(String realm, String question,
+                            boolean yesIsDefault);
+
+    /**
+     * ask the user a question where she answers with a text.
+     * @param realm         for which server realm this information is
+     *                      requested.
+     * @param question      question to be asked
+     * @param showAnswer    if the answer is shown or hidden
+     * @return              the entered text or null if canceled
+     */
+    public String askQuestion(String realm, String question,
+                              boolean showAnswer);
+
+    /**
+     * retrieve the username entered during the prompt call
+     * @return the username
+     */
+    public String getUsername();
+
+    /**
+     * retrieve the password entered during the prompt call
+     * @return the password
+     */
+    public String getPassword();
 }

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=984556&r1=984555&r2=984556&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 Aug 11 19:45:16 2010
@@ -313,12 +313,55 @@ public class SVNClient implements SVNCli
         aSVNClient.password(password);
     }
 
+    private class PromptUser1Wrapper
+        implements org.apache.subversion.javahl.callback.UserPasswordCallback
+    {
+        PromptUserPassword oldPrompt;
+
+        PromptUser1Wrapper(PromptUserPassword prompt)
+        {
+            oldPrompt = prompt;
+        }
+
+        public String getPassword()
+        {
+            return oldPrompt.getPassword();
+        }
+
+        public String getUsername()
+        {
+            return oldPrompt.getUsername();
+        }
+
+        public String askQuestion(String realm, String question,
+                                  boolean showAnswer)
+        {
+            return oldPrompt.askQuestion(realm, question, showAnswer);
+        }
+
+        public boolean askYesNo(String realm, String question,
+                                boolean yesIsDefault)
+        {
+            return oldPrompt.askYesNo(realm, question, yesIsDefault);
+        }
+
+        public boolean prompt(String realm, String username)
+        {
+            return oldPrompt.prompt(realm, username);
+        }
+
+        public int askTrustSSLServer(String info, boolean allowPermanently)
+        {
+            return askTrustSSLServer(info, allowPermanently);
+        }
+    }
+
     /**
      * @since 1.0
      */
     public void setPrompt(PromptUserPassword prompt)
     {
-        aSVNClient.setPrompt(prompt);
+        aSVNClient.setPrompt(new PromptUser1Wrapper(prompt));
     }
 
     /**