ScopeAspect.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using Quadarax.Foundation.Core.QConsole.Argument;
  2. namespace qdr.app.tools.qfu.Commands.Aspects
  3. {
  4. internal class ScopeAspect
  5. {
  6. #region *** Constants ***
  7. public const string ARG_SCOPE_NAME = "scope";
  8. private const string ARG_SCOPE_HINT = "scope";
  9. private const string ARG_SCOPE_DESCR = "Define scope to clean. Possible values '"+ SCOPE_FILES +"' or '"+ SCOPE_DIRECTORIES +"'.";
  10. private const int ARG_SCOPE_ORD = 0;
  11. public const string SCOPE_FILES = "files";
  12. public const string SCOPE_DIRECTORIES = "directories";
  13. #endregion
  14. #region *** Public Operations ***
  15. public static IEnumerable<AbstractArgument> SetupArguments()
  16. {
  17. return
  18. [
  19. new OrdinalArgument(ARG_SCOPE_ORD, false, ARG_SCOPE_NAME, ARG_SCOPE_DESCR, ARG_SCOPE_HINT, Quadarax.Foundation.Core.QConsole.Value.TypeValuesEnum.String, string.Empty, true)
  20. ];
  21. }
  22. public static bool IsValidScope(string scope)
  23. {
  24. return string.Equals(scope, SCOPE_FILES, StringComparison.OrdinalIgnoreCase) ||
  25. string.Equals(scope, SCOPE_DIRECTORIES, StringComparison.OrdinalIgnoreCase);
  26. }
  27. public static bool IsScopeFiles(string scope)
  28. {
  29. return string.Equals(scope, SCOPE_FILES, StringComparison.OrdinalIgnoreCase);
  30. }
  31. public static bool IsScopeDirectories(string scope)
  32. {
  33. return string.Equals(scope, SCOPE_DIRECTORIES, StringComparison.OrdinalIgnoreCase);
  34. }
  35. #endregion
  36. }
  37. }