Beispiel #1
0
 public virtual void validate(MigratingEventScopeInstance migratingInstance, MigratingProcessInstance migratingProcessInstance, MigratingActivityInstanceValidationReportImpl ancestorInstanceReport)
 {
     if (isInvalid(migratingInstance))
     {
         ancestorInstanceReport.addFailure("Cannot migrate subscription for compensation handler '" + migratingInstance.EventSubscription.SourceScope.Id + "'. " + "There is no migration instruction for the compensation start event");
     }
 }
Beispiel #2
0
        public virtual void validate(MigratingEventScopeInstance migratingInstance, MigratingProcessInstance migratingProcessInstance, MigratingActivityInstanceValidationReportImpl ancestorInstanceReport)
        {
            MigratingCompensationEventSubscriptionInstance eventSubscription = migratingInstance.EventSubscription;

            ActivityImpl eventHandlerActivity = (ActivityImpl)eventSubscription.SourceScope;

            // note: compensation event scopes without children are already handled by NoUnmappedLeafInstanceValidator
            if (eventHandlerActivity.TriggeredByEvent && eventSubscription.TargetScope == null && migratingInstance.Children.Count > 0)
            {
                ancestorInstanceReport.addFailure("Cannot migrate subscription for compensation handler '" + eventSubscription.SourceScope.Id + "'. " + "There is no migration instruction for the compensation start event");
            }
        }
Beispiel #3
0
 protected internal virtual bool isInvalid(MigratingEventScopeInstance migratingInstance)
 {
     return(hasNoInstruction(migratingInstance.EventSubscription) && migratingInstance.Children.Count == 0);
 }