Esempio n. 1
0
        public static void ReplaceSafely(this EditorContract contract, ContractBusinessRuleActivity activity, DMNProcessDiagram newDiagram)
        {
            if (contract == null)
            {
                throw new ArgumentNullException(nameof(contract));
            }

            if (activity == null)
            {
                throw new ArgumentNullException(nameof(activity));
            }

            if (newDiagram == null)
            {
                throw new ArgumentNullException(nameof(newDiagram));
            }

            if (DMNProcessDiagram.IsNullOrEmpty(newDiagram))
            {
                activity.Diagram = newDiagram;
                return;
            }

            var oldDiagram = activity.Diagram;

            activity.Diagram = newDiagram;

            contract.GetMigrator().Notify(
                () => activity.Diagram,
                () => activity.Diagram = newDiagram,
                () => activity.Diagram = oldDiagram,
                MigratorMode.EveryChange
                );
        }
Esempio n. 2
0
        static ContractBusinessRuleActivity CreateBusinessRuleTask(XElement xElement)
        {
            var task = new ContractBusinessRuleActivity
            {
                Id   = GetProcessId(xElement),
                Name = GetProcessName(xElement)
            };

            return(task);
        }
Esempio n. 3
0
        public static void ValidatePotentialDiagram(this EditorContract contract, ContractBusinessRuleActivity activity, DMNProcessDiagram newDiagram)
        {
            if (contract == null)
            {
                throw new ArgumentNullException(nameof(contract));
            }

            if (activity == null)
            {
                throw new ArgumentNullException(nameof(activity));
            }

            if (newDiagram == null)
            {
                throw new ArgumentNullException(nameof(newDiagram));
            }
        }
Esempio n. 4
0
        public static ContractIntegrityAnalysisResult AnalyzeIntegrityWhenReplacedWith(this EditorContract contract, ContractBusinessRuleActivity activity, DMNProcessDiagram newDiagram)
        {
            if (contract == null)
            {
                throw new ArgumentNullException(nameof(contract));
            }

            if (activity == null)
            {
                throw new ArgumentNullException(nameof(activity));
            }

            if (newDiagram == null)
            {
                throw new ArgumentNullException(nameof(newDiagram));
            }

            var deleteRisks      = new List <ContractIntegrityAnalysisDeleteCase>();
            var childrenAnalyses = new List <ContractIntegrityAnalysisResult>();

            return(new ContractIntegrityAnalysisResult(deleteRisks, childrenAnalyses));
        }