Пример #1
0
        public PracticeActivation ActivateDevice(DeviceInfo deviceInfo, DeviceLocationInfo deviceLocationInfo = null)
        {
            if (IsDeviceActivated(deviceInfo.Serial))
            {
                return(Activations.FirstOrDefault(x => x.IsActive()));
            }

            if (IsDeviceExpired(deviceInfo.Serial))
            {
                var expiredDevice = Activations.FirstOrDefault(x => x.IsExpired());
                expiredDevice.Renew(deviceInfo, deviceLocationInfo);

                return(expiredDevice);
            }

            return(PracticeActivation.Create(Id, deviceInfo, deviceLocationInfo));
        }