WorkspaceAddCommand.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using BO.AppServer.Metadata.Dto;
  2. using BO.Console.Commands.Base;
  3. using Quadarax.Foundation.Core.QConsole;
  4. using Quadarax.Foundation.Core.QConsole.Attributes;
  5. namespace BO.Console.Commands.Workspace
  6. {
  7. [CommandDefinition]
  8. internal class WorkspaceAddCommand : AbstractPostCommand<WorkspaceCDto, WorkspaceRDto>
  9. {
  10. #region *** Constants ***
  11. private const string CS_CMD_WKSPADD_NAME = "workspace_add";
  12. private const string CS_CMD_WKSPADD_DESCR = "Add new workspace/s assigned to user by import file.";
  13. #endregion
  14. #region *** Properties ***
  15. public override string Name => CS_CMD_WKSPADD_NAME;
  16. public override string Description => CS_CMD_WKSPADD_DESCR;
  17. #endregion
  18. #region *** Constructor ***
  19. public WorkspaceAddCommand(Engine engine) : base(engine)
  20. {
  21. }
  22. #endregion
  23. #region *** EXECUTE ***
  24. protected override WorkspaceRDto IterationExecute(WorkspaceCDto data)
  25. {
  26. WriteDebugInfo($"Workspace '{data.Name}' for user '{data.AssignedUserName}' starts creating...");
  27. var result = Client.CreateWorkspaceAsync(data).Result;
  28. WriteCaption($"Workspace '{data.Name}' for user '{data.AssignedUserName}' created.");
  29. return result;
  30. }
  31. #endregion
  32. #region *** Private operations ***
  33. #endregion
  34. }
  35. }