author | Edouard Tisserant |
Thu, 08 Nov 2018 14:33:35 +0100 | |
changeset 2332 | 03a94f862465 |
parent 2329 | e5703dc8848e |
child 2334 | d1470c052662 |
permissions | -rw-r--r-- |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
1 |
#!/usr/bin/env python |
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
2 |
# -*- coding: utf-8 -*- |
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
3 |
|
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
4 |
# See COPYING file for copyrights details. |
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
5 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
6 |
from __future__ import absolute_import |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
7 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
8 |
from itertools import repeat, islice, chain |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
9 |
import wx |
2182
eeca1aff0691
Fix linter errors
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
2180
diff
changeset
|
10 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
11 |
from connectors.SchemeEditor import SchemeEditor |
2182
eeca1aff0691
Fix linter errors
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
2180
diff
changeset
|
12 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
13 |
Schemes = ["WAMP", "WAMPS"] |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
14 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
15 |
model = [('host',_("Host:")), |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
16 |
('port',_("Port:")), |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
17 |
('realm',_("Realm:")), |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
18 |
('ID',_("ID:"))] |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
19 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
20 |
class WAMP_dialog(SchemeEditor): |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
21 |
def __init__(self, *args, **kwargs): |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
22 |
self.model = model |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
23 |
SchemeEditor.__init__(self, *args, **kwargs) |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
24 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
25 |
def SetLoc(self, loc): |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
26 |
hostport, realm, ID = list(islice(chain(loc.split("#"), repeat("")),3)) |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
27 |
host, port = list(islice(chain(hostport.split(":"), repeat("")),2)) |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
28 |
self.SetFields(locals()) |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
29 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
30 |
def GetLoc(self): |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
31 |
fields = self.GetFields() |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
32 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
33 |
#TODO : input validation test |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
34 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
35 |
template = "{host}" + \ |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
36 |
(":{port}" if fields['port'] else '') +\ |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
37 |
"#{realm}#{ID}" |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
38 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
39 |
return template.format(**fields) |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
40 |