Session creation exception handling.
authorstephendenham <stephendenham@2dec19e3-eb1d-4749-8193-008c8bba0994>
Fri, 7 Jan 2011 11:58:11 +0000 (11:58 +0000)
committerstephendenham <stephendenham@2dec19e3-eb1d-4749-8193-008c8bba0994>
Fri, 7 Jan 2011 11:58:11 +0000 (11:58 +0000)
git-svn-id: svn://svn.code.sf.net/p/xbmc-groove/code@24 2dec19e3-eb1d-4749-8193-008c8bba0994

default.py
resources/lib/GrooveAPI.py

index 884d412..5c98792 100644 (file)
@@ -43,7 +43,13 @@ listBackground = os.path.join(imgDir, 'listbackground.png')
 
 sys.path.append (libDir)
 from GrooveAPI import GrooveAPI
-groovesharkApi = GrooveAPI()
+try:
+    groovesharkApi = GrooveAPI()
+except:
+    dialog = xbmcgui.Dialog()
+    dialog.ok('Grooveshark XBMC', 'Unable to connect with Grooveshark.', 'Please try again later')
+    sys.exit(-1)
+  
 
 class _Info:
     def __init__( self, *args, **kwargs ):
index dc3a63b..9d1cf23 100644 (file)
@@ -145,10 +145,14 @@ class GrooveAPI:
                        return []
 
        def startSession(self):
-               response = urllib2.urlopen("http://www.moovida.com/services/grooveshark/session_start")
-               result = response.read()
-               result = self.simplejson.loads(result)
-               response.close()
+               try:
+                       response = urllib2.urlopen("http://www.moovida.com/services/grooveshark/session_start")
+                       result = response.read()
+                       result = self.simplejson.loads(result)
+                       response.close()
+               except:
+                       return ''
+               
                if 'fault' in result:
                        return ''
                else: