示例#1
0
        /// <inheritdoc/>
        public async Task Execute(CreatePageInput input)
        {
            try
            {
                ISpace space = await _spaceRepository.Get(input.SpaceName);

                IPage page = await _pageService.CreatePage(space, input.PageName, input.Content);

                _outputPort.Standard(new CreatePageOutput(page));
            }
            catch (SpaceNotFoundException e)
            {
                _outputPort.SpaceNotFound(e.Message);
            }
            catch (PageAlreadyExistsException e)
            {
                _outputPort.PageAlreadyExists(e.Message);
            }
            catch (UnableToCreatePageException e)
            {
                _outputPort.UnableToCreatePage(e.Message);
            }
        }