author | usveticic |
Thu, 01 Oct 2020 14:23:27 +0200 | |
branch | svghmi |
changeset 3062 | 9ec338a99a18 |
parent 2610 | 7e31997b2799 |
child 3750 | f62625418bff |
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 |
2182
eeca1aff0691
Fix linter errors
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
2180
diff
changeset
|
9 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
10 |
from connectors.SchemeEditor import SchemeEditor |
2182
eeca1aff0691
Fix linter errors
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
2180
diff
changeset
|
11 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
12 |
Schemes = ["WAMP", "WAMPS"] |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
13 |
|
2492
7dd551ac2fa0
check_sources.sh makes me become even less productive
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2334
diff
changeset
|
14 |
model = [('host', _("Host:")), |
2610
7e31997b2799
Added missing 'path' field to WAMP addresses in URI editor.
Edouard Tisserant
parents:
2521
diff
changeset
|
15 |
('path', _("Path:")), |
2492
7dd551ac2fa0
check_sources.sh makes me become even less productive
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2334
diff
changeset
|
16 |
('port', _("Port:")), |
7dd551ac2fa0
check_sources.sh makes me become even less productive
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2334
diff
changeset
|
17 |
('realm', _("Realm:"))] |
7dd551ac2fa0
check_sources.sh makes me become even less productive
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2334
diff
changeset
|
18 |
|
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 |
2334
d1470c052662
Added early implementation of IDManager.py. For now only used to select ID in URIEditor
Edouard Tisserant
parents:
2329
diff
changeset
|
23 |
self.EnableIDSelector = True |
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
24 |
SchemeEditor.__init__(self, *args, **kwargs) |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
25 |
|
2492
7dd551ac2fa0
check_sources.sh makes me become even less productive
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2334
diff
changeset
|
26 |
# pylint: disable=unused-variable |
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
27 |
def SetLoc(self, loc): |
2610
7e31997b2799
Added missing 'path' field to WAMP addresses in URI editor.
Edouard Tisserant
parents:
2521
diff
changeset
|
28 |
hostportpath, realm, ID = list(islice(chain(loc.split("#"), repeat("")), 3)) |
7e31997b2799
Added missing 'path' field to WAMP addresses in URI editor.
Edouard Tisserant
parents:
2521
diff
changeset
|
29 |
hostport, path = list(islice(chain(hostportpath.split("/"), repeat("")), 2)) |
2492
7dd551ac2fa0
check_sources.sh makes me become even less productive
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2334
diff
changeset
|
30 |
host, port = list(islice(chain(hostport.split(":"), repeat("")), 2)) |
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
31 |
self.SetFields(locals()) |
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 |
def GetLoc(self): |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
34 |
fields = self.GetFields() |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
35 |
|
2492
7dd551ac2fa0
check_sources.sh makes me become even less productive
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
2334
diff
changeset
|
36 |
# TODO : input validation test |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
37 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
38 |
template = "{host}" + \ |
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
39 |
(":{port}" if fields['port'] else '') +\ |
2610
7e31997b2799
Added missing 'path' field to WAMP addresses in URI editor.
Edouard Tisserant
parents:
2521
diff
changeset
|
40 |
("/{path}" if fields['path'] else '') +\ |
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
41 |
"#{realm}#{ID}" |
2007
ef2d479f564f
#2476 Connectors dialog module added.
dporopat <denis.poropat@smarteh.si>
parents:
diff
changeset
|
42 |
|
2329
e5703dc8848e
URI editor : Rewrote most of it, cleaner.
Edouard Tisserant
parents:
2182
diff
changeset
|
43 |
return template.format(**fields) |