Example #1
0
        protected virtual bool Visit <TInstance>(MethodActivity <TInstance> activity)
            where TInstance : class
        {
            Trace.WriteLine("({0})[{1}] {2}.{3}".FormatWith(activity.State, activity.Event,
                                                            typeof(TInstance).ToShortTypeName(), activity.MethodName));

            return(true);
        }
        public IActivity GetActivity(LambdaExpression expression)
        {
            IActivity activity     = null;
            var       method       = expression.GetMethodInfo();
            var       registration = _activityRegistrations.SingleOrDefault(a => a.ActivityMethod == method);

            if (registration != null && registration.ActivityType != null)
            {
                activity = GetActivity(registration.ActivityType, expression.GetMethodParams());
            }

            if (activity == null)
            {
                activity = new MethodActivity(method);
            }

            activity.Name = registration != null && !string.IsNullOrEmpty(registration.ActivityName)
                   ? registration.ActivityName
                   : activity.Name;

            return(activity);
        }
Example #3
0
        public void Configure(ActivityBuilder <TWorkflow, TInstance> builder)
        {
            var activity = new MethodActivity <TInstance>(builder.State, builder.Event, _methodExpression);

            builder.AddActivity(activity);
        }