Class Synchronization
Denotes an abstract synchronization
Inherited Members
Namespace: NMF.Synchronizations
Assembly: NMF.Synchronizations.dll
Syntax
public abstract class Synchronization : Transformation
Properties
| Edit this page View SourceSynchronizationRules
Gets a collection of synchronization rules
Declaration
public abstract IEnumerable<SynchronizationRuleBase> SynchronizationRules { get; }
Property Value
Type | Description |
---|---|
IEnumerable<SynchronizationRuleBase> |
Methods
| Edit this page View SourceGetSynchronizationRuleForSignature(Type, Type)
Gets the synchronization rule for the given LHS and RHS type combination
Declaration
public virtual SynchronizationRuleBase GetSynchronizationRuleForSignature(Type left, Type right)
Parameters
Type | Name | Description |
---|---|---|
Type | left | The LHS type |
Type | right | The RHS type |
Returns
Type | Description |
---|---|
SynchronizationRuleBase | The synchronization rule or null, if no synchronization rule could be found |
GetSynchronizationRuleForType(Type)
Gets the synchronization rule for the given synchronization rule type
Declaration
public virtual SynchronizationRuleBase GetSynchronizationRuleForType(Type type)
Parameters
Type | Name | Description |
---|---|---|
Type | type | The type of synchronization rule |
Returns
Type | Description |
---|---|
SynchronizationRuleBase | The synchronization rule object |
GetSynchronizationRulesForSignature(Type, Type)
Gets all synchronization rules for the given LHS and RHS type combination
Declaration
public virtual IEnumerable<SynchronizationRuleBase> GetSynchronizationRulesForSignature(Type left, Type right)
Parameters
Type | Name | Description |
---|---|---|
Type | left | The LHS type |
Type | right | The RHS type |
Returns
Type | Description |
---|---|
IEnumerable<SynchronizationRuleBase> |
GetSynchronizationRulesForType(Type)
Gets all synchronization rules of the given type
Declaration
public virtual IEnumerable<SynchronizationRuleBase> GetSynchronizationRulesForType(Type type)
Parameters
Type | Name | Description |
---|---|---|
Type | type | The type of synchronization rule |
Returns
Type | Description |
---|---|
IEnumerable<SynchronizationRuleBase> | All synchronization rules of the given type |
RegisterRules()
Registers the rules of this transformation
Declaration
public override void RegisterRules()
Overrides
| Edit this page View SourceSynchronizeMany<TLeft, TRight>(SynchronizationRule<TLeft, TRight>, ICollection<TLeft>, ICollection<TRight>, ISynchronizationContext)
Synchronizes the given LHS elements with the provided RHS elements or creates them if necessary
Declaration
public void SynchronizeMany<TLeft, TRight>(SynchronizationRule<TLeft, TRight> startRule, ICollection<TLeft> lefts, ICollection<TRight> rights, ISynchronizationContext synchronizationContext) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
SynchronizationRule<TLeft, TRight> | startRule | The synchronization rule to start with |
ICollection<TLeft> | lefts | The LHS elements |
ICollection<TRight> | rights | The RHS elements |
ISynchronizationContext | synchronizationContext | The context in which the synchronization shall be executed |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |
SynchronizeMany<TLeft, TRight>(SynchronizationRule<TLeft, TRight>, ICollection<TLeft>, ICollection<TRight>, SynchronizationDirection, ChangePropagationMode)
Synchronizes the given LHS elements with the provided RHS elements or creates them if necessary
Declaration
public ISynchronizationContext SynchronizeMany<TLeft, TRight>(SynchronizationRule<TLeft, TRight> startRule, ICollection<TLeft> lefts, ICollection<TRight> rights, SynchronizationDirection direction, ChangePropagationMode changePropagation) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
SynchronizationRule<TLeft, TRight> | startRule | The synchronization rule to start with |
ICollection<TLeft> | lefts | The LHS elements |
ICollection<TRight> | rights | The RHS elements |
SynchronizationDirection | direction | The direction of the model synchronization |
ChangePropagationMode | changePropagation | The change propagation mode |
Returns
Type | Description |
---|---|
ISynchronizationContext | The synchronization context in which the synchronization takes place |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |
SynchronizeMany<TLeft, TRight>(ICollection<TLeft>, ICollection<TRight>, ISynchronizationContext)
Synchronizes the given LHS elements with the provided RHS elements or creates them if necessary
Declaration
public void SynchronizeMany<TLeft, TRight>(ICollection<TLeft> lefts, ICollection<TRight> rights, ISynchronizationContext synchronizationContext) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
ICollection<TLeft> | lefts | The LHS elements |
ICollection<TRight> | rights | The RHS elements |
ISynchronizationContext | synchronizationContext | The context in which the synchronization shall be executed |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |
SynchronizeMany<TLeft, TRight>(ICollection<TLeft>, ICollection<TRight>, SynchronizationDirection, ChangePropagationMode)
Synchronizes the given LHS elements with the provided RHS elements or creates them if necessary
Declaration
public ISynchronizationContext SynchronizeMany<TLeft, TRight>(ICollection<TLeft> lefts, ICollection<TRight> rights, SynchronizationDirection direction, ChangePropagationMode changePropagation) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
ICollection<TLeft> | lefts | The LHS elements |
ICollection<TRight> | rights | The RHS elements |
SynchronizationDirection | direction | The direction of the model synchronization |
ChangePropagationMode | changePropagation | The change propagation mode |
Returns
Type | Description |
---|---|
ISynchronizationContext | The synchronization context in which the synchronization takes place |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |
Synchronize<TLeft, TRight>(SynchronizationRule<TLeft, TRight>, ref TLeft, ref TRight, ISynchronizationContext)
Synchronizes the given LHS element with the provided RHS element or creates them if necessary
Declaration
public void Synchronize<TLeft, TRight>(SynchronizationRule<TLeft, TRight> startRule, ref TLeft left, ref TRight right, ISynchronizationContext synchronizationContext) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
SynchronizationRule<TLeft, TRight> | startRule | The rule that should be started with |
TLeft | left | The LHS element |
TRight | right | The RHS element |
ISynchronizationContext | synchronizationContext | The context in which the synchronization shall be executed |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |
Synchronize<TLeft, TRight>(SynchronizationRule<TLeft, TRight>, ref TLeft, ref TRight, SynchronizationDirection, ChangePropagationMode)
Synchronizes the given LHS element with the provided RHS element or creates them if necessary
Declaration
public ISynchronizationContext Synchronize<TLeft, TRight>(SynchronizationRule<TLeft, TRight> startRule, ref TLeft left, ref TRight right, SynchronizationDirection direction, ChangePropagationMode changePropagation) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
SynchronizationRule<TLeft, TRight> | startRule | The rule that should be started with |
TLeft | left | The LHS element |
TRight | right | The RHS element |
SynchronizationDirection | direction | The direction of the model synchronization |
ChangePropagationMode | changePropagation | The change propagation mode |
Returns
Type | Description |
---|---|
ISynchronizationContext | The synchronization context in which the synchronization takes place |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |
Synchronize<TLeft, TRight>(ref TLeft, ref TRight, ISynchronizationContext)
Synchronizes the given LHS element with the provided RHS element or creates them if necessary
Declaration
public void Synchronize<TLeft, TRight>(ref TLeft left, ref TRight right, ISynchronizationContext synchronizationContext) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
TLeft | left | The LHS element |
TRight | right | The RHS element |
ISynchronizationContext | synchronizationContext | The context in which the synchronization shall be executed |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |
Synchronize<TLeft, TRight>(ref TLeft, ref TRight, SynchronizationDirection, ChangePropagationMode)
Synchronizes the given LHS element with the provided RHS element or creates them if necessary
Declaration
public ISynchronizationContext Synchronize<TLeft, TRight>(ref TLeft left, ref TRight right, SynchronizationDirection direction, ChangePropagationMode changePropagation) where TLeft : class where TRight : class
Parameters
Type | Name | Description |
---|---|---|
TLeft | left | The LHS element |
TRight | right | The RHS element |
SynchronizationDirection | direction | The direction of the model synchronization |
ChangePropagationMode | changePropagation | The change propagation mode |
Returns
Type | Description |
---|---|
ISynchronizationContext | The synchronization context in which the synchronization takes place |
Type Parameters
Name | Description |
---|---|
TLeft | The LHS type |
TRight | The RHS type |