PsProcessProviderDummy.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using qdr.fnd.core.pqueue.Exceptions;
  2. using Quadarax.Foundation.Core.Data;
  3. using Quadarax.Foundation.Core.Logging;
  4. namespace qdr.fnd.core.pqueue.Process
  5. {
  6. public class PsProcessProviderDummy : PsProcessProviderBase
  7. {
  8. #region *** Constants ***
  9. /// <summary>
  10. /// (Input) Argument name for the result code. Type is <see cref="string"/>
  11. /// </summary>
  12. public const string CS_ARG_INPUT_TEXT = "input-text";
  13. #endregion
  14. #region *** Constructors ***
  15. public PsProcessProviderDummy(ProcessDoneCallback processDoneCallback, ProcessStdOutputCallback processStdOutputCallback, string itemId, TypedArgument[] arguments, ILogger logger) : base(processDoneCallback, processStdOutputCallback, itemId, arguments, logger)
  16. {
  17. }
  18. #endregion
  19. #region *** Overrides ***
  20. protected override void OnValidate()
  21. {
  22. base.OnValidate();
  23. if (!ContainsArgument(CS_ARG_INPUT_TEXT) || !Arguments[CS_ARG_INPUT_TEXT].IsOutput)
  24. throw new PsProcessProviderException(PsProcessProviderException.ErrorCodes.ProcessProviderNotDefinedArgument, GetType().Name, ItemId, CS_ARG_INPUT_TEXT);
  25. }
  26. protected override Task OnProcess()
  27. {
  28. Arguments[CS_ARG_RESULT_CODE].Value = "0";
  29. Arguments[CS_ARG_RESULT_TEXT].Value = GetArgumentValue<string>(CS_ARG_INPUT_TEXT);
  30. return base.OnProcess();
  31. }
  32. #endregion
  33. }
  34. }