Remove Eve command invocation mirrors
This commit is contained in:
parent
44bccb7a46
commit
7a8ce80e06
5 changed files with 18 additions and 71 deletions
|
|
@ -209,11 +209,6 @@ export type AetheriaRuntimeEveCommandDocumentSlot =
|
|||
| "loadoutTemplate"
|
||||
| "inputSettings"
|
||||
| "tradeValuePolicy"
|
||||
| "operationId"
|
||||
| "operationSchemaId"
|
||||
| "operationRouteKind"
|
||||
| "operationRouteDescription"
|
||||
| "operationIdempotencyKey"
|
||||
| "payload"
|
||||
| "operation";
|
||||
|
||||
|
|
@ -229,11 +224,6 @@ export const aetheriaRuntimeEveCommandDocumentSlots: Record<AetheriaRuntimeEveCo
|
|||
loadoutTemplate: 8,
|
||||
inputSettings: 9,
|
||||
tradeValuePolicy: 10,
|
||||
operationId: 11,
|
||||
operationSchemaId: 12,
|
||||
operationRouteKind: 13,
|
||||
operationRouteDescription: 14,
|
||||
operationIdempotencyKey: 15,
|
||||
payload: 16,
|
||||
operation: 17,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -13130,11 +13130,6 @@ static void RequireTypedEveCommandBodies(string root)
|
|||
"public CultMeshOperationInvocationDescriptor Invocation",
|
||||
"public CultMeshOperationPayload Payload",
|
||||
"public CultMeshOperationInvocationRecord Operation",
|
||||
"public string OperationId",
|
||||
"public string OperationSchemaId",
|
||||
"public string OperationRouteKind",
|
||||
"public string OperationRouteDescription",
|
||||
"public string OperationIdempotencyKey",
|
||||
"public Dictionary<string, string> Payload",
|
||||
"SetTradeValueQualityMinimum",
|
||||
"SetTradeValueTierQuality",
|
||||
|
|
@ -13154,7 +13149,16 @@ static void RequireTypedEveCommandBodies(string root)
|
|||
{
|
||||
"IReadOnlyDictionary<string, string> Payload",
|
||||
"SubmitSurfaceRequest(",
|
||||
"CreateSurfaceRequestCommand("
|
||||
"CreateSurfaceRequestCommand(",
|
||||
"public string OperationSchemaId",
|
||||
"public string OperationRouteKind",
|
||||
"public string OperationRouteDescription",
|
||||
"public string OperationIdempotencyKey",
|
||||
"[Key(11)]",
|
||||
"[Key(12)]",
|
||||
"[Key(13)]",
|
||||
"[Key(14)]",
|
||||
"[Key(15)]"
|
||||
};
|
||||
var forbiddenDocumentHits = forbiddenDocumentSymbols
|
||||
.Where(symbol => eveCommandDocument.Contains(symbol, StringComparison.Ordinal))
|
||||
|
|
@ -13195,7 +13199,6 @@ static void RequireTypedEveCommandBodies(string root)
|
|||
"Operation = invocation",
|
||||
"Operation = invocationRecord",
|
||||
"NormalizeInvocationRecord(",
|
||||
"ApplyInvocationCompatibilityFields(",
|
||||
"Payload = envelope.Payload.ToDictionary()",
|
||||
"Payload = (payload ?? CultMeshOperationPayload.Empty).ToDictionary()",
|
||||
"return request.Payload.GetString(key);",
|
||||
|
|
@ -13253,6 +13256,12 @@ static void RequireTypedEveCommandBodies(string root)
|
|||
eveCommandClient.Contains("OperationId = envelope.Invocation.OperationId", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("OperationId = invocation.OperationId", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("OperationId = invocationRecord.OperationId", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("ApplyInvocationCompatibilityFields(", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("document.OperationId", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("document.OperationSchemaId", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("document.OperationRouteKind", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("document.OperationRouteDescription", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("document.OperationIdempotencyKey", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("Payload = new System.Collections.Generic.Dictionary<string, string>(\r\n envelope.Payload", StringComparison.Ordinal) ||
|
||||
eveCommandClient.Contains("Payload = new System.Collections.Generic.Dictionary<string, string>(\n envelope.Payload", StringComparison.Ordinal))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4472,11 +4472,6 @@ public class DaemonRuntimeDocumentTests
|
|||
var document = AetheriaRuntimeEveCommandClient.ToDocument(envelope);
|
||||
var restored = AetheriaRuntimeEveCommandClient.ToEnvelope(document);
|
||||
|
||||
Assert.AreEqual(AetheriaRuntimePlayerSettingsCommands.SetPlayerName, document.OperationId);
|
||||
Assert.AreEqual(AetheriaRuntimeEveCommandDocument.SchemaId, document.OperationSchemaId);
|
||||
Assert.AreEqual(CultMeshLocalityKind.Ipc.ToString(), document.OperationRouteKind);
|
||||
Assert.AreEqual("eve-ui-test", document.OperationRouteDescription);
|
||||
Assert.AreEqual("idempotent-player-name", document.OperationIdempotencyKey);
|
||||
Assert.AreEqual(AetheriaRuntimePlayerSettingsCommands.SetPlayerName, document.Operation.OperationId);
|
||||
Assert.AreEqual(AetheriaRuntimeEveCommandDocument.SchemaId, document.Operation.SchemaId);
|
||||
Assert.AreEqual(CultMeshLocalityKind.Ipc.ToString(), document.Operation.RouteKind);
|
||||
|
|
|
|||
|
|
@ -544,7 +544,6 @@ namespace GameCult.Aetheria.State.Verse
|
|||
if (string.IsNullOrWhiteSpace(document.Command) && document.Kind != AetheriaRuntimeEveCommandKind.Unknown)
|
||||
document.Command = CommandText(document.Kind);
|
||||
document.Operation = NormalizeInvocationRecord(document);
|
||||
ApplyInvocationCompatibilityFields(document, document.Operation);
|
||||
if (document.Payload == null)
|
||||
document.Payload = new System.Collections.Generic.Dictionary<string, string>(StringComparer.Ordinal);
|
||||
return document;
|
||||
|
|
@ -552,7 +551,7 @@ namespace GameCult.Aetheria.State.Verse
|
|||
|
||||
private static CultMeshOperationInvocationDescriptor CreateInvocation(AetheriaRuntimeEveCommandDocument document)
|
||||
{
|
||||
return document.Operation.ToInvocation(
|
||||
return (document.Operation ?? new CultMeshOperationInvocationRecord()).ToInvocation(
|
||||
fallbackOperationId: document.Command ?? "",
|
||||
fallbackSchemaId: CommandSchema,
|
||||
fallbackRouteHint: new CultMeshRouteHint(CultMeshLocalityKind.Network, "aetheria-eve-command"),
|
||||
|
|
@ -562,27 +561,7 @@ namespace GameCult.Aetheria.State.Verse
|
|||
private static CultMeshOperationInvocationRecord NormalizeInvocationRecord(
|
||||
AetheriaRuntimeEveCommandDocument document)
|
||||
{
|
||||
var record = document.Operation;
|
||||
var legacy = CultMesh.OperationInvocationRecord(
|
||||
document.OperationId,
|
||||
document.OperationSchemaId,
|
||||
document.OperationRouteKind,
|
||||
document.OperationRouteDescription,
|
||||
document.OperationIdempotencyKey);
|
||||
|
||||
var recordOperationId = record?.OperationId ?? "";
|
||||
var recordSchemaId = record?.SchemaId ?? "";
|
||||
var recordRouteKind = record?.RouteKind ?? "";
|
||||
var recordRouteDescription = record?.RouteDescription ?? "";
|
||||
var recordIdempotencyKey = record?.IdempotencyKey ?? "";
|
||||
var merged = CultMesh.OperationInvocationRecord(
|
||||
string.IsNullOrWhiteSpace(recordOperationId) ? legacy.OperationId : recordOperationId,
|
||||
string.IsNullOrWhiteSpace(recordSchemaId) ? legacy.SchemaId : recordSchemaId,
|
||||
string.IsNullOrWhiteSpace(recordRouteKind) ? legacy.RouteKind : recordRouteKind,
|
||||
string.IsNullOrWhiteSpace(recordRouteDescription) ? legacy.RouteDescription : recordRouteDescription,
|
||||
string.IsNullOrWhiteSpace(recordIdempotencyKey) ? legacy.IdempotencyKey : recordIdempotencyKey);
|
||||
|
||||
var invocation = merged.ToInvocation(
|
||||
var invocation = (document.Operation ?? new CultMeshOperationInvocationRecord()).ToInvocation(
|
||||
fallbackOperationId: document.Command ?? "",
|
||||
fallbackSchemaId: CommandSchema,
|
||||
fallbackRouteHint: new CultMeshRouteHint(CultMeshLocalityKind.Network, "aetheria-eve-command"),
|
||||
|
|
@ -590,17 +569,6 @@ namespace GameCult.Aetheria.State.Verse
|
|||
return CultMesh.OperationInvocationRecord(invocation);
|
||||
}
|
||||
|
||||
private static void ApplyInvocationCompatibilityFields(
|
||||
AetheriaRuntimeEveCommandDocument document,
|
||||
CultMeshOperationInvocationRecord record)
|
||||
{
|
||||
document.OperationId = record.OperationId;
|
||||
document.OperationSchemaId = record.SchemaId;
|
||||
document.OperationRouteKind = record.RouteKind;
|
||||
document.OperationRouteDescription = record.RouteDescription;
|
||||
document.OperationIdempotencyKey = record.IdempotencyKey;
|
||||
}
|
||||
|
||||
public static AetheriaRuntimeEveCommandKind CommandKindForSurface(EveSurfaceCommandRequest request)
|
||||
{
|
||||
if (request == null) throw new ArgumentNullException(nameof(request));
|
||||
|
|
|
|||
|
|
@ -206,21 +206,6 @@ namespace GameCult.Aetheria.State.Verse
|
|||
[Key(10)]
|
||||
public AetheriaRuntimeTradeValuePolicyCommandBody TradeValuePolicy { get; set; } = new AetheriaRuntimeTradeValuePolicyCommandBody();
|
||||
|
||||
[Key(11)]
|
||||
public string OperationId { get; set; } = "";
|
||||
|
||||
[Key(12)]
|
||||
public string OperationSchemaId { get; set; } = "";
|
||||
|
||||
[Key(13)]
|
||||
public string OperationRouteKind { get; set; } = "";
|
||||
|
||||
[Key(14)]
|
||||
public string OperationRouteDescription { get; set; } = "";
|
||||
|
||||
[Key(15)]
|
||||
public string OperationIdempotencyKey { get; set; } = "";
|
||||
|
||||
[Key(16)]
|
||||
public Dictionary<string, string> Payload { get; set; } = new Dictionary<string, string>(StringComparer.Ordinal);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue