public void SetConfigurationProperties(int criteriaId, IDictionary <string, object> properties)
        {
            var config = GetCriteria(criteriaId);
            var instantiationCriteria = TheWorkflowInstantiationCriteriaRepository.RestoreState(config);

            instantiationCriteria = (IWorkflowInstantiationCriteria)Helper.Instance.SetProperties(instantiationCriteria, properties);
            TheWorkflowInstantiationCriteriaRepository.Update(instantiationCriteria);
        }
        public IEnumerable <IWorkflowInstantiationCriteria> GetCriteriaForEvents(string eventName)
        {
            var criterias = new List <IWorkflowInstantiationCriteria>();

            foreach (var criteria in List())
            {
                var hydrated = TheWorkflowInstantiationCriteriaRepository.RestoreState(criteria);
                if (hydrated.Events.Contains(eventName))
                {
                    criterias.Add(hydrated);
                }
            }
            return(criterias);
        }
 public void Save(IWorkflowInstantiationCriteria workflowInstantiationCriteria)
 {
     TheWorkflowInstantiationCriteriaRepository.Update(workflowInstantiationCriteria);
 }
        public void Delete(int id)
        {
            var instantiationCriteria = TheWorkflowInstantiationCriteriaRepository.GetById(id);

            TheWorkflowInstantiationCriteriaRepository.Delete(instantiationCriteria);
        }
        public IWorkflowInstantiationCriteria GetCriteria(int id)
        {
            var criteria = TheWorkflowInstantiationCriteriaRepository.GetById(id);

            return(TheWorkflowInstantiationCriteriaRepository.RestoreState(criteria));
        }
 public IList <IWorkflowInstantiationCriteria> List()
 {
     return(TheWorkflowInstantiationCriteriaRepository.List());
 }
        public void CreateWorkflowInstantiationCriteria(string name)
        {
            var criteria = TheWorkflowInstantiationCriteriaFactory.Create(name);

            TheWorkflowInstantiationCriteriaRepository.Create(criteria);
        }