public SagaMethodMessageHandlingMember(IMessageHandlingMember @delegate, SagaCreationPolicy creationPolicy,
                                        string associationKey, string associationPropertyName,
                                        IAssociationResolver associationResolver, bool isEndingHandler) : base(@delegate)
 {
     _delegate                = @delegate;
     CreationPolicy           = creationPolicy;
     _associationKey          = associationKey;
     _associationPropertyName = associationPropertyName;
     _associationResolver     = associationResolver;
     IsEndingHandler          = isEndingHandler;
 }
        private IMessageHandlingMember DoWrapHandler(IMessageHandlingMember original, SagaCreationPolicy creationPolicy, string associationKeyName, string associationPropertyName, Type associationResolverClass)
        {
            var associationKey      = AssociationKey(associationKeyName, associationPropertyName);
            var associationResolver = FindAssociationResolver(associationResolverClass);

            associationResolver.Validate(associationPropertyName, original);
            var endingHandler = original.HasAttribute(typeof(EndSagaAttribute));

            return(new SagaMethodMessageHandlingMember(original, creationPolicy, associationKey, associationPropertyName, associationResolver, endingHandler));
        }
 public SagaInitializationPolicy(SagaCreationPolicy creationPolicy, AssociationValue initialAssociationValue)
 {
     CreationPolicy          = creationPolicy;
     InitialAssociationValue = initialAssociationValue;
 }