PSQueueValidationException.cs 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Quadarax.Foundation.Core.Attributes;
  7. using Quadarax.Foundation.Core.Exceptions;
  8. namespace qdr.fnd.core.pqueue.Exceptions
  9. {
  10. public class PSQueueValidationException: CodeException<PSQueueValidationException.ErrorCodes>
  11. {
  12. #region *** Error Codes ***
  13. public enum ErrorCodes : int
  14. {
  15. [ErrorMessage("Queue item validation: Owner value is required.")]
  16. OwnerRequired = 7000,
  17. [ErrorMessage("Queue item validation: OwnerRef value is required.")]
  18. OwnerRefRequired = 7001,
  19. [ErrorMessage("Queue item validation: ProcessProvider value is required.")]
  20. ProcessProviderRequired = 7002,
  21. [ErrorMessage("Queue item validation: ProcessProvider '{0}' type cannot be resolved.")]
  22. ProcessProviderCannotResolve = 7003,
  23. [ErrorMessage("Queue item validation: InitialAttempt must be bigger than zero.")]
  24. InitialAttemptMustBePositive = 7004,
  25. [ErrorMessage("Queue item validation: Status must be specified when isTransient flag is set to False..")]
  26. InvalidStatusTransientCombination = 7005,
  27. [ErrorMessage("ForceStart: Cannot force start due forbidden status '{0}' for this operation.")]
  28. InvalidStatusForForceStart = 7006,
  29. [ErrorMessage("ForceStop: Cannot force stop due forbidden status '{0}' for this operation.")]
  30. InvalidStatusForForceStop = 7007,
  31. [ErrorMessage("ForceStop: Cannot pause due forbidden status '{0}' for this operation.")]
  32. InvalidStatusForPause = 7008,
  33. [ErrorMessage("StatusTransition: Invalid status transition from '{0}' to '{1}'. Allowed transition for status '{0}' are follows: {2}")]
  34. InvalidStatusTransition = 7010,
  35. }
  36. #endregion
  37. #region *** Constructors ***
  38. /// <inheritdoc />
  39. public PSQueueValidationException(ErrorCodes code, Exception innerException) : base(code, innerException)
  40. {
  41. }
  42. /// <inheritdoc />
  43. public PSQueueValidationException(ErrorCodes code) : base(code)
  44. {
  45. }
  46. /// <inheritdoc />
  47. public PSQueueValidationException(ErrorCodes code, params object[] messageArguments) : base(code, messageArguments)
  48. {
  49. }
  50. /// <inheritdoc />
  51. public PSQueueValidationException(ErrorCodes code, Exception innerException, params object[] messageArguments) : base(code, innerException, messageArguments)
  52. {
  53. }
  54. #endregion
  55. }
  56. }