Class SessionEventArgs
Holds info related to a single proxy session (single request/response sequence). A proxy session is bounded to a single connection from client. A proxy session ends when client terminates connection to proxy or when server terminates connection from proxy.
Implements
Inherited Members
Namespace: Titanium.Web.Proxy.EventArguments
Assembly: Titanium.Web.Proxy.dll
Syntax
public class SessionEventArgs : SessionEventArgsBase, IDisposable
Constructors
SessionEventArgs(Int32, ProxyEndPoint, Request, CancellationTokenSource, ExceptionHandler)
Declaration
protected SessionEventArgs(int bufferSize, ProxyEndPoint endPoint, Request request, CancellationTokenSource cancellationTokenSource, ExceptionHandler exceptionFunc)
Parameters
| Type | Name | Description |
|---|---|---|
| Int32 | bufferSize | |
| ProxyEndPoint | endPoint | |
| Request | request | |
| CancellationTokenSource | cancellationTokenSource | |
| ExceptionHandler | exceptionFunc |
Properties
ReRequest
Should we send the request again ?
Declaration
public bool ReRequest { get; set; }
Property Value
| Type | Description |
|---|---|
| Boolean |
Methods
Dispose()
Implement any cleanup here
Declaration
public override void Dispose()
Overrides
GenericResponse(Byte[], HttpStatusCode, Dictionary<String, HttpHeader>)
Before request is made to server respond with the specified byte[], the specified status to client. And then ignore the request.
Declaration
public void GenericResponse(byte[] result, HttpStatusCode status, Dictionary<string, HttpHeader> headers)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Byte[] | result | The bytes to sent. |
| HttpStatusCode | status | The HTTP status code. |
| Dictionary<String, HttpHeader> | headers | The HTTP headers. |
GenericResponse(String, HttpStatusCode, Dictionary<String, HttpHeader>)
Before request is made to server respond with the specified HTML string and the specified status to client. And then ignore the request.
Declaration
public void GenericResponse(string html, HttpStatusCode status, Dictionary<string, HttpHeader> headers = null)
Parameters
| Type | Name | Description |
|---|---|---|
| String | html | The html content. |
| HttpStatusCode | status | The HTTP status code. |
| Dictionary<String, HttpHeader> | headers | The HTTP headers. |
GetRequestBody(CancellationToken)
Gets the request body as bytes.
Declaration
public Task<byte[]> GetRequestBody(CancellationToken cancellationToken = default(CancellationToken))
Parameters
| Type | Name | Description |
|---|---|---|
| CancellationToken | cancellationToken | Optional cancellation token for this async task. |
Returns
| Type | Description |
|---|---|
| Task<System.Byte[]> | The body as bytes. |
GetRequestBodyAsString(CancellationToken)
Gets the request body as string.
Declaration
public Task<string> GetRequestBodyAsString(CancellationToken cancellationToken = default(CancellationToken))
Parameters
| Type | Name | Description |
|---|---|---|
| CancellationToken | cancellationToken | Optional cancellation token for this async task. |
Returns
| Type | Description |
|---|---|
| Task<String> | The body as string. |
GetResponseBody(CancellationToken)
Gets the response body as bytes.
Declaration
public Task<byte[]> GetResponseBody(CancellationToken cancellationToken = default(CancellationToken))
Parameters
| Type | Name | Description |
|---|---|---|
| CancellationToken | cancellationToken | Optional cancellation token for this async task. |
Returns
| Type | Description |
|---|---|
| Task<System.Byte[]> | The resulting bytes. |
GetResponseBodyAsString(CancellationToken)
Gets the response body as string.
Declaration
public Task<string> GetResponseBodyAsString(CancellationToken cancellationToken = default(CancellationToken))
Parameters
| Type | Name | Description |
|---|---|---|
| CancellationToken | cancellationToken | Optional cancellation token for this async task. |
Returns
| Type | Description |
|---|---|
| Task<String> | The string body. |
Ok(Byte[], Dictionary<String, HttpHeader>)
Before request is made to server respond with the specified byte[] to client and ignore the request.
Declaration
public void Ok(byte[] result, Dictionary<string, HttpHeader> headers = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Byte[] | result | The html content bytes. |
| Dictionary<String, HttpHeader> | headers | The HTTP headers. |
Ok(String, Dictionary<String, HttpHeader>)
Before request is made to server respond with the specified HTML string to client and ignore the request.
Declaration
public void Ok(string html, Dictionary<string, HttpHeader> headers = null)
Parameters
| Type | Name | Description |
|---|---|---|
| String | html | HTML content to sent. |
| Dictionary<String, HttpHeader> | headers | HTTP response headers. |
Redirect(String)
Redirect to provided URL.
Declaration
public void Redirect(string url)
Parameters
| Type | Name | Description |
|---|---|---|
| String | url | The URL to redirect. |
Respond(Response)
Respond with given response object to client.
Declaration
public void Respond(Response response)
Parameters
| Type | Name | Description |
|---|---|---|
| Response | response | The response object. |
SetRequestBody(Byte[])
Sets the request body.
Declaration
public void SetRequestBody(byte[] body)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Byte[] | body | The request body bytes. |
SetRequestBodyString(String)
Sets the body with the specified string.
Declaration
public void SetRequestBodyString(string body)
Parameters
| Type | Name | Description |
|---|---|---|
| String | body | The request body string to set. |
SetResponseBody(Byte[])
Set the response body bytes.
Declaration
public void SetResponseBody(byte[] body)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Byte[] | body | The body bytes to set. |
SetResponseBodyString(String)
Replace the response body with the specified string.
Declaration
public void SetResponseBodyString(string body)
Parameters
| Type | Name | Description |
|---|---|---|
| String | body | The body string to set. |
TerminateServerConnection()
Terminate the connection to server.
Declaration
public void TerminateServerConnection()
Events
MultipartRequestPartSent
Occurs when multipart request part sent.
Declaration
public event EventHandler<MultipartRequestPartSentEventArgs> MultipartRequestPartSent
Event Type
| Type | Description |
|---|---|
| EventHandler<MultipartRequestPartSentEventArgs> |