def buildDriverFromRepositoryName(self, repositoryName: str) -> None: """Build the driver object in the worker from this repository name. The repository must be globally defined in the rascal.""" cls_repository = runtime.rascal.get(repositoryName, [Repository]) repository = loadRepository(cls_repository) self.driver = repository.fw_getDriver() self.repositoryName = repositoryName runtime.ui.info("driver %s ready!" % self.driver.getClassName())
def buildDriverFromRepositoryName(self, repositoryName: str) -> None: """Build the driver object in the worker from this repository name. The repository must be globally defined in the rascal.""" cls_repository = runtime.rascal.get(repositoryName, [Repository]) repository = loadRepository(cls_repository) self.driver = repository.fw_getDriver() self.repositoryName = repositoryName runtime.ui.info("driver %s ready!"% self.driver.getClassName())
def buildDriverFromRepositoryName(self, repositoryName: str, reuse: bool=False) -> None: """Build the driver object in the worker from this repository name. The repository must be globally defined in the rascal.""" if reuse is True and self.driver is not None: return None cls_repository = runtime.rascal.get(repositoryName, [Repository]) repository = loadRepository(cls_repository) self._buildDriver(repository)
def buildDriverFromRepositoryName(self, repositoryName: str, reuse: bool = False) -> None: """Build the driver object in the worker from this repository name. The repository must be globally defined in the rascal.""" if reuse is True and self.driver is not None: return None cls_repository = runtime.rascal.get(repositoryName, [Repository]) repository = loadRepository(cls_repository) self._buildDriver(repository)
def beforeSession(self) -> None: import inspect from imapfw.runners.driver import DriverRunner from imapfw.types.repository import loadRepository from imapfw.architects import DriverArchitect from imapfw.edmp import SyncEmitter self.repository = loadRepository(self.conf.get('repository')) repositoryName = self.repository.getClassName() self.driverArchitect = DriverArchitect("%s.Driver" % repositoryName) self.driverArchitect.init() self.driverArchitect.start() self.driverArch = self.driverArchitect self.driver = self.driverArchitect.getEmitter() self.d = SyncEmitter(self.driver) self.buildDriver() self.register('repository') self.register('driverArch') self.register('driver') self.register('d') # Setup banner. events = [] for name, method in inspect.getmembers(DriverRunner, inspect.isfunction): if name.startswith('_') or name == 'run': continue events.append("- d.%s%s\n%s\n" % (name, inspect.signature(method), method.__doc__)) self.dict_events = events self.events = self._events self.register('events') banner = """ Welcome to the shell! The driver is running in a worker. Take control of it with the pre-configured emitter. It is available from both the "driver" and "d" variables. "d" will send any event in sync mode. Ctrl+D: quit Available commands: - events(): print available events for the driver. Example: >>> d.help() The driver was already built in the default beforeSession() method of this shell. """ self.setBanner(banner)
def beforeSession(self) -> None: import inspect from imapfw.runners.driver import DriverRunner from imapfw.types.repository import loadRepository from imapfw.architects import DriverArchitect from imapfw.edmp import SyncEmitter self.repository = loadRepository(self.conf.get('repository')) repositoryName = self.repository.getClassName() self.driverArchitect = DriverArchitect("%s.Driver"% repositoryName) self.driverArchitect.init() self.driverArchitect.start() self.driverArch = self.driverArchitect self.driver = self.driverArchitect.getEmitter() self.d = SyncEmitter(self.driver) self.buildDriver() self.register('repository') self.register('driverArch') self.register('driver') self.register('d') # Setup banner. events = [] for name, method in inspect.getmembers(DriverRunner, inspect.isfunction): if name.startswith('_') or name == 'run': continue events.append("- d.%s%s\n%s\n"% (name, inspect.signature(method), method.__doc__)) self.dict_events = events self.events = self._events self.register('events') banner = """ Welcome to the shell! The driver is running in a worker. Take control of it with the pre-configured emitter. It is available from both the "driver" and "d" variables. "d" will send any event in sync mode. Ctrl+D: quit Available commands: - events(): print available events for the driver. Example: >>> d.help() The driver was already built in the default beforeSession() method of this shell. """ self.setBanner(banner)
def buildDriverFromRepositoryName(self, repositoryName: str, reuse: bool = False) -> None: """Build the driver object in the worker from this repository name. The repository must be globally defined in the rascal.""" if reuse is True and self.driver is not None: return None self._clear() self.repositoryName = repositoryName # Build the driver. cls_repository = runtime.rascal.get(repositoryName, [Repository]) repository = loadRepository(cls_repository) self.driver = repository.fw_getDriver() self._driverAccept() self._debugBuild() self._info("driver ready!")
def beforeSession(self) -> None: import inspect from imapfw.runners.driver import DriverRunner from imapfw.types.repository import loadRepository from imapfw.architects import DriverArchitect from imapfw.edmp import SyncEmitter self.repository = loadRepository(self.conf.get("repository")) repositoryName = self.repository.getClassName() self.driverArchitect = DriverArchitect("%s.Driver" % repositoryName) self.driverArchitect.init() self.driverArchitect.start() self.driver = self.driverArchitect.getEmitter() self.d = SyncEmitter(self.driver) self.register("driver") self.register("d") # Setup banner. events = [] for name, method in inspect.getmembers(DriverRunner, inspect.isfunction): if name.startswith("_") or name == "run": continue events.append("- d.%s%s\n%s\n" % (name, inspect.signature(method), method.__doc__)) self.dict_events = events self.events = self._events self.register("events") banner = """ Welcome to the shell. The driver is started in a worker. Take control of if with "driver" or "d". "d" will send any event in sync mode. Ctrl+D: quit Available commands: - events(): print available events for the driver. Notice the driver is already built with the default beforeSession() method.""" self.setBanner(banner)
def fw_getRight(self) -> Repository: return loadRepository(self.right)
def fw_getLeft(self) -> Repository: return loadRepository(self.left)
def buildDriverFromRepositoryName(self, repositoryName: str) -> None: cls_repository = runtime.rascal.get(repositoryName, [Repository]) repository = loadRepository(cls_repository) self._driver = repository.fw_getDriver() runtime.ui.info("driver %s ready!"% self._driver.getClassName())