start SEA server if not running
before connecting to SEA Change-Id: I75c02f25e023e0e1769810a180430efd48b9c550
This commit is contained in:
parent
a35231f5bd
commit
e6fdd79df4
@ -110,10 +110,13 @@ class SeaClient(ProxyClient, Module):
|
|||||||
visibility = 'expert'
|
visibility = 'expert'
|
||||||
default_json_file = {}
|
default_json_file = {}
|
||||||
_connect_thread = None
|
_connect_thread = None
|
||||||
|
_service_manager = None
|
||||||
|
_instance = None
|
||||||
|
|
||||||
def __init__(self, name, log, opts, srv):
|
def __init__(self, name, log, opts, srv):
|
||||||
instance = srv.node_cfg['name'].rsplit('_', 1)[0]
|
instance = srv.node_cfg['name'].rsplit('_', 1)[0]
|
||||||
if 'uri' not in opts:
|
if 'uri' not in opts:
|
||||||
|
self._instance = instance
|
||||||
port = get_sea_port(instance)
|
port = get_sea_port(instance)
|
||||||
if port is None:
|
if port is None:
|
||||||
raise ConfigError('missing sea port for %s' % instance)
|
raise ConfigError('missing sea port for %s' % instance)
|
||||||
@ -140,6 +143,11 @@ class SeaClient(ProxyClient, Module):
|
|||||||
self._connect_thread = mkthread(self._connect, start_events.get_trigger())
|
self._connect_thread = mkthread(self._connect, start_events.get_trigger())
|
||||||
|
|
||||||
def _connect(self, started_callback):
|
def _connect(self, started_callback):
|
||||||
|
if self._instance:
|
||||||
|
if not self._service_manager:
|
||||||
|
from servicemanager import SeaManager
|
||||||
|
self._service_manager = SeaManager()
|
||||||
|
self._service_manager.do_start(self._instance)
|
||||||
if '//' not in self.uri:
|
if '//' not in self.uri:
|
||||||
self.uri = 'tcp://' + self.uri
|
self.uri = 'tcp://' + self.uri
|
||||||
self.asynio = AsynConn(self.uri)
|
self.asynio = AsynConn(self.uri)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user