39 lines
1.1 KiB
C#
39 lines
1.1 KiB
C#
using System;
|
|
|
|
namespace mROA.Implementation
|
|
{
|
|
public interface ICallRequest
|
|
{
|
|
RequestId Id { get; }
|
|
int CommandId { get; }
|
|
ComplexObjectIdentifier ObjectId { get; }
|
|
object?[]? Parameters { get; }
|
|
}
|
|
|
|
public struct DefaultCallRequest : ICallRequest
|
|
{
|
|
public RequestId Id { get; set; }
|
|
public int CommandId { get; set; }
|
|
public ComplexObjectIdentifier ObjectId { get; set; }
|
|
|
|
public object?[]? Parameters { get; set; }
|
|
|
|
public override string ToString()
|
|
{
|
|
return $"Call request {{ Id : {Id}, CommandId : {CommandId}, ObjectId : {ObjectId} }}";
|
|
}
|
|
}
|
|
|
|
public class CancelRequest : ICallRequest
|
|
{
|
|
public RequestId Id { get; set; }
|
|
public int CommandId { get; set; } = -2;
|
|
public ComplexObjectIdentifier ObjectId { get; set; } = ComplexObjectIdentifier.Null;
|
|
public object?[]? Parameters { get; set; } = null;
|
|
|
|
public override string ToString()
|
|
{
|
|
return $"Cancel request {{ Id : {Id}, CommandId : {CommandId}, ObjectId : {ObjectId} }}";
|
|
}
|
|
}
|
|
} |