Class SessionEventArgsBase
  
  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.
    Inheritance
    
    SessionEventArgsBase
      
      
   
  
  
  Assembly: Titanium.Web.Proxy.dll
  Syntax
  
    public abstract class SessionEventArgsBase : ProxyEventArgsBase, IDisposable
   
  Fields
  
  
    |
    Improve this Doc
  
  
    View Source
  
  BufferPool
  
  
  Declaration
  
    protected readonly IBufferPool BufferPool
   
  Field Value
  
    
      
        | Type | Description | 
    
    
      
        | IBufferPool |  | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  ExceptionFunc
  
  
  Declaration
  
    protected readonly ExceptionHandler ExceptionFunc
   
  Field Value
  
  Properties
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ClientConnectionId
  
  
  Declaration
  
    public Guid ClientConnectionId { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ClientEndPoint
  
  
  Declaration
  
    [Obsolete("Use ClientRemoteEndPoint instead.")]
public IPEndPoint ClientEndPoint { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ClientLocalEndPoint
  
  
  Declaration
  
    public IPEndPoint ClientLocalEndPoint { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ClientRemoteEndPoint
  
  
  Declaration
  
    public IPEndPoint ClientRemoteEndPoint { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  CustomUpStreamProxy
  Gets or sets the custom up stream proxy.
Declaration
  
    public IExternalProxy? CustomUpStreamProxy { get; set; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Nullable<IExternalProxy> | The custom up stream proxy. | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  CustomUpStreamProxyUsed
  Are we using a custom upstream HTTP(S) proxy?
Declaration
  
    public IExternalProxy? CustomUpStreamProxyUsed { get; }
   
  Property Value
  
    
      
        | Type | Description | 
    
    
      
        | Nullable<IExternalProxy> |  | 
    
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  EnableWinAuth
  Enable/disable Windows Authentication (NTLM/Kerberos) for the current session.
Declaration
  
    public bool EnableWinAuth { get; set; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Exception
  The last exception that happened.
Declaration
  
    public Exception Exception { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  HttpClient
  The web client used to communicate with server for this session.
Declaration
  
    public HttpWebClient HttpClient { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsHttps
  Does this session uses SSL?
Declaration
  
    public bool IsHttps { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsSocks
  Is this a SOCKS endpoint?
Declaration
  
    public bool IsSocks { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  IsTransparent
  Is this a transparent endpoint?
Declaration
  
    public bool IsTransparent { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  LocalEndPoint
  
  
  Declaration
  
    [Obsolete("Use ProxyEndPoint instead.")]
public ProxyEndPoint LocalEndPoint { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ProxyEndPoint
  Local endpoint via which we make the request.
Declaration
  
    public ProxyEndPoint ProxyEndPoint { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  ServerConnectionId
  
  
  Declaration
  
    public Guid ServerConnectionId { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  TimeLine
  Relative milliseconds for various events.
Declaration
  
    public Dictionary<string, DateTime> TimeLine { get; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  UserData
  Returns a user data for this request/response session which is
same as the user data of HttpClient.
Declaration
  
    public object UserData { get; set; }
   
  Property Value
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  WebSession
  
  
  Declaration
  
    [Obsolete("Use HttpClient instead.")]
public HttpWebClient WebSession { get; }
   
  Property Value
  
  Methods
  
  
    |
    Improve this Doc
  
  
    View Source
  
  
  Dispose()
  
  
  Declaration
  
    public virtual void Dispose()
   
  
    |
    Improve this Doc
  
  
    View Source
  
  
  TerminateSession()
  Terminates the session abruptly by terminating client/server connections.
Declaration
  
    public void TerminateSession()
   
  Events
  
  
    |
    Improve this Doc
  
  
    View Source
  
  DataReceived
  Fired when data is received within this session from client/server.
Declaration
  
    public event EventHandler<DataEventArgs> DataReceived
   
  Event Type
  
  
    |
    Improve this Doc
  
  
    View Source
  
  DataSent
  Fired when data is sent within this session to server/client.
Declaration
  
    public event EventHandler<DataEventArgs> DataSent
   
  Event Type
  
  Implements