connectors/PYRO_dialog.py
author Andrey Skvortsov <andrej.skvortzov@gmail.com>
Wed, 13 Mar 2019 10:19:30 +0300
changeset 2536 2747d6e72eb8
parent 2521 48ebcbe7f19b
child 2537 eb4a4cc41914
permissions -rw-r--r--
Fix invalid python3 syntax

Syntax checking using python3 ...
Python 3.7.2+
File "./connectors/PYRO/__init__.py", line 76
except Exception, e:
^
SyntaxError: invalid syntax

Syntax error in ./connectors/PYRO/__init__.py
File "./connectors/PYRO/PSK_Adapter.py", line 40
except ProtocolError, x:
^
SyntaxError: invalid syntax

Syntax error in ./s.py
File "./runtime/Worker.py", line 67
raise _job.exc_info[0], _job.exc_info[1], _job.exc_info[2]
^
SyntaxError: invalid syntax
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# See COPYING file for copyrights details.

from __future__ import absolute_import

from itertools import repeat, islice, chain
import wx

from connectors.SchemeEditor import SchemeEditor


model = [('host', _("Host:")),
         ('port', _("Port:"))]

# (scheme, model, secure)
models = [("LOCAL", [], False), ("PYRO", model, False), ("PYROS", model, True)]

Schemes = list(zip(*models)[0])

_PerSchemeConf = {sch: (mod, sec) for sch, mod, sec in models}


class PYRO_dialog(SchemeEditor):
    def __init__(self, scheme, *args, **kwargs):
        # ID selector is enabled only on PYROS (secure)
        self.model, self.EnableIDSelector = _PerSchemeConf[scheme]

        SchemeEditor.__init__(self, scheme, *args, **kwargs)

    # pylint: disable=unused-variable
    def SetLoc(self, loc):
        hostport, ID = list(islice(chain(loc.split("#"), repeat("")), 2))
        host, port = list(islice(chain(hostport.split(":"), repeat("")), 2))
        self.SetFields(locals())

    def GetLoc(self):
        if self.model:
            fields = self.GetFields()
            template = "{host}"
            if fields['port']:
                template += ":{port}"
            if fields['ID']:
                template += "#{ID}"

            return template.format(**fields)
        return ''