denis@2007: #!/usr/bin/env python denis@2007: # -*- coding: utf-8 -*- denis@2007: denis@2007: # See COPYING file for copyrights details. denis@2007: Edouard@2329: from __future__ import absolute_import denis@2007: Edouard@2329: from itertools import repeat, islice, chain Edouard@2329: import wx andrej@2182: Edouard@2329: from connectors.SchemeEditor import SchemeEditor andrej@2182: Edouard@2329: Schemes = ["WAMP", "WAMPS"] denis@2007: Edouard@2329: model = [('host',_("Host:")), Edouard@2329: ('port',_("Port:")), Edouard@2334: ('realm',_("Realm:"))] denis@2007: Edouard@2329: class WAMP_dialog(SchemeEditor): Edouard@2329: def __init__(self, *args, **kwargs): Edouard@2329: self.model = model Edouard@2334: self.EnableIDSelector = True Edouard@2329: SchemeEditor.__init__(self, *args, **kwargs) denis@2007: Edouard@2329: def SetLoc(self, loc): Edouard@2329: hostport, realm, ID = list(islice(chain(loc.split("#"), repeat("")),3)) Edouard@2329: host, port = list(islice(chain(hostport.split(":"), repeat("")),2)) Edouard@2329: self.SetFields(locals()) denis@2007: Edouard@2329: def GetLoc(self): Edouard@2329: fields = self.GetFields() denis@2007: Edouard@2329: #TODO : input validation test denis@2007: Edouard@2329: template = "{host}" + \ Edouard@2329: (":{port}" if fields['port'] else '') +\ Edouard@2329: "#{realm}#{ID}" denis@2007: Edouard@2329: return template.format(**fields) denis@2007: