Files
ShrinkNetwork/Runtime/Core/ShrinkNetworkContext.cs
cneicy 8eaaa3040a
Publish UPM package / publish (push) Failing after 1s
chore: initialize standalone UPM package
2026-08-26 02:50:34 +08:00

32 lines
1.0 KiB
C#

#nullable enable
using Cysharp.Threading.Tasks;
namespace ShrinkNetwork
{
public sealed class ShrinkNetworkContext
{
public ShrinkNetworkService Service { get; }
public ShrinkNetworkSession Session { get; }
public ShrinkNetworkPacket Packet { get; }
public ShrinkNetworkContext(ShrinkNetworkService service, ShrinkNetworkSession session, ShrinkNetworkPacket packet)
{
Service = service;
Session = session;
Packet = packet;
}
public bool IsRequest => Packet.Kind == ShrinkNetworkPacketKind.Request;
public bool IsResponse => Packet.Kind == ShrinkNetworkPacketKind.Response;
public ShrinkRequestToken RequestToken => Packet.RequestToken;
public string? Route => Packet.Route;
public UniTask ReplyAsync<TResponse>(TResponse response)
where TResponse : class, IShrinkNetworkResponse
{
return Service.SendResponseAsync(Session, response, Packet.RequestToken, Packet.Route);
}
}
}