refactor MethodImplementations as subclass of ClassImplementation
This commit is contained in:
parent
6e99d815eb
commit
9eebbef630
@ -17,10 +17,8 @@
|
|||||||
|
|
||||||
namespace Mocha.Core;
|
namespace Mocha.Core;
|
||||||
|
|
||||||
public abstract class MethodImplementation
|
public abstract class MethodImplementation : ClassImplementation
|
||||||
{
|
{
|
||||||
public abstract Guid MethodClassGuid { get; }
|
|
||||||
|
|
||||||
protected abstract InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method);
|
protected abstract InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method);
|
||||||
public InstanceHandle Execute(Oms oms, OmsContext context, InstanceHandle method)
|
public InstanceHandle Execute(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class AssignAttributeMethodImplementation : MethodImplementation
|
public class AssignAttributeMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.AssignAttributeMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.AssignAttributeMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class BuildAttributeMethodImplementation : MethodImplementation
|
public class BuildAttributeMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.BuildAttributeMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.BuildAttributeMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -6,7 +6,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
public class BuildElementMethodImplementation : MethodImplementation
|
public class BuildElementMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
|
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.BuildElementMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.BuildElementMethod;
|
||||||
|
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -21,7 +21,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class BuildUIResponseMethodImplementation : MethodImplementation
|
public class BuildUIResponseMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.BuildUIResponseMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.BuildUIResponseMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -23,7 +23,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class CalculateNumericMethodImplementation : MethodImplementation
|
public class CalculateNumericMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.CalculateNumericMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.CalculateNumericMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -20,7 +20,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class ConditionalSelectAttributeMethodImplementation : MethodImplementation
|
public class ConditionalSelectAttributeMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.ConditionalSelectAttributeMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.ConditionalSelectAttributeMethod;
|
||||||
|
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -20,7 +20,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class ConditionalSelectFromInstanceSetMethodImplementation : MethodImplementation
|
public class ConditionalSelectFromInstanceSetMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.ConditionalSelectFromInstanceSetMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.ConditionalSelectFromInstanceSetMethod;
|
||||||
|
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -23,7 +23,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class EvaluateBooleanExpressionMethodImplementation : MethodImplementation
|
public class EvaluateBooleanExpressionMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.EvaluateBooleanExpressionMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.EvaluateBooleanExpressionMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle c_Class = oms.GetInstance(KnownInstanceGuids.Classes.Class);
|
InstanceHandle c_Class = oms.GetInstance(KnownInstanceGuids.Classes.Class);
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetAttributeBySystemRoutineMethodImplementation : MethodImplementation
|
public class GetAttributeBySystemRoutineMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.GetAttributeBySystemRoutineMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.GetAttributeBySystemRoutineMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetAttributeMethodImplementation : MethodImplementation
|
public class GetAttributeMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.GetAttributeMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.GetAttributeMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetInstanceSetBySystemRoutineMethodImplementation : MethodImplementation
|
public class GetInstanceSetBySystemRoutineMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.GetInstanceSetBySystemRoutineMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.GetInstanceSetBySystemRoutineMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -20,7 +20,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetInstancesMethodImplementation : MethodImplementation
|
public class GetInstancesMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => new Guid("{0a379314-9d0f-432d-ae59-63194ab32dd3}");
|
public override Guid ClassGuid => new Guid("{0a379314-9d0f-432d-ae59-63194ab32dd3}");
|
||||||
|
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetReferencedAttributeMethodImplementation : MethodImplementation
|
public class GetReferencedAttributeMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.GetReferencedAttributeMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.GetReferencedAttributeMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
Guid methodId = oms.GetGlobalIdentifier(method);
|
Guid methodId = oms.GetGlobalIdentifier(method);
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetReferencedInstanceSetMethodImplementation : MethodImplementation
|
public class GetReferencedInstanceSetMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.GetReferencedInstanceSetMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.GetReferencedInstanceSetMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
Guid methodId = oms.GetGlobalIdentifier(method);
|
Guid methodId = oms.GetGlobalIdentifier(method);
|
||||||
|
|||||||
@ -21,7 +21,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetRelationshipMethodImplementation : MethodImplementation
|
public class GetRelationshipMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.GetRelationshipMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.GetRelationshipMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
Guid methodId = oms.GetGlobalIdentifier(method);
|
Guid methodId = oms.GetGlobalIdentifier(method);
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class GetSpecifiedInstancesMethodImplementation : MethodImplementation
|
public class GetSpecifiedInstancesMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.GetSpecifiedInstancesMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.GetSpecifiedInstancesMethod;
|
||||||
|
|
||||||
|
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class InstanceOpMethodImplementation : MethodImplementation
|
public class InstanceOpMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.InstanceOpMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.InstanceOpMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle op = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Op_Scope__invokes__Instance_Op));
|
InstanceHandle op = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Op_Scope__invokes__Instance_Op));
|
||||||
|
|||||||
@ -21,7 +21,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class InvokeWebServiceMethodImplementation : MethodImplementation
|
public class InvokeWebServiceMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.InvokeWebServiceMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.InvokeWebServiceMethod;
|
||||||
|
|
||||||
|
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class ProcessRelatedUpdatesMethodImplementation : MethodImplementation
|
public class ProcessRelatedUpdatesMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.ProcessRelatedUpdatesMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.ProcessRelatedUpdatesMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle forClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle forClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class ProcessUpdatesMethodImplementation : MethodImplementation
|
public class ProcessUpdatesMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.ProcessUpdatesMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.ProcessUpdatesMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle forClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle forClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -30,7 +30,7 @@ public class SelectFromInstanceSetMethodImplementation : MethodImplementation
|
|||||||
public T Data;
|
public T Data;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.SelectFromInstanceSetMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.SelectFromInstanceSetMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
//! FIXME !
|
//! FIXME !
|
||||||
|
|||||||
@ -19,7 +19,7 @@ namespace Mocha.Core.MethodImplementations;
|
|||||||
|
|
||||||
public class UpdateBySystemRoutineMethodImplementation : MethodImplementation
|
public class UpdateBySystemRoutineMethodImplementation : MethodImplementation
|
||||||
{
|
{
|
||||||
public override Guid MethodClassGuid => KnownInstanceGuids.MethodClasses.UpdateBySystemRoutineMethod;
|
public override Guid ClassGuid => KnownInstanceGuids.MethodClasses.UpdateBySystemRoutineMethod;
|
||||||
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
protected override InstanceHandle ExecuteInternal(Oms oms, OmsContext context, InstanceHandle method)
|
||||||
{
|
{
|
||||||
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
InstanceHandle irForClass = oms.GetRelatedInstance(method, oms.GetInstance(KnownRelationshipGuids.Method__for__Class));
|
||||||
|
|||||||
@ -55,7 +55,7 @@ public abstract class Oms
|
|||||||
MethodImplementation[] methodImplementations = MBS.Core.Reflection.TypeLoader.GetAvailableTypes<MethodImplementation>(new System.Reflection.Assembly[] { Assembly.GetExecutingAssembly() });
|
MethodImplementation[] methodImplementations = MBS.Core.Reflection.TypeLoader.GetAvailableTypes<MethodImplementation>(new System.Reflection.Assembly[] { Assembly.GetExecutingAssembly() });
|
||||||
foreach (MethodImplementation impl in methodImplementations)
|
foreach (MethodImplementation impl in methodImplementations)
|
||||||
{
|
{
|
||||||
RegisterMethodImplementation(impl.MethodClassGuid, impl);
|
RegisterMethodImplementation(impl.ClassGuid, impl);
|
||||||
}
|
}
|
||||||
|
|
||||||
AttributeImplementation[] attributeImplementations = MBS.Core.Reflection.TypeLoader.GetAvailableTypes<AttributeImplementation>(new System.Reflection.Assembly[] { Assembly.GetExecutingAssembly() });
|
AttributeImplementation[] attributeImplementations = MBS.Core.Reflection.TypeLoader.GetAvailableTypes<AttributeImplementation>(new System.Reflection.Assembly[] { Assembly.GetExecutingAssembly() });
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user