Идентификация объектов для команд переделана на UniversalObjectIdentifier
This commit is contained in:
@@ -66,8 +66,10 @@ namespace mROA.Implementation.Backend
|
|||||||
if (invoker == null)
|
if (invoker == null)
|
||||||
throw new Exception($"Command {command.CommandId} not found");
|
throw new Exception($"Command {command.CommandId} not found");
|
||||||
|
|
||||||
var context = command.ObjectId != -1
|
IContextRepository repository;
|
||||||
? contextRepository.GetObject<object>(command.ObjectId)
|
|
||||||
|
var context = command.ObjectId.ContextId != -1
|
||||||
|
? contextRepository.GetObject<object>(command.ObjectId.ContextId)
|
||||||
: contextRepository.GetSingleObject(invoker.SuitableType);
|
: contextRepository.GetSingleObject(invoker.SuitableType);
|
||||||
|
|
||||||
if (context == null)
|
if (context == null)
|
||||||
@@ -102,7 +104,7 @@ namespace mROA.Implementation.Backend
|
|||||||
#if TRACE
|
#if TRACE
|
||||||
Console.WriteLine("Disposing object");
|
Console.WriteLine("Disposing object");
|
||||||
#endif
|
#endif
|
||||||
contextRepository.ClearObject(command.ObjectId);
|
contextRepository.ClearObject(command.ObjectId.ContextId);
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ namespace mROA.Implementation
|
|||||||
{
|
{
|
||||||
Guid Id { get; }
|
Guid Id { get; }
|
||||||
int CommandId { get; }
|
int CommandId { get; }
|
||||||
int ObjectId { get; }
|
UniversalObjectIdentifier ObjectId { get; }
|
||||||
object?[]? Parameters { get; }
|
object?[]? Parameters { get; }
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -17,7 +17,7 @@ namespace mROA.Implementation
|
|||||||
{
|
{
|
||||||
public Guid Id { get; set; } = Guid.NewGuid();
|
public Guid Id { get; set; } = Guid.NewGuid();
|
||||||
public int CommandId { get; set; }
|
public int CommandId { get; set; }
|
||||||
public int ObjectId { get; set; } = -1;
|
public UniversalObjectIdentifier ObjectId { get; set; } = UniversalObjectIdentifier.Null;
|
||||||
|
|
||||||
public object?[]? Parameters { get; set; }
|
public object?[]? Parameters { get; set; }
|
||||||
|
|
||||||
@@ -31,7 +31,7 @@ namespace mROA.Implementation
|
|||||||
{
|
{
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
public int CommandId { get; set; } = -2;
|
public int CommandId { get; set; } = -2;
|
||||||
public int ObjectId { get; set; } = -2;
|
public UniversalObjectIdentifier ObjectId { get; set; } = UniversalObjectIdentifier.Null;
|
||||||
public object?[]? Parameters { get; set; } = null;
|
public object?[]? Parameters { get; set; } = null;
|
||||||
|
|
||||||
public override string ToString()
|
public override string ToString()
|
||||||
|
|||||||
+1
-1
@@ -21,7 +21,7 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||||
<DefineConstants>TRACE;</DefineConstants>
|
<DefineConstants></DefineConstants>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
Reference in New Issue
Block a user