Exemple #1
0
        /// <inheritdoc />
        public WeaponSkin Convert(SkinDTO value, object state)
        {
            var entity = new UnknownWeaponSkin();

            this.Merge(entity, value, state);
            return(entity);
        }
        /// <summary>Converts the given object of type <see cref="WeaponSkinDataContract"/> to an object of type <see cref="WeaponSkin"/>.</summary>
        /// <param name="value">The value to convert.</param>
        /// <param name="state"></param>
        /// <returns>The converted value.</returns>
        public WeaponSkin Convert(SkinDataContract value, object state)
        {
            if (value == null)
            {
                throw new ArgumentNullException("value", "Precondition: value != null");
            }

            WeaponSkin weaponSkin;
            var        weaponSkinDataContract = value.Weapon;
            IConverter <WeaponSkinDataContract, WeaponSkin> converter;

            if (weaponSkinDataContract != null && this.typeConverters.TryGetValue(weaponSkinDataContract.Type, out converter))
            {
                weaponSkin = converter.Convert(weaponSkinDataContract, state);
            }
            else
            {
                weaponSkin = new UnknownWeaponSkin();
            }

            if (weaponSkinDataContract == null)
            {
                return(weaponSkin);
            }

            var damageType = weaponSkinDataContract.DamageType;

            if (damageType != null)
            {
                weaponSkin.DamageType = this.converterForDamageType.Convert(damageType, state);
            }

            return(weaponSkin);
        }
Exemple #3
0
 // Implement this method in a buddy class to set properties that are specific to 'UnknownWeaponSkin' (if any)
 partial void Merge(UnknownWeaponSkin entity, SkinDTO dto, object state);