Beispiel #1
0
 public static WorkflowActivity Activate(WorkflowActivityType activityType, Workflow workflow)
 {
     using (var rockContext = new RockContext())
     {
         return(Activate(activityType, workflow, rockContext));
     }
 }
        /// <summary>
        /// To the model.
        /// </summary>
        /// <param name="value">The value.</param>
        /// <returns></returns>
        public static WorkflowActivityType ToModel(this WorkflowActivityTypeDto value)
        {
            WorkflowActivityType result = new WorkflowActivityType();

            value.CopyToModel(result);
            return(result);
        }
        /// <summary>
        /// Deletes the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <returns></returns>
        public override bool Delete(WorkflowActivityType item)
        {
            var activityService = new WorkflowActivityService((RockContext)this.Context);

            foreach (var activity in activityService.Queryable().Where(a => a.ActivityTypeId == item.Id))
            {
                activityService.Delete(activity);
            }
            return(base.Delete(item));
        }
 /// <summary>
 /// Copies the properties from another WorkflowActivityType object to this WorkflowActivityType object
 /// </summary>
 /// <param name="target">The target.</param>
 /// <param name="source">The source.</param>
 public static void CopyPropertiesFrom(this WorkflowActivityType target, WorkflowActivityType source)
 {
     target.IsActive                = source.IsActive;
     target.WorkflowTypeId          = source.WorkflowTypeId;
     target.Name                    = source.Name;
     target.Description             = source.Description;
     target.IsActivatedWithWorkflow = source.IsActivatedWithWorkflow;
     target.Order                   = source.Order;
     target.Id   = source.Id;
     target.Guid = source.Guid;
 }
Beispiel #5
0
 /// <summary>
 /// Clones this WorkflowActivityType object to a new WorkflowActivityType object
 /// </summary>
 /// <param name="source">The source.</param>
 /// <param name="deepCopy">if set to <c>true</c> a deep copy is made. If false, only the basic entity properties are copied.</param>
 /// <returns></returns>
 public static WorkflowActivityType Clone(this WorkflowActivityType source, bool deepCopy)
 {
     if (deepCopy)
     {
         return(source.Clone() as WorkflowActivityType);
     }
     else
     {
         var target = new WorkflowActivityType();
         target.CopyPropertiesFrom(source);
         return(target);
     }
 }
Beispiel #6
0
        public static WorkflowActivity Activate(WorkflowActivityType activityType, Workflow workflow, RockContext rockContext)
        {
            if (activityType != null)
            {
                var activityTypeCache = WorkflowActivityTypeCache.Get(activityType.Id);
                var activity          = Activate(activityTypeCache, workflow, rockContext);
                if (activity != null)
                {
                    activity.ActivityType = activityType;
                }
                return(activity);
            }

            return(null);
        }
Beispiel #7
0
 /// <summary>
 /// Copies the properties from another WorkflowActivityType object to this WorkflowActivityType object
 /// </summary>
 /// <param name="target">The target.</param>
 /// <param name="source">The source.</param>
 public static void CopyPropertiesFrom(this WorkflowActivityType target, WorkflowActivityType source)
 {
     target.Id                      = source.Id;
     target.Description             = source.Description;
     target.IsActivatedWithWorkflow = source.IsActivatedWithWorkflow;
     target.IsActive                = source.IsActive;
     target.Name                    = source.Name;
     target.Order                   = source.Order;
     target.WorkflowTypeId          = source.WorkflowTypeId;
     target.CreatedDateTime         = source.CreatedDateTime;
     target.ModifiedDateTime        = source.ModifiedDateTime;
     target.CreatedByPersonAliasId  = source.CreatedByPersonAliasId;
     target.ModifiedByPersonAliasId = source.ModifiedByPersonAliasId;
     target.Guid                    = source.Guid;
     target.ForeignId               = source.ForeignId;
 }
Beispiel #8
0
        /// <summary>
        /// Activates the specified activity type.
        /// </summary>
        /// <param name="activityType">Type of the activity.</param>
        /// <param name="workflow">The workflow.</param>
        /// <returns></returns>
        internal static WorkflowActivity Activate(WorkflowActivityType activityType, Workflow workflow)
        {
            var activity = new WorkflowActivity();

            activity.Workflow          = workflow;
            activity.ActivityType      = activityType;
            activity.ActivatedDateTime = DateTime.Now;

            activity.AddSystemLogEntry("Activated");

            foreach (var actionType in activityType.ActionTypes)
            {
                activity.Actions.Add(WorkflowAction.Activate(actionType, activity));
            }

            return(activity);
        }
Beispiel #9
0
        /// <summary>
        /// Activates the specified WorkflowActivity
        /// </summary>
        /// <param name="activityType">The <see cref="Rock.Model.WorkflowActivityType"/> to activate.</param>
        /// <param name="workflow">The persisted <see cref="Rock.Model.Workflow"/> instance that this Workflow activity belongs to.</param>
        /// <returns>The activated <see cref="Rock.Model.WorkflowActivity"/>.</returns>
        public static WorkflowActivity Activate(WorkflowActivityType activityType, Workflow workflow)
        {
            var activity = new WorkflowActivity();

            activity.Workflow          = workflow;
            activity.ActivityType      = activityType;
            activity.ActivatedDateTime = DateTime.Now;
            activity.LoadAttributes();

            activity.AddSystemLogEntry("Activated");

            foreach (var actionType in activityType.ActionTypes)
            {
                activity.Actions.Add(WorkflowAction.Activate(actionType, activity));
            }

            workflow.Activities.Add(activity);

            return(activity);
        }
Beispiel #10
0
        /// <summary>
        /// Activates the specified WorkflowActivity
        /// </summary>
        /// <param name="activityType">The <see cref="Rock.Model.WorkflowActivityType" /> to activate.</param>
        /// <param name="workflow">The persisted <see cref="Rock.Model.Workflow" /> instance that this Workflow activity belongs to.</param>
        /// <param name="rockContext">The rock context.</param>
        /// <returns>
        /// The activated <see cref="Rock.Model.WorkflowActivity" />.
        /// </returns>
        public static WorkflowActivity Activate(WorkflowActivityType activityType, Workflow workflow, RockContext rockContext)
        {
            var activity = new WorkflowActivity();

            activity.Workflow          = workflow;
            activity.ActivityTypeId    = activityType.Id;
            activity.ActivityType      = activityType;
            activity.ActivatedDateTime = RockDateTime.Now;
            activity.LoadAttributes(rockContext);

            activity.AddLogEntry("Activated");

            foreach (var actionType in activityType.ActionTypes)
            {
                activity.Actions.Add(WorkflowAction.Activate(actionType, activity, rockContext));
            }

            workflow.Activities.Add(activity);

            return(activity);
        }
 /// <summary>
 /// Instantiates a new DTO object from the entity
 /// </summary>
 /// <param name="workflowActivityType"></param>
 public WorkflowActivityTypeDto(WorkflowActivityType workflowActivityType)
 {
     CopyFromModel(workflowActivityType);
 }
 /// <summary>
 /// To the dto.
 /// </summary>
 /// <param name="value">The value.</param>
 /// <returns></returns>
 public static WorkflowActivityTypeDto ToDto(this WorkflowActivityType value)
 {
     return(new WorkflowActivityTypeDto(value));
 }