using System; using System.Text; using JetBrains.Annotations; namespace WireMock.ResponseBuilders { /// /// The BodyResponseBuilder interface. /// public interface IBodyResponseBuilder : ITransformResponseBuilder { /// /// WithBody : Create a ... response based on a string. /// /// The body. /// The Body Destination format (SameAsSource, String or Bytes). /// The body encoding. /// A . IResponseBuilder WithBody([NotNull] string body, [CanBeNull] string destination = BodyDestinationFormat.SameAsSource, [CanBeNull] Encoding encoding = null); /// /// WithBody : Create a ... response based on a callback function. /// /// The delegate to build the body. /// The Body Destination format (SameAsSource, String or Bytes). /// The body encoding. /// A . IResponseBuilder WithBody([NotNull] Func bodyFactory, [CanBeNull] string destination = BodyDestinationFormat.SameAsSource, [CanBeNull] Encoding encoding = null); /// /// WithBody : Create a ... response based on a bytearray. /// /// The body. /// The Body Destination format (SameAsSource, String or Bytes). /// The body encoding. /// A . IResponseBuilder WithBody([NotNull] byte[] body, [CanBeNull] string destination = BodyDestinationFormat.SameAsSource, [CanBeNull] Encoding encoding = null); /// /// WithBody : Create a string response based on a object (which will be converted to a JSON string). /// /// The body. /// The body encoding. /// Use JSON indented. /// A . IResponseBuilder WithBodyAsJson([NotNull] object body, [CanBeNull] Encoding encoding = null, bool? indented = null); /// /// WithBody : Create a string response based on a object (which will be converted to a JSON string). /// /// The body. /// Define whether child objects to be indented according to the Newtonsoft.Json.JsonTextWriter.Indentation and Newtonsoft.Json.JsonTextWriter.IndentChar settings. /// A . IResponseBuilder WithBodyAsJson([NotNull] object body, bool indented); /// /// WithBody : Create a string response based on a Base64 string (which will be decoded to a normal string). /// /// The body. /// The Encoding. /// A . [Obsolete] IResponseBuilder WithBodyFromBase64([NotNull] string bodyAsbase64, [CanBeNull] Encoding encoding = null); /// /// WithBodyFromFile : Create a ... response based on a File. /// /// The filename. /// Defines if this file is cached in memory or retrieved from disk everytime the response is created. /// A . IResponseBuilder WithBodyFromFile([NotNull] string filename, bool cache = true); } }