Example #1
0
        /// <summary>
        /// Updates values in connector ends and update them in repository.
        /// </summary>
        public void Save(GoatAssociationModel Association)
        {
            UpdateLeftOrRightConnector(Association.Left, connector.ClientEnd);
            UpdateLeftOrRightConnector(Association.Right, connector.SupplierEnd);

            //fixing design error in Sparx EA, you have to also change _connector.Direction
            if (Association.Left.Navigability == NavigabilityType.Navigable && Association.Right.Navigability == NavigabilityType.Navigable)
            {
                connector.Direction = "Bi-Directional";
            }
            else if (Association.Left.Navigability != NavigabilityType.Navigable && Association.Right.Navigability == NavigabilityType.Navigable)
            {
                connector.Direction = "Source -> Destination";
            }
            else if (Association.Left.Navigability == NavigabilityType.Navigable && Association.Right.Navigability != NavigabilityType.Navigable)
            {
                connector.Direction = "Destination -> Source";
            }
            else
            {
                connector.Direction = "Unspecified";
            }

            connector.Update(); //this is with high probability not neccessarry... could depend on EA version
        }
Example #2
0
        public GoatAssociationModel Read()
        {
            GoatAssociationModel result = new GoatAssociationModel();

            SetLeftOrRight(result.Left, connector.ClientEnd, repository.GetElementByID(connector.ClientID));
            SetLeftOrRight(result.Right, connector.SupplierEnd, repository.GetElementByID(connector.SupplierID));
            result.Name = connector.Name;

            return(result);
        }