provideCommandExecutor static method
CommandExecutor 인스턴스를 생성합니다.
Implementation
static CommandExecutor provideCommandExecutor() {
// DataSources
final fileSystemDataSource = FileSystemDataSourceImpl();
final projectDataSource = ProjectDataSourceImpl();
final templateDataSource = TemplateDataSourceImpl();
final commandDataSource = CommandDataSourceImpl();
// Repositories
final FileSystemRepository fileSystemRepository = FileSystemRepositoryImpl(fileSystemDataSource);
final ProjectRepository projectRepository = ProjectRepositoryImpl(projectDataSource);
final TemplateRepository templateRepository = TemplateRepositoryImpl(templateDataSource);
final FilePathRepository filePathRepository = FilePathRepositoryImpl();
final CommandRepository commandRepository = CommandRepositoryImpl(
commandDataSource,
CommandOptions.getDefaultOptions(),
);
// FileGeneratorRepository
final FileGeneratorRepository fileGeneratorRepository = FileGeneratorRepositoryImpl(
projectRepository: projectRepository,
filePathRepository: filePathRepository,
fileSystemRepository: fileSystemRepository,
templateRepository: templateRepository,
);
// CommandExecutor
return CommandExecutor(
commandRepository: commandRepository,
fileGeneratorRepository: fileGeneratorRepository,
);
}