using qdr.fnd.core.pqueue.Exceptions; using Quadarax.Foundation.Core.Data; using Quadarax.Foundation.Core.Logging; namespace qdr.fnd.core.pqueue.Process { public class PsProcessProviderDummy : PsProcessProviderBase { #region *** Constants *** /// /// (Input) Argument name for the result code. Type is /// public const string CS_ARG_INPUT_TEXT = "input-text"; #endregion #region *** Constructors *** public PsProcessProviderDummy(Callbacks callbacks, string itemId, TypedArgument[] arguments, ILogger logger) : base(callbacks, itemId, arguments, logger) { } #endregion #region *** Overrides *** public new static IEnumerable CreateArguments() { var list = new List(PsProcessProviderBase.CreateArguments()); list.Add(new TypedArgument(CS_ARG_INPUT_TEXT, typeof(string), true)); return list; } protected override void OnValidate() { base.OnValidate(); if (!ContainsArgument(CS_ARG_INPUT_TEXT) || !Arguments[CS_ARG_INPUT_TEXT].IsOutput) throw new PsProcessProviderException(PsProcessProviderException.ErrorCodes.ProcessProviderNotDefinedArgument, GetType().Name, ItemId, CS_ARG_INPUT_TEXT); } protected override Task OnProcess() { Arguments[CS_ARG_RESULT_CODE].Value = "0"; Arguments[CS_ARG_RESULT_TEXT].Value = GetArgumentValue(CS_ARG_INPUT_TEXT); return base.OnProcess(); } #endregion } }