Changeset 320 for trunk/sandbox/jhb/mobile/ocwallet.py
- Timestamp:
- 05/28/09 14:30:52 (3 years ago)
- Files:
-
- 1 modified
-
trunk/sandbox/jhb/mobile/ocwallet.py (modified) (14 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/sandbox/jhb/mobile/ocwallet.py
r319 r320 1 1 import appuifw,e32,os,sys 2 3 def error_catched(f): 4 def error_handled(*args,**kwargs): 5 try: 6 f(*args,**kwargs) 7 except: 8 appuifw.note(u'cought error','error') 9 return error_handled 10 2 11 3 12 class WalletClient: … … 131 140 url = appuifw.query(u'url','text',u'http://baach.de:9090') 132 141 self.todo['url'] = url 133 transport = self.getHTTPTransport(url) 142 transport = self.getHTTPTransport(url) 143 if not transport: 144 self.displayActionMenu() 145 return 134 146 self.wallet.addCurrency(transport) 135 147 self.displayWalletMenu() … … 160 172 161 173 transport = self.getHTTPTransport(url) 174 if not transport: 175 self.displayActionMenu() 176 return 177 162 178 self.wallet.mintCoins(transport,amount,target) 163 179 coinsound.play() … … 178 194 179 195 transport = self.getHTTPTransport(url) 196 if not transport: 197 self.displayActionMenu() 198 return 199 180 200 self.wallet.redeemCoins(transport,amount,target) 181 201 self.displayWalletMenu() … … 185 205 cdd,alreadythere = self.getCurrentCurrency() 186 206 transport = self.getHTTPTransport(cdd.issuerServiceLocation) 207 if not transport: 208 self.displayActionMenu() 209 return 210 187 211 self.wallet.freshenUp(transport,cdd) 188 coinsound.play()212 #coinsound.play() 189 213 self.displayWalletMenu() 190 214 … … 197 221 if method ==0: 198 222 transport = self.getHTTPTransport(cdd.issuerServiceLocation) 223 if not transport: 224 self.displayActionMenu() 225 return 226 199 227 self.receiveCoinsBT(transport) 228 200 229 else: 201 230 transport = self.getHTTPTransport(cdd.issuerServiceLocation) 231 if not transport: 232 self.displayActionMenu() 233 return 234 202 235 self.receiveCoinsHTTP(transport,walletport) 203 236 … … 208 241 209 242 def getHTTPTransport(self,url): 210 self.startInternet() 243 if not self.startInternet(): 244 return 211 245 transport = transports.HTTPTransport(url) 212 246 return transport … … 255 289 answer = self.wallet.listenSum(message) 256 290 if message.header == 'SpendRequest': 257 answer = self.wallet.listenSpend( message,transport)291 answer = self.wallet.listenSpend(transport,message) 258 292 self.send_response(200) 259 293 self.send_header("Content-type", "text/plain") … … 265 299 266 300 OCHandler.wallet = self.wallet 267 self.startInternet() 301 if not self.startInternet(): 302 return 268 303 269 304 self.httpd = StoppableHTTPServer(("",port),OCHandler) … … 380 415 url = 'http://%s:%s' % (url,walletport) 381 416 transport = self.getHTTPTransport(url) 417 if not transport: 418 self.displayActionMenu() 419 return 382 420 self.wallet.spendCoins(transport,cdd.currencyId,amount,target) 383 421 else: … … 413 451 aps.sort() 414 452 apid = appuifw.popup_menu(aps,u'select access point') 453 if apid == None: 454 return None 415 455 self.feedback(u'Preparing internet access:setting access point') 416 456 … … 426 466 s.connect(('www.google.com',80)) 427 467 self.ip = s.getsockname()[0] 428 468 return True 429 469 430 470 … … 515 555 #Try to use a password on the data file. Repeat till its sucessfully loaded 516 556 password = '' 517 while 1:557 while 0: #don't use the password protected storage, too slow atm. 518 558 password = appuifw.query(u'password','text') 519 559 … … 530 570 appuifw.note(u'wrong password','error') 531 571 pass 572 storage = oc2storage.Storage() 573 storage.setFilename(storagepath+'wallet.bin') 574 tmp = open(storagepath+'wallet.bin') 575 tmpcontent = tmp.read() 576 tmp.close() 577 if tmpcontent.startswith('salt'): 578 os.remove(storagepath+'wallet.bin') 579 storage.restore() 580 581 582 583 584 532 585 533 586 #Load the rest of the libs
