using System; using System.Collections.Generic; using JetBrains.Annotations; using WireMock.Models; using WireMock.ResponseProviders; using WireMock.Types; namespace WireMock.Server { /// /// IRespondWithAProvider /// public interface IRespondWithAProvider { /// /// Gets the unique identifier for this mapping. /// Guid Guid { get; } /// /// Define a unique identifier for this mapping. /// /// The unique identifier. /// The . IRespondWithAProvider WithGuid(Guid guid); /// /// Define a unique title for this mapping. /// /// The unique title. /// The . IRespondWithAProvider WithTitle(string title); /// /// Define the full filepath for this mapping. /// /// The full filepath. /// The . IRespondWithAProvider WithPath(string path); /// /// Define a unique identifier for this mapping. /// /// The unique identifier. /// The . IRespondWithAProvider WithGuid(string guid); /// /// Define the priority for this mapping. /// /// The priority. /// The . IRespondWithAProvider AtPriority(int priority); /// /// The respond with. /// /// The provider. void RespondWith(IResponseProvider provider); /// /// Sets the the scenario. /// /// The scenario. /// The . IRespondWithAProvider InScenario(string scenario); /// /// Sets the the scenario with an integer value. /// /// The scenario. /// The . IRespondWithAProvider InScenario(int scenario); /// /// Execute this respond only in case the current state is equal to specified one. /// /// Any object which identifies the current state /// The . IRespondWithAProvider WhenStateIs(string state); /// /// Execute this respond only in case the current state is equal to specified one. /// /// Any object which identifies the current state /// The . IRespondWithAProvider WhenStateIs(int state); /// /// Once this mapping is executed the state will be changed to specified one. /// /// Any object which identifies the new state /// The number of times this match should be matched before the state will be changed to the specified one. Default value is 1. /// The . IRespondWithAProvider WillSetStateTo(string state, int? times = 1); /// /// Once this mapping is executed the state will be changed to specified one. /// /// Any object which identifies the new state /// The number of times this match should be matched before the state will be changed to the specified one. Default value is 1. /// The . IRespondWithAProvider WillSetStateTo(int state, int? times = 1); /// /// Add (multiple) Webhook(s) to call after the response has been generated. /// /// The Webhooks /// The . IRespondWithAProvider WithWebhook(params IWebhook[] webhooks); /// /// Add a Webhook to call after the response has been generated. /// /// The Webhook Url /// The method to use. [optional] /// The Headers to send. [optional] /// The body (as string) to send. [optional] /// Use Transformer. [optional] /// The transformer type. [optional] /// The . IRespondWithAProvider WithWebhook( [NotNull] string url, [CanBeNull] string method = "post", [CanBeNull] IDictionary> headers = null, [CanBeNull] string body = null, bool useTransformer = true, TransformerType transformerType = TransformerType.Handlebars ); /// /// Add a Webhook to call after the response has been generated. /// /// The Webhook Url /// The method to use. [optional] /// The Headers to send. [optional] /// The body (as json) to send. [optional] /// Use Transformer. [optional] /// The transformer type. [optional] /// The . IRespondWithAProvider WithWebhook( [NotNull] string url, [CanBeNull] string method = "post", [CanBeNull] IDictionary> headers = null, [CanBeNull] object body = null, bool useTransformer = true, TransformerType transformerType = TransformerType.Handlebars ); } }