Ejemplo n.º 1
0
        /// <summary>
        /// Duplicates a source Variable into its target
        /// </summary>
        /// <param name="source"></param>
        /// <param name="target"></param>
        public static void DuplicateVariable(Generated.Variable source, Generated.Variable target)
        {
            if ( source != null && target != null )
            {
                DuplicateReqRelated (source, target);

                target.setTypeName(source.getTypeName());
                target.setDefaultValue(source.getDefaultValue());
                target.setVariableMode(source.getVariableMode());
                target.setWidth(source.getWidth());
                target.setHeight(source.getHeight());
                target.setX(source.getX());
                target.setY(source.getY());
                target.setHidden(source.getHidden());
                target.setPinned(source.getPinned());
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Duplicates a source State into its target
        /// </summary>
        /// <param name="source"></param>
        /// <param name="target"></param>
        public static void DuplicateState(Generated.State source, Generated.State target)
        {
            if ( source != null && target != null )
            {
                DuplicateReqRelated (source, target);

                target.setWidth(source.getWidth());
                target.setHeight(source.getHeight());
                target.setX(source.getX());
                target.setY(source.getY());
                target.setPinned(source.getPinned());
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Duplicates a source Type into its target
        /// </summary>
        /// <param name="source"></param>
        /// <param name="target"></param>
        public static void DuplicateType(Generated.Type source, Generated.Type target)
        {
            if ( source != null && target != null )
            {
                DuplicateReqRelated (source, target);

                target.setDefault(source.getDefault());
                target.setWidth(source.getWidth());
                target.setHeight(source.getHeight());
                target.setX(source.getX());
                target.setY(source.getY());
                target.setHidden(source.getHidden());
                target.setPinned(source.getPinned());
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Duplicates a source RequirementSet into its target
        /// </summary>
        /// <param name="source"></param>
        /// <param name="target"></param>
        public static void DuplicateRequirementSet(Generated.RequirementSet source, Generated.RequirementSet target)
        {
            if ( source != null && target != null )
            {
                DuplicateNamable (source, target);

                target.setWidth(source.getWidth());
                target.setHeight(source.getHeight());
                target.setX(source.getX());
                target.setY(source.getY());
                target.setRecursiveSelection(source.getRecursiveSelection());
                target.setObsoleteRequirementsStatus(source.getObsoleteRequirementsStatus());
                target.setDefault(source.getDefault());
                target.setPinned(source.getPinned());
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Duplicates a source Rule into its target
        /// </summary>
        /// <param name="source"></param>
        /// <param name="target"></param>
        public static void DuplicateRule(Generated.Rule source, Generated.Rule target)
        {
            if ( source != null && target != null )
            {
                DuplicateReqRelated (source, target);

                target.setPriority(source.getPriority());
                target.setWidth(source.getWidth());
                target.setHeight(source.getHeight());
                target.setX(source.getX());
                target.setY(source.getY());
                target.setHidden(source.getHidden());
                target.setPinned(source.getPinned());
            }
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Compares two Variable and annotates the differences on the first one
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="other"></param>
        public static void compareVariable(Generated.Variable obj, Generated.Variable other, VersionDiff diff)
        {
            if ( other == null )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "", "", obj.Name ) );
                return;
            }

            compareReqRelated (obj, other, diff);

            if ( !CompareUtil.canonicalStringEquality(obj.getTypeName(), other.getTypeName()) )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "TypeName", other.getTypeName(), obj.getTypeName()) );
            }
            if ( !CompareUtil.canonicalStringEquality(obj.getDefaultValue(), other.getDefaultValue()) )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "DefaultValue", other.getDefaultValue(), obj.getDefaultValue()) );
            }
            if ( obj.getVariableMode() != other.getVariableMode() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "VariableMode", other.getVariableMode().ToString(), obj.getVariableMode().ToString()) );
            }
            if ( obj.allSubVariables() != null )
            {
                if ( other.allSubVariables() != null )
                {
                    foreach ( Generated.Variable subElement in obj.allSubVariables() )
                    {
                        bool compared = false;
                        foreach ( Generated.Variable otherElement in other.allSubVariables() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                compareVariable ( subElement, otherElement, diff );
                                compared = true;
                            break;
                            }
                        }

                        if ( !compared )
                        {
                            diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "SubVariables", "", subElement.Name ) );
                        }
                    }

                    foreach ( Generated.Variable otherElement in other.allSubVariables() )
                    {
                        bool found = false;
                        foreach ( Generated.Variable subElement in obj.allSubVariables() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                found = true;
                                break;
                            }
                        }

                        if ( !found )
                        {
                            diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "SubVariables", otherElement.Name) );
                        }
                    }
                }
                else
                {
                    foreach ( Generated.Variable subElement in obj.allSubVariables() )
                    {
                        diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "SubVariables", "", subElement.Name ) );
                    }
                }
            }
            else
            {
                if ( other.allSubVariables() != null )
                {
                    foreach ( Generated.Variable otherElement in other.allSubVariables() )
                    {
                        diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "SubVariables", otherElement.Name) );
                    }
                }
            }
            if ( obj.getWidth() != other.getWidth() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Width", other.getWidth().ToString(), obj.getWidth().ToString()) );
            }
            if ( obj.getHeight() != other.getHeight() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Height", other.getHeight().ToString(), obj.getHeight().ToString()) );
            }
            if ( obj.getX() != other.getX() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "X", other.getX().ToString(), obj.getX().ToString()) );
            }
            if ( obj.getY() != other.getY() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Y", other.getY().ToString(), obj.getY().ToString()) );
            }
            if ( obj.getHidden() != other.getHidden() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Hidden", other.getHidden().ToString(), obj.getHidden().ToString()) );
            }
            if ( obj.getPinned() != other.getPinned() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Pinned", other.getPinned().ToString(), obj.getPinned().ToString()) );
            }
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Compares two Type and annotates the differences on the first one
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="other"></param>
        public static void compareType(Generated.Type obj, Generated.Type other, VersionDiff diff)
        {
            if ( other == null )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "", "", obj.Name ) );
                return;
            }

            compareReqRelated (obj, other, diff);

            if ( !CompareUtil.canonicalStringEquality(obj.getDefault(), other.getDefault()) )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Default", other.getDefault(), obj.getDefault()) );
            }
            if ( obj.getWidth() != other.getWidth() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Width", other.getWidth().ToString(), obj.getWidth().ToString()) );
            }
            if ( obj.getHeight() != other.getHeight() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Height", other.getHeight().ToString(), obj.getHeight().ToString()) );
            }
            if ( obj.getX() != other.getX() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "X", other.getX().ToString(), obj.getX().ToString()) );
            }
            if ( obj.getY() != other.getY() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Y", other.getY().ToString(), obj.getY().ToString()) );
            }
            if ( obj.getHidden() != other.getHidden() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Hidden", other.getHidden().ToString(), obj.getHidden().ToString()) );
            }
            if ( obj.getPinned() != other.getPinned() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Pinned", other.getPinned().ToString(), obj.getPinned().ToString()) );
            }
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Compares two State and annotates the differences on the first one
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="other"></param>
        public static void compareState(Generated.State obj, Generated.State other, VersionDiff diff)
        {
            if ( other == null )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "", "", obj.Name ) );
                return;
            }

            compareReqRelated (obj, other, diff);

            if ( obj.getStateMachine() == null )
            {
                if ( other.getStateMachine() != null )
                {
                    diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "StateMachine", "" ) );
                }
            }
            else
            {
                compareStateMachine ( obj.getStateMachine(), other.getStateMachine(), diff );
            }
            if ( obj.getWidth() != other.getWidth() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Width", other.getWidth().ToString(), obj.getWidth().ToString()) );
            }
            if ( obj.getHeight() != other.getHeight() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Height", other.getHeight().ToString(), obj.getHeight().ToString()) );
            }
            if ( obj.getX() != other.getX() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "X", other.getX().ToString(), obj.getX().ToString()) );
            }
            if ( obj.getY() != other.getY() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Y", other.getY().ToString(), obj.getY().ToString()) );
            }
            if ( obj.getPinned() != other.getPinned() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Pinned", other.getPinned().ToString(), obj.getPinned().ToString()) );
            }
            if ( obj.getEnterAction() == null )
            {
                if ( other.getEnterAction() != null )
                {
                    diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "EnterAction", "" ) );
                }
            }
            else
            {
                compareRule ( obj.getEnterAction(), other.getEnterAction(), diff );
            }
            if ( obj.getLeaveAction() == null )
            {
                if ( other.getLeaveAction() != null )
                {
                    diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "LeaveAction", "" ) );
                }
            }
            else
            {
                compareRule ( obj.getLeaveAction(), other.getLeaveAction(), diff );
            }
        }
Ejemplo n.º 9
0
        /// <summary>
        /// Compares two Rule and annotates the differences on the first one
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="other"></param>
        public static void compareRule(Generated.Rule obj, Generated.Rule other, VersionDiff diff)
        {
            if ( other == null )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "", "", obj.Name ) );
                return;
            }

            compareReqRelated (obj, other, diff);

            if ( obj.getPriority() != other.getPriority() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Priority", other.getPriority().ToString(), obj.getPriority().ToString()) );
            }
            if ( obj.allConditions() != null )
            {
                if ( other.allConditions() != null )
                {
                    foreach ( Generated.RuleCondition subElement in obj.allConditions() )
                    {
                        bool compared = false;
                        foreach ( Generated.RuleCondition otherElement in other.allConditions() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                compareRuleCondition ( subElement, otherElement, diff );
                                compared = true;
                            break;
                            }
                        }

                        if ( !compared )
                        {
                            diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "Conditions", "", subElement.Name ) );
                        }
                    }

                    foreach ( Generated.RuleCondition otherElement in other.allConditions() )
                    {
                        bool found = false;
                        foreach ( Generated.RuleCondition subElement in obj.allConditions() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                found = true;
                                break;
                            }
                        }

                        if ( !found )
                        {
                            diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "Conditions", otherElement.Name) );
                        }
                    }
                }
                else
                {
                    foreach ( Generated.RuleCondition subElement in obj.allConditions() )
                    {
                        diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "Conditions", "", subElement.Name ) );
                    }
                }
            }
            else
            {
                if ( other.allConditions() != null )
                {
                    foreach ( Generated.RuleCondition otherElement in other.allConditions() )
                    {
                        diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "Conditions", otherElement.Name) );
                    }
                }
            }
            if ( obj.getWidth() != other.getWidth() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Width", other.getWidth().ToString(), obj.getWidth().ToString()) );
            }
            if ( obj.getHeight() != other.getHeight() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Height", other.getHeight().ToString(), obj.getHeight().ToString()) );
            }
            if ( obj.getX() != other.getX() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "X", other.getX().ToString(), obj.getX().ToString()) );
            }
            if ( obj.getY() != other.getY() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Y", other.getY().ToString(), obj.getY().ToString()) );
            }
            if ( obj.getHidden() != other.getHidden() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Hidden", other.getHidden().ToString(), obj.getHidden().ToString()) );
            }
            if ( obj.getPinned() != other.getPinned() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Pinned", other.getPinned().ToString(), obj.getPinned().ToString()) );
            }
        }
Ejemplo n.º 10
0
        /// <summary>
        /// Compares two RequirementSet and annotates the differences on the first one
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="other"></param>
        public static void compareRequirementSet(Generated.RequirementSet obj, Generated.RequirementSet other, VersionDiff diff)
        {
            if ( other == null )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "", "", obj.Name ) );
                return;
            }

            compareNamable (obj, other, diff);

            if ( obj.allDependancies() != null )
            {
                if ( other.allDependancies() != null )
                {
                    foreach ( Generated.RequirementSetDependancy subElement in obj.allDependancies() )
                    {
                        bool compared = false;
                        foreach ( Generated.RequirementSetDependancy otherElement in other.allDependancies() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                compareRequirementSetDependancy ( subElement, otherElement, diff );
                                compared = true;
                            break;
                            }
                        }

                        if ( !compared )
                        {
                            diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "Dependancies", "", subElement.Name ) );
                        }
                    }

                    foreach ( Generated.RequirementSetDependancy otherElement in other.allDependancies() )
                    {
                        bool found = false;
                        foreach ( Generated.RequirementSetDependancy subElement in obj.allDependancies() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                found = true;
                                break;
                            }
                        }

                        if ( !found )
                        {
                            diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "Dependancies", otherElement.Name) );
                        }
                    }
                }
                else
                {
                    foreach ( Generated.RequirementSetDependancy subElement in obj.allDependancies() )
                    {
                        diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "Dependancies", "", subElement.Name ) );
                    }
                }
            }
            else
            {
                if ( other.allDependancies() != null )
                {
                    foreach ( Generated.RequirementSetDependancy otherElement in other.allDependancies() )
                    {
                        diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "Dependancies", otherElement.Name) );
                    }
                }
            }
            if ( obj.allSubSets() != null )
            {
                if ( other.allSubSets() != null )
                {
                    foreach ( Generated.RequirementSet subElement in obj.allSubSets() )
                    {
                        bool compared = false;
                        foreach ( Generated.RequirementSet otherElement in other.allSubSets() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                compareRequirementSet ( subElement, otherElement, diff );
                                compared = true;
                            break;
                            }
                        }

                        if ( !compared )
                        {
                            diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "SubSets", "", subElement.Name ) );
                        }
                    }

                    foreach ( Generated.RequirementSet otherElement in other.allSubSets() )
                    {
                        bool found = false;
                        foreach ( Generated.RequirementSet subElement in obj.allSubSets() )
                        {
                            if ( subElement.Guid == otherElement.Guid )
                            {
                                found = true;
                                break;
                            }
                        }

                        if ( !found )
                        {
                            diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "SubSets", otherElement.Name) );
                        }
                    }
                }
                else
                {
                    foreach ( Generated.RequirementSet subElement in obj.allSubSets() )
                    {
                        diff.appendChanges ( new Diff(subElement, HistoricalData.Generated.acceptor.ChangeOperationEnum.aAdd, "SubSets", "", subElement.Name ) );
                    }
                }
            }
            else
            {
                if ( other.allSubSets() != null )
                {
                    foreach ( Generated.RequirementSet otherElement in other.allSubSets() )
                    {
                        diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aRemove , "SubSets", otherElement.Name) );
                    }
                }
            }
            if ( obj.getWidth() != other.getWidth() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Width", other.getWidth().ToString(), obj.getWidth().ToString()) );
            }
            if ( obj.getHeight() != other.getHeight() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Height", other.getHeight().ToString(), obj.getHeight().ToString()) );
            }
            if ( obj.getX() != other.getX() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "X", other.getX().ToString(), obj.getX().ToString()) );
            }
            if ( obj.getY() != other.getY() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Y", other.getY().ToString(), obj.getY().ToString()) );
            }
            if ( obj.getRecursiveSelection() != other.getRecursiveSelection() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "RecursiveSelection", other.getRecursiveSelection().ToString(), obj.getRecursiveSelection().ToString()) );
            }
            if ( obj.getObsoleteRequirementsStatus() != other.getObsoleteRequirementsStatus() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "ObsoleteRequirementsStatus", other.getObsoleteRequirementsStatus().ToString(), obj.getObsoleteRequirementsStatus().ToString()) );
            }
            if ( obj.getDefault() != other.getDefault() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Default", other.getDefault().ToString(), obj.getDefault().ToString()) );
            }
            if ( obj.getPinned() != other.getPinned() )
            {
                diff.appendChanges ( new Diff(obj, HistoricalData.Generated.acceptor.ChangeOperationEnum.aChange, "Pinned", other.getPinned().ToString(), obj.getPinned().ToString()) );
            }
        }