[X2Go-Commits] [pyhoca-gui] 01/02: Handle "Connection refused" errors during broker login attempts.

git-admin at x2go.org git-admin at x2go.org
Fri Mar 28 23:58:21 CET 2014


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch master
in repository pyhoca-gui.

commit 83bbf025313fcadaf9400885b9c3811c4f38b481
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Mon Mar 24 13:48:55 2014 +0100

    Handle "Connection refused" errors during broker login attempts.
---
 debian/changelog            |    1 +
 debian/pyhoca-gui.links     |    3 +++
 pyhoca/wxgui/brokerlogon.py |   21 ++++++++++++++-------
 3 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index d37f807..ba15158 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -33,6 +33,7 @@ pyhoca-gui (0.5.0.0-0x2go1) UNRELEASED; urgency=low
     - Provide cmdline option --broker-cacertfile. Enable https:// connections
       with SSL certificates that have been self-signed against a non-public
       root-CA certificate file.
+    - Handle "Connection refused" errors during broker login attempts.
     - Update English / German translation.
 
  -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Wed, 08 Jan 2014 21:28:37 +0100
diff --git a/debian/pyhoca-gui.links b/debian/pyhoca-gui.links
index 2e576ba..26818c6 100644
--- a/debian/pyhoca-gui.links
+++ b/debian/pyhoca-gui.links
@@ -18,6 +18,7 @@
 /usr/share/icons/PyHoca/32x32/document-save.png /usr/share/icons/PyHoca/32x32/profile_save.png
 /usr/share/icons/PyHoca/32x32/dialog-warning.png /usr/share/icons/PyHoca/32x32/auth_failed.png
 /usr/share/icons/PyHoca/32x32/dialog-error.png /usr/share/icons/PyHoca/32x32/auth_error.png
+/usr/share/icons/PyHoca/32x32/dialog-error.png /usr/share/icons/PyHoca/32x32/connect_error.png
 /usr/share/icons/gnome-colors-common/32x32/status/dialog-warning.png /usr/share/icons/PyHoca/32x32/dialog-warning.png
 /usr/share/icons/gnome-colors-common/32x32/actions/media-eject.png /usr/share/icons/PyHoca/32x32/media-eject.png
 /usr/share/icons/gnome-colors-common/32x32/actions/media-skip-backward.png /usr/share/icons/PyHoca/32x32/media-skip-backward.png
@@ -45,6 +46,7 @@
 /usr/share/icons/PyHoca/64x64/dialog-warning.png /usr/share/icons/PyHoca/64x64/session_warning.png
 /usr/share/icons/PyHoca/64x64/dialog-warning.png /usr/share/icons/PyHoca/64x64/auth_failed.png
 /usr/share/icons/PyHoca/64x64/dialog-error.png /usr/share/icons/PyHoca/64x64/auth_error.png
+/usr/share/icons/PyHoca/64x64/dialog-error.png /usr/share/icons/PyHoca/64x64/connect_error.png
 /usr/share/icons/PyHoca/64x64/dialog-warning.png /usr/share/icons/PyHoca/64x64/profile_warning.png
 /usr/share/icons/PyHoca/64x64/dialog-apply.png /usr/share/icons/PyHoca/64x64/auth_success.png
 /usr/share/icons/PyHoca/64x64/dialog-apply.png /usr/share/icons/PyHoca/64x64/success.png
@@ -73,6 +75,7 @@
 /usr/share/icons/PyHoca/scalable/media-playback-pause.svg /usr/share/icons/PyHoca/scalable/session_pause.svg
 /usr/share/icons/gnome-colors-common/scalable/actions/media-skip-backward.svg /usr/share/icons/PyHoca/scalable/media-skip-backward.svg
 /usr/share/icons/PyHoca/scalable/dialog-error.svg /usr/share/icons/PyHoca/scalable/auth_error.svg
+/usr/share/icons/PyHoca/scalable/dialog-error.svg /usr/share/icons/PyHoca/scalable/connect_error.svg
 /usr/share/icons/PyHoca/scalable/x2go-logo-rotated.svg /usr/share/icons/PyHoca/scalable/session_resume.svg
 /usr/share/icons/PyHoca/scalable/list-add.svg /usr/share/icons/PyHoca/scalable/profile_add.svg
 /usr/share/icons/PyHoca/scalable/broom-cleanup.svg /usr/share/icons/PyHoca/scalable/session_cleanall.svg
diff --git a/pyhoca/wxgui/brokerlogon.py b/pyhoca/wxgui/brokerlogon.py
index 4996064..5fb58ad 100644
--- a/pyhoca/wxgui/brokerlogon.py
+++ b/pyhoca/wxgui/brokerlogon.py
@@ -41,6 +41,8 @@ gevent.monkey.patch_all()
 import wx
 import os
 
+import messages
+
 if os.environ.has_key('DESKTOP_SESSION'):
     WINDOW_MANAGER = os.environ['DESKTOP_SESSION']
 else:
@@ -173,15 +175,20 @@ class PyHocaGUI_BrokerDialogBoxPassword(wx.Dialog):
         password = self.passwordTxt.GetValue()
 
         self._PyHocaGUI.session_profiles.set_broker_url(broker_url)
-        if self._PyHocaGUI.session_profiles.broker_simpleauth(username, password):
-            self._PyHocaGUI.notifier.send(_(u"%s - success") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker has been\nsuccessful."), icon='auth_success', timeout=10000)
-            self._PyHocaGUI.session_profiles.populate_session_profiles()
-            self.Close()
-            self.Destroy()
-        else:
-            self._PyHocaGUI.notifier.send(_(u"%s - failure") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker failed."), icon='auth_failed', timeout=10000)
+        try:
+            if self._PyHocaGUI.session_profiles.broker_simpleauth(username, password):
+                self._PyHocaGUI.notifier.send(_(u"%s - success") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker has been\nsuccessful."), icon='auth_success', timeout=10000)
+                self._PyHocaGUI.session_profiles.populate_session_profiles()
+            else:
+                self._PyHocaGUI.notifier.send(_(u"%s - failure") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker failed."), icon='auth_failed', timeout=10000)
             self.Close()
             self.Destroy()
+        except x2go.x2go_exceptions.X2GoBrokerConnectionException:
+            m = messages.PyHoca_MessageWindow_YesNo(self, title=_(u'%s: Connection refused error') % self._PyHocaGUI.appname, msg=_(u'Connection to %s failed. Retry?') % self._PyHocaGUI.broker_name, icon='connect_error')
+            m.ShowModal()
+            if m.No():
+                self.Close()
+                self.Destroy()
 
     def OnCancel(self, evt):
         """

--
Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git



More information about the x2go-commits mailing list