Code/RpcTransport.cs
namespace Orizon;
/// <summary>
/// Provides methods to send RPC requests and responses between the client and server.
/// </summary>
internal static class RpcTransport
{
/// <summary>
/// Sends an RPC request to the server.
/// </summary>
/// <typeparam name="TRequest">The type of the request.</typeparam>
/// <param name="request">The request to send.</param>
[ClientOnly]
public static void SendToServer<TRequest>( TRequest request ) where TRequest : struct, IRpcRequest
{
RpcServer.HandleRequest( request );
}
/// <summary>
/// Sends an RPC response to the client.
/// </summary>
/// <typeparam name="TResponse">The type of the response.</typeparam>
/// <param name="response">The response to send.</param>
[HostOnly]
public static void SendToClient<TResponse>( TResponse response ) where TResponse : IRpcResponse
{
RpcClient.OnRpcResponse( response );
}
}