コード例 #1
0
        public void ChangeDiverEquipmentAssociation(string diverName)
        {
            Diver diver = diversList.FirstOrDefault(x => x.name == diverName);

            if (diver != null)
            {
                diver.ChangeEquipmentAssociationType();
            }
        }
コード例 #2
0
        /// <summary>
        /// Method for adding divers to divers list
        /// </summary>
        /// <param name="diversRaw">Contains file content. Every file line is one array element</param>
        public void AddDiversToList(string[] diversRaw, string[] superPowerRaw)
        {
            string[]                    diver;
            string                      name;
            string                      birthDate;
            string                      federationName;
            string                      certificateName;
            string                      level;
            int                         depthDeterminedByCertificate;
            CertificateHelper           certHelper         = new CertificateHelper();
            CertificateFlyweightFactory certificateFactory = CertificateFlyweightFactory.GetInstance();

            foreach (string d in diversRaw)
            {
                diver = d.Split(';');

                name           = diver[0];
                federationName = diver[1];
                level          = diver[2];
                birthDate      = diver[3];

                // Validate data
                if (diver.Count() != 4 || !Validation.ValidateFederationName(federationName) || !Validation.ValidateDiverLevel(level))
                {
                    continue;
                }

                // Create new certificate
                certificateName = certHelper.getCertificateName(federationName, level);
                depthDeterminedByCertificate = certHelper.getDepthDeterminedByCertificate(level);
                Certificate certificate = certificateFactory.GetCertificateInstance(federationName, certificateName, level, depthDeterminedByCertificate);

                // Create new diver
                Diver diverObj = new Diver(name, birthDate, certificate, federationName);

                // Add super powers
                List <string> superPowers = CheckForDiversSuperPower(superPowerRaw, diverObj.name);
                diverObj.AddSuperPowers(superPowers);

                // Add diver to divers list
                diversList.Add(diverObj);
            }
        }
コード例 #3
0
        public void RemoveDiverFromList(string diverName)
        {
            Diver diverToRemove = diversList.SingleOrDefault(x => x.name == diverName);

            diversList.Remove(diverToRemove);
        }