2021.4.6 #25
@ -32,16 +32,16 @@ class CLI(ApplicationABC):
|
||||
def configure(self):
|
||||
self._command_handler: CommandHandler = self._services.get_service(CommandHandler)
|
||||
|
||||
self._command_handler.add_command(CommandModel('build', ['h', 'B'], BuildService, True))
|
||||
self._command_handler.add_command(CommandModel('generate', ['g', 'G'], GenerateService, True))
|
||||
self._command_handler.add_command(CommandModel('help', ['h', 'H'], HelpService, False))
|
||||
self._command_handler.add_command(CommandModel('install', ['i', 'I'], InstallService, True))
|
||||
self._command_handler.add_command(CommandModel('new', ['n', 'N'], NewService, False))
|
||||
self._command_handler.add_command(CommandModel('publish', ['p', 'P'], PublishService, True))
|
||||
self._command_handler.add_command(CommandModel('start', ['s', 'S'], StartService, True))
|
||||
self._command_handler.add_command(CommandModel('uninstall', ['ui', 'UI'], UninstallService, True))
|
||||
self._command_handler.add_command(CommandModel('update', ['u', 'U'], UpdateService, True))
|
||||
self._command_handler.add_command(CommandModel('version', ['v', 'V'], VersionService, False))
|
||||
self._command_handler.add_command(CommandModel('build', ['h', 'B'], BuildService, True, True))
|
||||
self._command_handler.add_command(CommandModel('generate', ['g', 'G'], GenerateService, True, False))
|
||||
self._command_handler.add_command(CommandModel('help', ['h', 'H'], HelpService, False, False))
|
||||
self._command_handler.add_command(CommandModel('install', ['i', 'I'], InstallService, True, True))
|
||||
self._command_handler.add_command(CommandModel('new', ['n', 'N'], NewService, False, True))
|
||||
self._command_handler.add_command(CommandModel('publish', ['p', 'P'], PublishService, True, True))
|
||||
self._command_handler.add_command(CommandModel('start', ['s', 'S'], StartService, True, True))
|
||||
self._command_handler.add_command(CommandModel('uninstall', ['ui', 'UI'], UninstallService, True, True))
|
||||
self._command_handler.add_command(CommandModel('update', ['u', 'U'], UpdateService, True, True))
|
||||
self._command_handler.add_command(CommandModel('version', ['v', 'V'], VersionService, False, False))
|
||||
|
||||
def main(self):
|
||||
"""
|
||||
|
@ -102,7 +102,9 @@ class GenerateService(CommandABC):
|
||||
rel_path = '/'.join(parts[:-1])
|
||||
class_name = parts[len(parts) - 1]
|
||||
|
||||
if 'src' not in name:
|
||||
Console.write_line(rel_path)
|
||||
|
||||
if 'src' not in rel_path:
|
||||
rel_path = f'src/{rel_path}'
|
||||
|
||||
template = template(class_name, schematic, self._schematics[schematic]["Upper"], rel_path)
|
||||
|
@ -94,9 +94,10 @@ class CommandHandler(ABC):
|
||||
|
||||
project_json = os.path.join(self._env.working_directory, project_json)
|
||||
|
||||
self._env.set_working_directory(
|
||||
os.path.join(self._env.working_directory, os.path.dirname(project_json))
|
||||
)
|
||||
if command.change_cwd:
|
||||
self._env.set_working_directory(
|
||||
os.path.join(self._env.working_directory, os.path.dirname(project_json))
|
||||
)
|
||||
|
||||
self._config.add_json_file(project_json, optional=True, output=False)
|
||||
|
||||
|
@ -5,11 +5,13 @@ from cpl_cli.command_abc import CommandABC
|
||||
|
||||
class CommandModel:
|
||||
|
||||
def __init__(self, name: str, aliases: list[str], command: Callable[CommandABC], is_project_needed: bool):
|
||||
def __init__(self, name: str, aliases: list[str], command: Callable[CommandABC], is_project_needed: bool,
|
||||
change_cwd: bool):
|
||||
self._name = name
|
||||
self._aliases = aliases
|
||||
self._command = command
|
||||
self._is_project_needed = is_project_needed
|
||||
self._change_cwd = change_cwd
|
||||
|
||||
@property
|
||||
def name(self) -> str:
|
||||
@ -18,11 +20,15 @@ class CommandModel:
|
||||
@property
|
||||
def aliases(self) -> list[str]:
|
||||
return self._aliases
|
||||
|
||||
|
||||
@property
|
||||
def command(self) -> Callable[CommandABC]:
|
||||
return self._command
|
||||
|
||||
|
||||
@property
|
||||
def is_project_needed(self) -> bool:
|
||||
return self._is_project_needed
|
||||
|
||||
@property
|
||||
def change_cwd(self) -> bool:
|
||||
return self._change_cwd
|
||||
|
Loading…
Reference in New Issue
Block a user