Exemplo n.º 1
0
        public static void AddLicenseLimitNotification(ServerStore serverStore, LicenseLimit licenseLimit)
        {
            var alert = AlertRaised.Create(
                "You've reached your license limit",
                licenseLimit.Message,
                AlertType.LicenseManager_LicenseLimit,
                NotificationSeverity.Warning,
                details: new LicenseLimitWarning(licenseLimit));

            serverStore.NotificationCenter.Add(alert);
        }
Exemplo n.º 2
0
        protected void SetLicenseLimitResponse(LicenseLimit licenseLimit)
        {
            if (licenseLimit == null)
            {
                throw new ArgumentNullException(nameof(licenseLimit));
            }

            HttpContext.Response.StatusCode = (int)HttpStatusCode.PaymentRequired;
            using (ServerStore.ContextPool.AllocateOperationContext(out TransactionOperationContext context))
                using (var writer = new BlittableJsonTextWriter(context, ResponseBodyStream()))
                {
                    var blittable = EntityToBlittable.ConvertEntityToBlittable(licenseLimit, DocumentConventions.Default, context);
                    context.Write(writer, blittable);
                    writer.Flush();
                }
        }
Exemplo n.º 3
0
        private void InitializeLimits()
        {
            var registeredLicenses = licenseService.LicenseInfos.Where(x => x.IsRegistered).ToArray();

            // if any license is not trial
            if (registeredLicenses.Any(x => !x.IsTrial))
            {
                registeredLicenses = registeredLicenses.Where(x => !x.IsTrial).ToArray();
            }

            var gameTypes = registeredLicenses.SelectMany(x => ConvertLicenseType(x.LicenseType)).Distinct().ToArray();

            Limit = new LicenseLimit
            {
                TournamentLimit  = registeredLicenses.Length > 0 ? registeredLicenses.Max(x => x.TournamentLimit) : 0,
                CashLimit        = registeredLicenses.Length > 0 ? registeredLicenses.Max(x => x.CashLimit) : 0,
                AllowedGameTypes = gameTypes
            };
        }
Exemplo n.º 4
0
 private LicenseLimitWarning(LicenseLimit licenseLimit)
 {
     Type    = licenseLimit.Type;
     Message = licenseLimit.Message;
 }