Table of Contents

Namespace Xabbo.Interceptor

Interfaces

IInterceptor

Represents a packet interceptor that can read, modify and send packets.

IInterceptorContext

Represents a context that allows the source generator to inject interceptor related methods into.

The generator will inject the following methods into partial classes that implement this interface and are marked with ExtensionAttribute or InterceptAttribute:
  • void Send<T, ...>(Identifier, T, ...)(variadic)
  • void Send<T, ...>(Header, T, ...)(variadic)
  • void Send<T>(T msg) where T : IMessage<T>
  • Task<IPacket> ReceiveAsync(Identifier, ...)
  • Task<IPacket> ReceiveAsync(Header, ...)
  • Task<T> ReceiveAsync<T>(...) where T : IMessage<T>
  • Task<TData> RequestAsync<TReq, TRes, TData>(...) where T : IRequestMessage<TReq, TRes, TData>